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.visa.server.domain.ChangeRecord;
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.rpc.EssGateway;
import cn.axzo.nanopart.visa.server.rpc.WorkflowGateway;
@ -37,7 +38,7 @@ import java.util.function.Function;
import java.util.stream.Collectors;
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;
/**
@ -71,7 +72,10 @@ public class EssAllEventHandler implements EventHandler, InitializingBean {
log.info("all ess event handle : {}", JSON.toJSONString(event));
EssContractStateChangeMessage essContractStateChangeMessage = event.normalizedData(EssContractStateChangeMessage.class);
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())) {
// 所有单位都完成签署
@ -106,9 +110,11 @@ public class EssAllEventHandler implements EventHandler, InitializingBean {
AssertUtil.isTrue(CollectionUtils.isNotEmpty(workspaces) && workspaces.size() == 1, "未获取到企业工作台信息");
GetWorkspaceDetailRes entWorkspace = workspaces.get(0);
RelationEssContextDto relationEssContextDto = JSON.parseObject(i.getContent(), RelationEssContextDto.class);
// 同意审批和待办
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()
.tenantId(String.valueOf(entWorkspace.getId()))
.ouId(String.valueOf(approveDetail.getOuId()))
@ -131,6 +137,6 @@ public class EssAllEventHandler implements EventHandler, InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
eventConsumer.registerHandler(ESS_CONTRACT_DOWNLOAD_PDF.getEventCode(), this);
eventConsumer.registerHandler(ESS_CONTRACT_STATE_CHANGE.getEventCode(), this);
}
}