Merge remote-tracking branch 'origin/feature/REQ-3300' into feature/REQ-3300
# Conflicts: # visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/impl/ChangeRecordServiceImpl.java
This commit is contained in:
commit
f1aaaf828c
@ -13,6 +13,7 @@ import cn.axzo.nanopart.visa.api.request.VisaChangePageSearchReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaDetailByIdRequest;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaInitiatorListReq;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeDiscussCreateResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeInitiatorResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangePageSearchResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaDetailByIdResponse;
|
||||
@ -48,7 +49,7 @@ public interface ChangeRecordApi {
|
||||
* @return 签证变更记录id
|
||||
*/
|
||||
@PostMapping("/api/visa/change/discussCreate")
|
||||
ApiResult<Long> discussCreateVisaChangeRecord(@RequestBody VisaChangeDiscussCreateReq req);
|
||||
ApiResult<VisaChangeDiscussCreateResp> discussCreateVisaChangeRecord(@RequestBody VisaChangeDiscussCreateReq req);
|
||||
|
||||
/**
|
||||
* 发起变更签证审批
|
||||
|
||||
@ -0,0 +1,33 @@
|
||||
package cn.axzo.nanopart.visa.api.response;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @author chenwenjian
|
||||
* @version 1.0
|
||||
* @date 2025/2/10 14:17
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class VisaChangeDiscussCreateResp {
|
||||
|
||||
/**
|
||||
* 变洽签单据id
|
||||
*/
|
||||
private Long visaId;
|
||||
|
||||
/**
|
||||
* 群聊id
|
||||
*/
|
||||
private Long imGroupId;
|
||||
|
||||
/**
|
||||
* 群聊名称
|
||||
*/
|
||||
private String imGroupName;
|
||||
}
|
||||
@ -48,7 +48,7 @@ public class VisaRelationResp {
|
||||
/**
|
||||
* 数据值的一些额外描述
|
||||
*/
|
||||
private String content_ext;
|
||||
private String contentExt;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
|
||||
@ -16,12 +16,12 @@ import cn.axzo.nanopart.visa.api.request.VisaChangePageSearchReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaDetailByIdRequest;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaInitiatorListReq;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeDiscussCreateResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeInitiatorResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangePageSearchResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaDetailByIdResponse;
|
||||
import cn.axzo.nanopart.visa.server.service.ChangeRecordConfirmService;
|
||||
import cn.axzo.nanopart.visa.server.service.ChangeRecordService;
|
||||
import io.swagger.annotations.Api;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -53,7 +53,7 @@ public class ChangeRecordController implements ChangeRecordApi {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<Long> discussCreateVisaChangeRecord(VisaChangeDiscussCreateReq req) {
|
||||
public ApiResult<VisaChangeDiscussCreateResp> discussCreateVisaChangeRecord(VisaChangeDiscussCreateReq req) {
|
||||
return ApiResult.ok(changeRecordService.discussCreateVisaChangeRecord(req));
|
||||
}
|
||||
|
||||
|
||||
@ -2,20 +2,23 @@ package cn.axzo.nanopart.visa.server.controller;
|
||||
|
||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.nanopart.visa.api.changerecord.ChangeRecordRelationApi;
|
||||
import cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum;
|
||||
import cn.axzo.nanopart.visa.api.request.ChangeRecordAppendAttachReq;
|
||||
import cn.axzo.nanopart.visa.api.request.ImGroupOperationReq;
|
||||
import cn.axzo.nanopart.visa.api.request.ImGroupTipsQueryReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaRelationReq;
|
||||
import cn.axzo.nanopart.visa.api.response.ImGroupTipsResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaRelationResp;
|
||||
import cn.axzo.nanopart.visa.server.domain.ChangeRecordRelation;
|
||||
import cn.axzo.nanopart.visa.server.dto.VisaRelationDto;
|
||||
import cn.axzo.nanopart.visa.server.service.ChangeRecordRelationService;
|
||||
import cn.axzo.nanopart.visa.server.service.ChangeRecordService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author xudawei
|
||||
@ -27,14 +30,25 @@ import java.util.List;
|
||||
@RequiredArgsConstructor
|
||||
public class ChangeRecordRelationController implements ChangeRecordRelationApi {
|
||||
|
||||
@Autowired
|
||||
private ChangeRecordService changeRecordService;
|
||||
@Autowired
|
||||
private ChangeRecordRelationService changeRecordRelationService;
|
||||
private final ChangeRecordRelationService changeRecordRelationService;
|
||||
|
||||
@Override
|
||||
public ApiResult<List<VisaRelationResp>> listByVisaId(VisaRelationReq req) {
|
||||
return null;
|
||||
return ApiResult.ok(changeRecordRelationService.findByCondition(VisaRelationDto.builder()
|
||||
.visaId(req.getVisaId())
|
||||
.varName(VisaRelationFieldEnum.PROCESS_INSTANCE.name())
|
||||
.build())
|
||||
.stream().sorted(Comparator.comparing(ChangeRecordRelation::getCreateAt))
|
||||
.map(i -> VisaRelationResp.builder()
|
||||
.id(i.getId())
|
||||
.visaId(String.valueOf(i.getVisaId()))
|
||||
.varName(i.getVarName())
|
||||
.varExt(i.getVarExt())
|
||||
.varType(i.getVarType())
|
||||
.content(i.getContent())
|
||||
.contentExt(i.getContentExt())
|
||||
.createAt(i.getCreateAt())
|
||||
.build()).collect(Collectors.toList()));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -11,6 +11,7 @@ import cn.axzo.nanopart.visa.api.request.VisaChangeExportReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangePageSearchReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaInitiatorListReq;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeDiscussCreateResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeInitiatorResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangePageSearchResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaDetailByIdResponse;
|
||||
@ -66,7 +67,7 @@ public interface ChangeRecordService extends IService<ChangeRecord> {
|
||||
* @param req 表单数据
|
||||
* @return 变更签证Id
|
||||
*/
|
||||
Long discussCreateVisaChangeRecord(VisaChangeDiscussCreateReq req);
|
||||
VisaChangeDiscussCreateResp discussCreateVisaChangeRecord(VisaChangeDiscussCreateReq req);
|
||||
|
||||
/**
|
||||
* 创建审批变更签证
|
||||
|
||||
@ -162,7 +162,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
||||
|
||||
ChangeRecordRelation relation = new ChangeRecordRelation();
|
||||
relation.setVisaId(req.getVisaId());
|
||||
relation.setVarName(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE.getCode());
|
||||
relation.setVarName(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE.name());
|
||||
relation.setVarExt(req.getButtonType().name());
|
||||
relation.setVarType(VisaRelationVarTypeEnum.LONG.getType());
|
||||
relation.setContentExt(String.valueOf(req.getOperatorWorkspaceId()));
|
||||
@ -198,7 +198,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
||||
} else {
|
||||
List<ChangeRecordRelation> byCondition = findByCondition(VisaRelationDto.builder()
|
||||
.visaId(req.getVisaId())
|
||||
.varName(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE.getCode())
|
||||
.varName(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE.name())
|
||||
.content(String.valueOf(req.getOperatorOuId()))
|
||||
.contentExt(NumberUtil.isPositiveNumber(req.getOperatorWorkspaceId()) ? String.valueOf(req.getOperatorWorkspaceId()) : null)
|
||||
.createBy(req.getOperatorPersonId())
|
||||
@ -219,7 +219,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
||||
resp.setStatusText(record.getStatus().getDesc());
|
||||
List<ChangeRecordRelation> imGroupParticipate = findByCondition(VisaRelationDto.builder()
|
||||
.visaId(req.getVisaId())
|
||||
.varName(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE.getCode())
|
||||
.varName(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE.name())
|
||||
.build());
|
||||
|
||||
List<ImGroupButton> buttons = new ArrayList<>();
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package cn.axzo.nanopart.visa.server.service.impl;
|
||||
|
||||
import cn.axzo.apollo.api.res.ConstructionAreaInfo;
|
||||
import cn.axzo.apollo.workspace.api.workspace.res.GetDetailRes;
|
||||
import cn.axzo.apollo.workspace.api.workspace.res.ProjectBriefResp;
|
||||
import cn.axzo.apollo.workspace.api.workspace.res.ProjectDetailRes;
|
||||
@ -44,6 +45,7 @@ import cn.axzo.nanopart.visa.api.request.VisaChangeExportReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangePageSearchReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaInitiatorListReq;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeDiscussCreateResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangeInitiatorResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaChangePageSearchResp;
|
||||
import cn.axzo.nanopart.visa.api.response.VisaDetailByIdResponse;
|
||||
@ -79,6 +81,7 @@ import cn.axzo.nanopart.visa.server.utils.Constants;
|
||||
import cn.axzo.orggateway.api.nodeuser.dto.OrgNodeUserDTO;
|
||||
import cn.axzo.orggateway.api.nodeuser.req.ListOrgNodeUserReq;
|
||||
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
|
||||
import cn.axzo.thor.client.model.DrawingMajorResp;
|
||||
import cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum;
|
||||
import cn.axzo.workflow.common.model.dto.UploadFieldDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO;
|
||||
@ -89,6 +92,7 @@ import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.lang.Pair;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@ -579,7 +583,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Long discussCreateVisaChangeRecord(VisaChangeDiscussCreateReq req) {
|
||||
public VisaChangeDiscussCreateResp discussCreateVisaChangeRecord(VisaChangeDiscussCreateReq req) {
|
||||
/*暂存数据*/
|
||||
Long visaId = tempCreateVisaChangeRecord(req);
|
||||
/*创建群聊*/
|
||||
@ -623,7 +627,11 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
.ouId(req.getOperatorOuId())
|
||||
.workspaceId(req.getRelationWorkspaceId())
|
||||
.build());
|
||||
return visaId;
|
||||
return VisaChangeDiscussCreateResp.builder()
|
||||
.visaId(visaId)
|
||||
.imGroupId(imGroup.getTid())
|
||||
.imGroupName(req.getTopic())
|
||||
.build();
|
||||
}
|
||||
|
||||
private void updateImInfo(Long visaId, GroupCreateResponse imGroup) {
|
||||
@ -701,17 +709,17 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
|
||||
// 三种单据
|
||||
if (MapUtils.isNotEmpty(req.getRelationOrderMap())) {
|
||||
List<Long> taskOrderIds = req.getRelationOrderMap().getOrDefault(VisaRelationFieldEnum.TASK_ORDER.getCode(), null);
|
||||
List<Long> taskOrderIds = req.getRelationOrderMap().getOrDefault(VisaBillTypeEnum.TASK.name(), null);
|
||||
if (CollectionUtils.isNotEmpty(taskOrderIds)) {
|
||||
formVariables.put(FORM_FIELD_RELATION_TASK_ORDER, taskOrderIds);
|
||||
}
|
||||
|
||||
List<Long> rectificationOrderIds = req.getRelationOrderMap().getOrDefault(VisaRelationFieldEnum.RECTIFICATION_ORDER.getCode(), null);
|
||||
List<Long> rectificationOrderIds = req.getRelationOrderMap().getOrDefault(VisaBillTypeEnum.RECTIFY.name(), null);
|
||||
if (CollectionUtils.isNotEmpty(rectificationOrderIds)) {
|
||||
formVariables.put(FORM_FIELD_RELATION_RECTIFICATION_ORDER, rectificationOrderIds);
|
||||
}
|
||||
|
||||
List<Long> visaOrderIds = req.getRelationOrderMap().getOrDefault(VisaRelationFieldEnum.VISA_ORDER.getCode(), null);
|
||||
List<Long> visaOrderIds = req.getRelationOrderMap().getOrDefault(VisaBillTypeEnum.DESIGN_VISA.name(), null);
|
||||
if (CollectionUtils.isNotEmpty(visaOrderIds)) {
|
||||
formVariables.put(FORM_FIELD_RELATION_VISA_ORDER, visaOrderIds);
|
||||
}
|
||||
@ -1277,8 +1285,12 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
req.setOperatorWorkspaceId(visa.getRelationWorkspaceId());
|
||||
validOperationPermission(req.getVisaId(), req.getOperatorPersonId(), req.getOperatorOuId(), req.getOperatorWorkspaceId());
|
||||
|
||||
// 组装 REQ 参数
|
||||
VisaChangeApproveCreateReq createReq = buildVisaChangeApproveCreateReqByVisaId(req.getVisaId());
|
||||
AssertUtil.notNull(createReq, "未找到变洽签单据");
|
||||
|
||||
// 校验
|
||||
validVisaChangeForm(createReq);
|
||||
createReq.setApprovePersonInfoList(req.getApprovePersonInfoList());
|
||||
createReq.setOperatorOuId(req.getOperatorOuId());
|
||||
createReq.setOperatorPersonId(req.getOperatorPersonId());
|
||||
|
||||
Loading…
Reference in New Issue
Block a user