feat(REQ-3300) - 兼容用印进展中的单个单位申请用印

This commit is contained in:
wangli 2025-03-04 14:51:42 +08:00
parent 5bf6461a4d
commit d3ee8df03a

View File

@ -489,7 +489,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
// 移除上一次申请
removeLastRequest(visa);
// 创建电子签合同
Map<Long, String> essRecipientIdMap = createContract(req, visa);
Map<String, String> essRecipientIdMap = createContract(req, visa);
// 拉取单位类型
Map<Long, String> ouTypeMap = listCooperateShipTypes(req, visa);
@ -521,7 +521,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
return stamp;
}).collect(Collectors.toList());
if (Objects.nonNull(essRecipientIdMap)) {
if (Objects.nonNull(essRecipientIdMap) && !StringUtils.hasText(visa.getContractId())) {
// 记录单位与其在合同中的签章位置
ChangeRecordRelation recipientRelation = new ChangeRecordRelation();
recipientRelation.setVisaId(visa.getId());
@ -619,7 +619,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
.build()).stream().collect(Collectors.toMap(CooperateShipResp::getOrganizationalUnitId, i -> SaasCooperateShipCooperateTypeEnum.getByCode(i.getCooperateType()).name()));
}
private Map<Long, String> createContract(VisaRequestStampReq req, ChangeRecord visa) {
private Map<String, String> createContract(VisaRequestStampReq req, ChangeRecord visa) {
if (StringUtils.hasText(visa.getContractId())) {
List<ChangeRecordRelation> recipientIds = findByVisaAndVarName(visa.getId(), ESS_RECIPIENT_ID_MAP.name());
AssertUtil.notEmpty(recipientIds, "未找到签章位置信息");
@ -653,9 +653,9 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
visa.setStampStatus(VisaStampStatusEnum.WITH_PRINT);
changeRecordService.updateById(visa);
Map<Long, String> essRecipientIdMap = new HashMap<>();
Map<String, String> essRecipientIdMap = new HashMap<>();
for (int i = 0; i < req.getRequestStamps().size(); i++) {
essRecipientIdMap.put(req.getRequestStamps().get(i).getOuId(), contract.getEssRecipientIds().get(i));
essRecipientIdMap.put(String.valueOf(req.getRequestStamps().get(i).getOuId()), contract.getEssRecipientIds().get(i));
}
return essRecipientIdMap;
@ -680,7 +680,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
private String createEssProcessInstance(VisaRequestStampReq.RequestStampModel model,
ChangeRecord visa,
VisaRequestStampReq req,
Map<Long, String> essRecipientIdMap,
Map<String, String> essRecipientIdMap,
NodesByModelVO specifyAssigneeActivity, Map<Long, List<BpmnTaskDelegateAssigner>> stampUserMap) {
List<GetWorkspaceDetailRes> workspaces = workspaceGateway.getWorkspace(GetWorkspaceDetailReq.builder()
.organizationUnitId(model.getOuId())
@ -727,7 +727,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
WORKFLOW_PENDING_INITIATOR_UNIT_NAME, unitInfo.getName(),
WORKFLOW_VAR_STAMP_TYPE, model.getSealType().name(),
WORKFLOW_PENDING_STAMP_TYPE_DESC, model.getSealType().getDescription(),
WORKFLOW_VAR_STAMP_RECIPIENT, MapUtils.emptyIfNull(essRecipientIdMap).getOrDefault(model.getOuId(), ""),
WORKFLOW_VAR_STAMP_RECIPIENT, MapUtils.emptyIfNull(essRecipientIdMap).getOrDefault(String.valueOf(model.getOuId()), ""),
WORKFLOW_VAR_STAMP_CONTRACT_ID, visa.getContractId(),
WORKFLOW_PENDING_PDF_FILE_URL, req.getPdfFile().getFileUrl()
);