feat: 制修订流程撤回后 更改对应企标计划项目状态为未开始

This commit is contained in:
2024-01-26 14:54:13 +08:00
parent c3631d33d9
commit b6488aa7b5
@@ -25,11 +25,16 @@ import com.jero.modules.activiti.mapper.ProcessAllMapper;
import com.jero.modules.activiti.process.common.common.DraftCommon;
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectStatus;
import com.jero.modules.activiti.process.esRevision.entity.ProcessEsRevision;
import com.jero.modules.activiti.process.esRevision.service.EsRevisionService;
import com.jero.modules.activiti.util.SpringContextUtil;
import com.jero.modules.activiti.vo.DelegateTaskParam;
import com.jero.modules.activiti.vo.ResolveTaskParam;
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
import com.jero.modules.laws.common.util.CurrentUserUtil;
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan;
import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService;
import lombok.extern.slf4j.Slf4j;
import org.activiti.engine.HistoryService;
import org.activiti.engine.RuntimeService;
@@ -68,6 +73,11 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
private SendMessageAPI sendMessageAPI;
@Resource
private ProcessDraftService processDraftService;
@Resource
private EsRevisionService revisionService;
@Resource
private EnterpriseStandardPlanService espService;
private static final List<Integer> INSPECT_PROCESS = Arrays.asList(
ProcessTypeEnum.FB_ENTRY_CHANGE.getValue(),
@@ -175,9 +185,26 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
processApprovalRecord.setFinishFlag(FinishFlagEnum.WITHDRAWN.getValue());
processApprovalRecord.setCreateTime(null);
approvalRecordService.save(processApprovalRecord);
// 制修订流程强制撤回后需要更改企标计划的项目状态为未开始
if (Objects.equals(prcType, ProcessTypeEnum.ES_REVISION.getValue())) {
this.revisionForcedWithdrawalProcess(processInstanceId);
}
//todo 同步删除操作到统一待办
}
private void revisionForcedWithdrawalProcess(String processInstanceId) {
ProcessEsRevision revision = revisionService.getOne(new LambdaQueryWrapper<ProcessEsRevision>()
.eq(ProcessEsRevision::getProcessInstanceId, processInstanceId));
String espId = revision.getEspId();
if (StringUtils.isNotBlank(espId)) {
throw new JeroBootException("强制撤回企标制修订流程失败,找不到对应的企标计划");
}
espService.update(new LambdaUpdateWrapper<EnterpriseStandardPlan>()
.eq(EnterpriseStandardPlan::getId, espId)
.set(EnterpriseStandardPlan::getProjectStatus, ESPProjectStatus.NOT_STARTED.getValue()));
}
public void delegateTask(DelegateTaskParam param) {
String taskId = param.getTaskId();
String userId = param.getUserId();