feat(REQ-3581) - 完善处理逻辑

This commit is contained in:
wangli 2025-02-27 17:31:02 +08:00
parent e80a52ab13
commit 3dbd162014

View File

@ -13,6 +13,7 @@ import cn.axzo.nanopart.ess.api.mq.EssContractStateChangeMessage;
import cn.axzo.nanopart.ess.api.request.SaveContractSnapshotRequest; import cn.axzo.nanopart.ess.api.request.SaveContractSnapshotRequest;
import cn.axzo.nanopart.visa.server.domain.ChangeRecord; import cn.axzo.nanopart.visa.server.domain.ChangeRecord;
import cn.axzo.nanopart.visa.server.domain.ChangeRecordRelation; import cn.axzo.nanopart.visa.server.domain.ChangeRecordRelation;
import cn.axzo.nanopart.visa.server.dto.RelationEssContextDto;
import cn.axzo.nanopart.visa.server.dto.VisaRelationDto; import cn.axzo.nanopart.visa.server.dto.VisaRelationDto;
import cn.axzo.nanopart.visa.server.rpc.EssGateway; import cn.axzo.nanopart.visa.server.rpc.EssGateway;
import cn.axzo.nanopart.visa.server.rpc.WorkflowGateway; import cn.axzo.nanopart.visa.server.rpc.WorkflowGateway;
@ -37,7 +38,7 @@ import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static cn.axzo.nanopart.ess.api.enums.EssContractApproveState.ACCEPT; import static cn.axzo.nanopart.ess.api.enums.EssContractApproveState.ACCEPT;
import static cn.axzo.nanopart.ess.api.enums.MQEvent.ESS_CONTRACT_DOWNLOAD_PDF; import static cn.axzo.nanopart.ess.api.enums.MQEvent.ESS_CONTRACT_STATE_CHANGE;
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS; import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS;
/** /**
@ -71,7 +72,10 @@ public class EssAllEventHandler implements EventHandler, InitializingBean {
log.info("all ess event handle : {}", JSON.toJSONString(event)); log.info("all ess event handle : {}", JSON.toJSONString(event));
EssContractStateChangeMessage essContractStateChangeMessage = event.normalizedData(EssContractStateChangeMessage.class); EssContractStateChangeMessage essContractStateChangeMessage = event.normalizedData(EssContractStateChangeMessage.class);
EssContractInfo contract = essContractStateChangeMessage.getContract(); EssContractInfo contract = essContractStateChangeMessage.getContract();
AssertUtil.isTrue(Objects.nonNull(essContractStateChangeMessage) && Objects.nonNull(contract), "腾讯电子签事件对象异常");
// contract.getApproveDetails().stream().filter(i->Objects.nonNull(i.getOuId())).findFirst().get().getSignPerson().setPersonId(9000404670L);
AssertUtil.isTrue(Objects.nonNull(contract), "腾讯电子签事件对象异常");
if (Objects.equals(EssContractState.ALL, contract.getState())) { if (Objects.equals(EssContractState.ALL, contract.getState())) {
// 所有单位都完成签署 // 所有单位都完成签署
@ -106,9 +110,11 @@ public class EssAllEventHandler implements EventHandler, InitializingBean {
AssertUtil.isTrue(CollectionUtils.isNotEmpty(workspaces) && workspaces.size() == 1, "未获取到企业工作台信息"); AssertUtil.isTrue(CollectionUtils.isNotEmpty(workspaces) && workspaces.size() == 1, "未获取到企业工作台信息");
GetWorkspaceDetailRes entWorkspace = workspaces.get(0); GetWorkspaceDetailRes entWorkspace = workspaces.get(0);
RelationEssContextDto relationEssContextDto = JSON.parseObject(i.getContent(), RelationEssContextDto.class);
// 同意审批和待办 // 同意审批和待办
BpmnTaskAuditDTO auditDTO = new BpmnTaskAuditDTO(); BpmnTaskAuditDTO auditDTO = new BpmnTaskAuditDTO();
auditDTO.setTaskId(findTaskId(i.getContentExt(), String.valueOf(approveDetail.getSignPerson().getPersonId()))); auditDTO.setTaskId(findTaskId(relationEssContextDto.getApprovalId(), String.valueOf(approveDetail.getSignPerson().getPersonId())));
auditDTO.setApprover(BpmnTaskDelegateAssigner.builder() auditDTO.setApprover(BpmnTaskDelegateAssigner.builder()
.tenantId(String.valueOf(entWorkspace.getId())) .tenantId(String.valueOf(entWorkspace.getId()))
.ouId(String.valueOf(approveDetail.getOuId())) .ouId(String.valueOf(approveDetail.getOuId()))
@ -131,6 +137,6 @@ public class EssAllEventHandler implements EventHandler, InitializingBean {
@Override @Override
public void afterPropertiesSet() throws Exception { public void afterPropertiesSet() throws Exception {
eventConsumer.registerHandler(ESS_CONTRACT_DOWNLOAD_PDF.getEventCode(), this); eventConsumer.registerHandler(ESS_CONTRACT_STATE_CHANGE.getEventCode(), this);
} }
} }