fix: 自动发起企标制修订流程修改企标计划状态

This commit is contained in:
2023-12-28 15:34:57 +08:00
parent 448d2d4365
commit 4ac8f90948
@@ -13,6 +13,7 @@ import com.jero.modules.activiti.process.common.entity.CommonVO;
import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants;
import com.jero.modules.activiti.process.common.enums.ProcessType;
import com.jero.modules.activiti.process.common.service.ActFlowCommonService;
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectStatus;
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPRevisionType;
import com.jero.modules.activiti.process.esRevision.entity.EsRevisionAdvice;
import com.jero.modules.activiti.process.esRevision.entity.OperateTypeEnum;
@@ -166,7 +167,19 @@ public class EsRevisionServiceImpl extends ServiceImpl<EsRevisionMapper, Process
EnterpriseStandardPlan esp = espService.getById(espId);
String mainDraftUser = esp.getMainDraftingUser();
if (StrUtil.isBlank(mainDraftUser)) {
log.info("新企标编号为{}的企标计划的主起草人为空,无法自动发起制修订流程", esp.getNewEnStandardNo());
log.error("新企标编号为{}的企标计划的主起草人为空,无法自动发起制修订流程", esp.getNewEnStandardNo());
// 企标计划改为未开始
esp.setProjectStatus(ESPProjectStatus.NOT_STARTED.getValue());
espService.updateById(esp);
return;
}
// 根据流程实例id更新流程总表
String standardNo = esp.getNewEnStandardNo();
if (StrUtil.isBlank(standardNo)) {
log.error("企标计划Id为{}的企标计划新企标编号为空,无法自动发起制修订流程", esp.getId());
// 企标计划改为未开始
esp.setProjectStatus(ESPProjectStatus.NOT_STARTED.getValue());
espService.updateById(esp);
return;
}
// 流程Key
@@ -188,17 +201,15 @@ public class EsRevisionServiceImpl extends ServiceImpl<EsRevisionMapper, Process
// 保存选人信息
// 人员
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, variables);
// 根据流程实例id更新流程总表
String standardNo = esp.getNewEnStandardNo();
if (StrUtil.isBlank(standardNo)) {
throw new JeroBootException("企标计划Id为{}的企标计划新企标编号为空,无法正常自动发起制修订流程", esp.getId());
}
String newStandardName = esp.getNewEnStandardName();
String revisionType = esp.getProjectType().equals(ESPRevisionType.ENACT.getValue()) ? "制定" : "修订";
String prcName = standardNo + "-" + newStandardName + "-" + revisionType;
Integer prcType = ProcessTypeEnum.ES_REVISION.getValue();
actFlowCommonService.updateProcessAll(processInstanceId, mainDraftUser, prcName, null, prcType, null);
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(variables));
// 将企标计划改为运行中
esp.setProjectStatus(ESPProjectStatus.IN_PROGRESS.getValue());
espService.updateById(esp);
}
@Override
@@ -323,8 +334,8 @@ public class EsRevisionServiceImpl extends ServiceImpl<EsRevisionMapper, Process
taskService.setVariables(taskId, deadlineMap);
data.setOtherDraftUserVOS(otherDraftUserVOS);
data.setOtherDrafterUploadFileJson(otherDraftUserVOS);
saveOrUpdate(data);
}
saveOrUpdate(data);
String standardizationUser = (String) flowUser.get("standardizationUser");
taskService.setVariable(taskId, "standardizationUser", standardizationUser);
// 保存人员信息