update 法规合规评估流程

This commit is contained in:
lijiarao
2024-01-19 11:11:39 +08:00
parent 9bfbe4cb92
commit e5b304a9d3
2 changed files with 52 additions and 4 deletions
@@ -12,6 +12,8 @@ public class ProcessProjectStandardCommon {
public static final String MODULE_OWNER_LIST_SIZE = "moduleOwnerListSize";
public static final String DESIGN_ENGINEER_LIST = "designEngineerList";
public static final String DESIGN_ENGINEER_LIST_SIZE = "designEngineerListSize";
public static final String NOT_INVOLVED_MODULE_OWNER_LIST_SIZE = "notInvolvedModuleOwnerListSize";
public static final String NOT_INVOLVED_MODULE_OWNER_LIST = "notInvolvedModuleOwnerList";
//法规工程师发起
@@ -156,14 +156,14 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
//驳回后模块责任人分发
case ProcessProjectStandardCommon.MKZRRFF_4:
case ProcessProjectStandardCommon.MKZRRFF_5:
processProjectStandardTermList = termMapper.getByModuleOwner(processId, originUserId, executionParentId, true);
processProjectStandardTermList = termMapper.getByModuleOwner(processId, originUserId, executionParentId, false);
break;
//设计工程师评估
case ProcessProjectStandardCommon.SJGCSPG_:
processProjectStandardTermList = termMapper.getByDesignEngineer(processId, originUserId, executionParentId);
break;
//模块责任人审批
case ProcessProjectStandardCommon.MKZRRFF_:
case ProcessProjectStandardCommon.MKZRRSP_:
processProjectStandardTermList = termMapper.getByModuleOwner(processId, originUserId, executionParentId, false);
break;
//部所主管级领导审批
@@ -444,6 +444,36 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
termApprovalList.add(termApproval);
}
termApprovalService.saveBatch(termApprovalList);
ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,executionId);
// 完成任务
Map<String, Object> variables = new HashMap<>();
//如果驳回查询下一步的模块责任人
if (!pass){
LambdaQueryWrapper<ProcessProjectStandardTermUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProcessProjectStandardTermUser::getProcessId,businessId);
wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader,originUserId);
List<ProcessProjectStandardTermUser> termUserList = termUserMapper.selectList(wrapper);
//选择不涉及的模块责任人
List<String> notInvolvedModuleOwnerList = termUserList.stream()
.filter(i -> StringUtils.isBlank(i.getDesignEngineer()))
.map(ProcessProjectStandardTermUser::getModuleOwner)
.distinct()
.collect(Collectors.toList());
//选择设计工程师的模块责任人
List<String> moduleOwnerList = termUserList.stream()
.filter(i -> StringUtils.isNotBlank(i.getDesignEngineer()))
.map(ProcessProjectStandardTermUser::getModuleOwner)
.distinct()
.collect(Collectors.toList());
variables.put(ProcessProjectStandardCommon.NOT_INVOLVED_MODULE_OWNER_LIST, notInvolvedModuleOwnerList);
variables.put(ProcessProjectStandardCommon.NOT_INVOLVED_MODULE_OWNER_LIST_SIZE, notInvolvedModuleOwnerList.size());
variables.put(ProcessProjectStandardCommon.MODULE_OWNER_LIST, moduleOwnerList);
variables.put(ProcessProjectStandardCommon.MODULE_OWNER_LIST_SIZE, moduleOwnerList.size());
}
String taskId = processDTO.getTaskId();
variables.put(ProcessProjectAssessCommon.PASS, pass);
taskService.complete(taskId, variables);
}
//法规工程师审批
private void fggcsspApprove(ProcessInfoVO<ProcessProjectStandardVO> processInfoVO, ProcessDTO processDTO, boolean pass) {
@@ -467,6 +497,7 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
List<ProcessProjectStandardTerm> termList = businessInfoDTO.getProcessProjectStandardTermList();
List<String> carbonCopyPersonnelList = new ArrayList<>();
List<ProcessProjectStandardTerm> updateTermList = new ArrayList<>();
List<String> designEngineerList = new ArrayList<>();
Date date = new Date();
for (ProcessProjectStandardTerm term : termList) {
ProcessProjectStandardTerm term1 = new ProcessProjectStandardTerm();
@@ -476,6 +507,7 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
term1.setId(termId);
term1.setAssessResults(assessResults);
term1.setDescription(designEngineer);
designEngineerList.add(designEngineer);
updateTermList.add(term1);
carbonCopyPersonnelList.addAll(Arrays.asList(term.getCarbonCopyPersonnels().split(",")));
@@ -510,6 +542,13 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
}
//更新数据
termService.updateBatchById(updateTermList);
// 完成任务
String taskId = processDTO.getTaskId();
Map<String, Object> variables = new HashMap<>();
variables.put(ProcessProjectAssessCommon.PASS, pass);
variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerList);
variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST_SIZE, designEngineerList.size());
taskService.complete(taskId, variables);
//发送消息
String carbonCopyPersonnels = carbonCopyPersonnelList.stream().distinct().collect(Collectors.joining(","));
SendMessageDTO sendMessageDTO = new SendMessageDTO();
@@ -730,8 +769,15 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
String processInstanceId = delegateTask.getProcessInstanceId();
ProcessAll processAll = processAllService.getByProcessInstanceId(processInstanceId);
String projectId = processAll.getProjectId();
List<ProcessProjectStandardTerm> termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, false);
List<ProcessProjectStandardTerm> termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, true);
List<String> designEngineerIds = termList.stream()
.map(ProcessProjectStandardTerm::getDesignEngineer)
.distinct()
.collect(Collectors.toList());
ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,executionParentId);
Map<String, Object> variables = new HashMap<>();
variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerIds);
taskService.complete(delegateTask.getId(),variables);
}
/**