update 项目合规评估流程 提交审批操作
This commit is contained in:
+2
@@ -8,6 +8,8 @@ public class ProcessProjectAssessCommon {
|
|||||||
public static final String STANDARDS_ENGINEER = "standardsEngineer";
|
public static final String STANDARDS_ENGINEER = "standardsEngineer";
|
||||||
public static final String MANAGER_LEADER_LIST = "managerLeaderList";
|
public static final String MANAGER_LEADER_LIST = "managerLeaderList";
|
||||||
public static final String MODULE_OWNER_LIST = "moduleOwnerList";
|
public static final String MODULE_OWNER_LIST = "moduleOwnerList";
|
||||||
|
public static final String DESIGN_ENGINEER_LIST = "designEngineerList";
|
||||||
|
public static final String PASS = "pass";
|
||||||
//法规工程师发起
|
//法规工程师发起
|
||||||
public static final String FGGCSFQ = "fggcsfq";
|
public static final String FGGCSFQ = "fggcsfq";
|
||||||
//各部门主管级领导下发
|
//各部门主管级领导下发
|
||||||
|
|||||||
+46
-2
@@ -100,6 +100,13 @@ public class ProcessProjectAssessTerm {
|
|||||||
@ApiModelProperty(value = "可以分派标识")
|
@ApiModelProperty(value = "可以分派标识")
|
||||||
private Integer canAssignFlag;
|
private Integer canAssignFlag;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 条款关联用户表ID
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "条款关联用户表ID")
|
||||||
|
private String termUserId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 责任单位id
|
* 责任单位id
|
||||||
*/
|
*/
|
||||||
@@ -111,15 +118,22 @@ public class ProcessProjectAssessTerm {
|
|||||||
* 责任单位负责人id
|
* 责任单位负责人id
|
||||||
*/
|
*/
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
@ApiModelProperty(value = "责任单位负责人id")
|
@ApiModelProperty(value = "责任单位负责人ids")
|
||||||
private String responsibleUnitLeaders;
|
private String responsibleUnitLeaders;
|
||||||
/**
|
/**
|
||||||
* 模块负责人id
|
* 模块负责人id
|
||||||
*/
|
*/
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
@ApiModelProperty(value = "模块负责人id")
|
@ApiModelProperty(value = "模块负责人ids")
|
||||||
private String moduleOwners;
|
private String moduleOwners;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设计工程师
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "设计工程师ids")
|
||||||
|
private String designEngineers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 不涉及原因
|
* 不涉及原因
|
||||||
*/
|
*/
|
||||||
@@ -137,5 +151,35 @@ public class ProcessProjectAssessTerm {
|
|||||||
@ApiModelProperty(value = "条款关联用户")
|
@ApiModelProperty(value = "条款关联用户")
|
||||||
private List<ProcessProjectAssessTermUser> processProjectAssessTermUserList;
|
private List<ProcessProjectAssessTermUser> processProjectAssessTermUserList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 评估反馈
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "评估反馈")
|
||||||
|
private Integer evaluationFeedback;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 依据描述
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "依据描述")
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 佐证材料
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "佐证材料")
|
||||||
|
private String fileId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 预计整改完成日期
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "预计整改完成日期")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||||
|
private Date expectedTime;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
+5
@@ -17,6 +17,7 @@
|
|||||||
<result column="term_text" jdbcType="VARCHAR" property="termText" />
|
<result column="term_text" jdbcType="VARCHAR" property="termText" />
|
||||||
<result column="split_info_id" property="splitInfoId"/>
|
<result column="split_info_id" property="splitInfoId"/>
|
||||||
<result column="can_assign_flag" property="canAssignFlag"/>
|
<result column="can_assign_flag" property="canAssignFlag"/>
|
||||||
|
<result column="term_user_id" property="termUserId"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="Base_Column_List">
|
<sql id="Base_Column_List">
|
||||||
@@ -42,6 +43,8 @@
|
|||||||
<include refid="Base_Column_List">
|
<include refid="Base_Column_List">
|
||||||
<property name="alias" value="ppat"/>
|
<property name="alias" value="ppat"/>
|
||||||
</include>
|
</include>
|
||||||
|
,
|
||||||
|
ppatu.id termUserId
|
||||||
from process_project_assess_term ppat
|
from process_project_assess_term ppat
|
||||||
left join process_project_assess_term_user ppatu on ppat.id = ppatu.term_id
|
left join process_project_assess_term_user ppatu on ppat.id = ppatu.term_id
|
||||||
where ppat.assessment_id = #{assessmentId}
|
where ppat.assessment_id = #{assessmentId}
|
||||||
@@ -55,6 +58,8 @@
|
|||||||
<include refid="Base_Column_List">
|
<include refid="Base_Column_List">
|
||||||
<property name="alias" value="ppat"/>
|
<property name="alias" value="ppat"/>
|
||||||
</include>
|
</include>
|
||||||
|
,
|
||||||
|
ppatu.id termUserId
|
||||||
from process_project_assess_term ppat
|
from process_project_assess_term ppat
|
||||||
left join process_project_assess_term_user ppatu on ppat.id = ppatu.term_id
|
left join process_project_assess_term_user ppatu on ppat.id = ppatu.term_id
|
||||||
where ppat.assessment_id = #{assessmentId}
|
where ppat.assessment_id = #{assessmentId}
|
||||||
|
|||||||
+191
-50
@@ -1,4 +1,6 @@
|
|||||||
package com.jero.modules.activiti.process.projectassess.service;
|
package com.jero.modules.activiti.process.projectassess.service;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollStreamUtil;
|
import cn.hutool.core.collection.CollStreamUtil;
|
||||||
@@ -34,6 +36,7 @@ import org.activiti.engine.runtime.Execution;
|
|||||||
import org.activiti.engine.task.Task;
|
import org.activiti.engine.task.Task;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -44,7 +47,6 @@ import com.jero.modules.activiti.process.projectassess.mapper.ProcessProjectAsse
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author liJiaRao
|
* @author liJiaRao
|
||||||
* @date 2023-12-05 15:57
|
* @date 2023-12-05 15:57
|
||||||
*/
|
*/
|
||||||
@@ -95,10 +97,8 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
|||||||
String originUserId = processApprovalRecord.getOriginUserId();
|
String originUserId = processApprovalRecord.getOriginUserId();
|
||||||
Task task = processDTO.getTask();
|
Task task = processDTO.getTask();
|
||||||
|
|
||||||
|
String executionParentId = task.getFormKey();
|
||||||
String taskDefinitionKey = task.getTaskDefinitionKey();
|
String taskDefinitionKey = task.getTaskDefinitionKey();
|
||||||
Execution execution = processDTO.getExecution();
|
|
||||||
String executionParentId = (String) runtimeService.getVariable(execution.getId(),"flowIndex");
|
|
||||||
//String executionParentId = execution.getParentId();
|
|
||||||
List<ProcessProjectAssessTermUser> processProjectAssessTermUserList = new ArrayList<>();
|
List<ProcessProjectAssessTermUser> processProjectAssessTermUserList = new ArrayList<>();
|
||||||
List<ProcessProjectAssessTerm> processProjectAssessTermList = new ArrayList<>();
|
List<ProcessProjectAssessTerm> processProjectAssessTermList = new ArrayList<>();
|
||||||
//获取所有用户信息
|
//获取所有用户信息
|
||||||
@@ -280,10 +280,47 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void approveTask(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, boolean b) {
|
public void approveTask(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, boolean pass) {
|
||||||
|
BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO();
|
||||||
|
String taskId = basicTaskInfoDTO.getTaskId();
|
||||||
|
ProcessDTO processDTO = processHandleService.getProcessDTO(taskId);
|
||||||
|
String processInstanceId = processDTO.getProcessInstanceId();
|
||||||
|
ProcessAll processAll = processAllService.getByProcessInstanceId(processInstanceId);
|
||||||
|
processInfoVO.setBusinessId(processAll.getProjectId());
|
||||||
|
Task task = processDTO.getTask();
|
||||||
|
String taskDefinitionKey = task.getTaskDefinitionKey();
|
||||||
|
processHandleService.updateApprovalRecord(processInfoVO);
|
||||||
|
switch (taskDefinitionKey) {
|
||||||
|
//模块负责人审批
|
||||||
|
case ProcessProjectAssessCommon.MKFZRSP:
|
||||||
|
mkfzrspApprove(processInfoVO, processDTO, pass);
|
||||||
|
break;
|
||||||
|
//各部门主管级领导(汇总)审批
|
||||||
|
case ProcessProjectAssessCommon.GBMZGJLDSP:
|
||||||
|
gbmzgjldspApprove(processInfoVO, processDTO, pass);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void mkfzrspApprove(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO, boolean pass) {
|
||||||
|
// 完成任务
|
||||||
|
String taskId = processDTO.getTaskId();
|
||||||
|
Map<String, Object> variables = new HashMap<>();
|
||||||
|
variables.put(ProcessProjectAssessCommon.PASS, pass);
|
||||||
|
taskService.complete(taskId, variables);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void gbmzgjldspApprove(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO, boolean pass) {
|
||||||
|
// 完成任务
|
||||||
|
String taskId = processDTO.getTaskId();
|
||||||
|
Map<String, Object> variables = new HashMap<>();
|
||||||
|
variables.put(ProcessProjectAssessCommon.PASS, pass);
|
||||||
|
taskService.complete(taskId, variables);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void submit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO) {
|
public void submit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO) {
|
||||||
BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO();
|
BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO();
|
||||||
String taskId = basicTaskInfoDTO.getTaskId();
|
String taskId = basicTaskInfoDTO.getTaskId();
|
||||||
@@ -293,6 +330,7 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
|||||||
processInfoVO.setBusinessId(processAll.getProjectId());
|
processInfoVO.setBusinessId(processAll.getProjectId());
|
||||||
Task task = processDTO.getTask();
|
Task task = processDTO.getTask();
|
||||||
String taskDefinitionKey = task.getTaskDefinitionKey();
|
String taskDefinitionKey = task.getTaskDefinitionKey();
|
||||||
|
processHandleService.updateApprovalRecord(processInfoVO);
|
||||||
switch (taskDefinitionKey) {
|
switch (taskDefinitionKey) {
|
||||||
//各部门主管级领导下发
|
//各部门主管级领导下发
|
||||||
case ProcessProjectAssessCommon.GBMZGJLDXF:
|
case ProcessProjectAssessCommon.GBMZGJLDXF:
|
||||||
@@ -304,32 +342,20 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
|||||||
break;
|
break;
|
||||||
//设计工程师评估
|
//设计工程师评估
|
||||||
case ProcessProjectAssessCommon.SJGCSPG:
|
case ProcessProjectAssessCommon.SJGCSPG:
|
||||||
|
sjgcspgSubmit(processInfoVO, processDTO);
|
||||||
break;
|
break;
|
||||||
//模块负责人修改
|
//模块负责人修改
|
||||||
case ProcessProjectAssessCommon.MKFZRXG:
|
case ProcessProjectAssessCommon.MKFZRXG:
|
||||||
|
mkfzrxgSubmit(processInfoVO, processDTO);
|
||||||
break;
|
break;
|
||||||
//法规工程师归档
|
//法规工程师归档
|
||||||
case ProcessProjectAssessCommon.FGGCSGD:
|
case ProcessProjectAssessCommon.FGGCSGD:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void mkfzrffSubmit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO) {
|
|
||||||
String businessId = processInfoVO.getBusinessId();
|
|
||||||
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
|
|
||||||
String originUserId = processApprovalRecord.getOriginUserId();
|
|
||||||
Task task = processDTO.getTask();
|
|
||||||
String executionId = task.getExecutionId();
|
|
||||||
// 删除原先存储的关联
|
|
||||||
LambdaQueryWrapper<ProcessProjectAssessTermUser> removeWrapper = new LambdaQueryWrapper<>();
|
|
||||||
removeWrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId);
|
|
||||||
removeWrapper.eq(ProcessProjectAssessTermUser::getResponsibleUnitLeader, originUserId);
|
|
||||||
processProjectAssessTermUserService.remove(removeWrapper);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//各部门主管级领导下发
|
||||||
private void gbmzgjldxfSubmit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO) {
|
private void gbmzgjldxfSubmit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO) {
|
||||||
String businessId = processInfoVO.getBusinessId();
|
String businessId = processInfoVO.getBusinessId();
|
||||||
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
|
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
|
||||||
@@ -386,10 +412,134 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
|||||||
String taskId = processDTO.getTaskId();
|
String taskId = processDTO.getTaskId();
|
||||||
Map<String, Object> variables = new HashMap<>();
|
Map<String, Object> variables = new HashMap<>();
|
||||||
variables.put(ProcessProjectAssessCommon.MODULE_OWNER_LIST, moduleOwnerIds);
|
variables.put(ProcessProjectAssessCommon.MODULE_OWNER_LIST, moduleOwnerIds);
|
||||||
variables.put("flowIndex", executionId);
|
|
||||||
taskService.complete(taskId, variables);
|
taskService.complete(taskId, variables);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//模块负责人分发
|
||||||
|
private void mkfzrffSubmit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO) {
|
||||||
|
String businessId = processInfoVO.getBusinessId();
|
||||||
|
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
|
||||||
|
String originUserId = processApprovalRecord.getOriginUserId();
|
||||||
|
Task task = processDTO.getTask();
|
||||||
|
String executionId = task.getExecutionId();
|
||||||
|
//拿到一条用于获取责任单位负责人
|
||||||
|
LambdaQueryWrapper<ProcessProjectAssessTermUser> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId);
|
||||||
|
wrapper.eq(ProcessProjectAssessTermUser::getModuleOwner, originUserId);
|
||||||
|
wrapper.eq(ProcessProjectAssessTermUser::getParentExecutionId, executionId);
|
||||||
|
wrapper.last("limit 1");
|
||||||
|
ProcessProjectAssessTermUser one = processProjectAssessTermUserService.getOne(wrapper);
|
||||||
|
String responsibleUnitLeader = one.getResponsibleUnitLeader();
|
||||||
|
// 删除原先存储的关联
|
||||||
|
LambdaQueryWrapper<ProcessProjectAssessTermUser> removeWrapper = new LambdaQueryWrapper<>();
|
||||||
|
removeWrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId);
|
||||||
|
removeWrapper.eq(ProcessProjectAssessTermUser::getModuleOwner, originUserId);
|
||||||
|
removeWrapper.eq(ProcessProjectAssessTermUser::getParentExecutionId, executionId);
|
||||||
|
|
||||||
|
processProjectAssessTermUserService.remove(removeWrapper);
|
||||||
|
|
||||||
|
ProcessProjectAssessVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
||||||
|
List<ProcessProjectAssessTerm> processProjectAssessTermList = businessInfoDTO.getProcessProjectAssessTermList();
|
||||||
|
List<ProcessProjectAssessTermUser> allTermUserList = new ArrayList<>();
|
||||||
|
List<String> designEngineerIds = new ArrayList<>();
|
||||||
|
for (ProcessProjectAssessTerm processProjectAssessTerm : processProjectAssessTermList) {
|
||||||
|
String termId = processProjectAssessTerm.getId();
|
||||||
|
Integer canAssignFlag = processProjectAssessTerm.getCanAssignFlag();
|
||||||
|
String notInvolved = processProjectAssessTerm.getNotInvolved();
|
||||||
|
if (YesOrNoEnum.NO.getInteger().equals(canAssignFlag)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(notInvolved)) {
|
||||||
|
ProcessProjectAssessTermUser newTermUser = new ProcessProjectAssessTermUser();
|
||||||
|
newTermUser.setAssessmentId(businessId);
|
||||||
|
newTermUser.setTermId(termId);
|
||||||
|
newTermUser.setResponsibleUnitLeader(responsibleUnitLeader);
|
||||||
|
newTermUser.setModuleOwner(originUserId);
|
||||||
|
newTermUser.setParentExecutionId(executionId);
|
||||||
|
newTermUser.setNotInvolved(notInvolved);
|
||||||
|
allTermUserList.add(newTermUser);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
String designEngineers = processProjectAssessTerm.getDesignEngineers();
|
||||||
|
List<String> designEngineerIdList = Arrays.asList(designEngineers.split(","));
|
||||||
|
for (String designEngineerId : designEngineerIdList) {
|
||||||
|
ProcessProjectAssessTermUser newTermUser = new ProcessProjectAssessTermUser();
|
||||||
|
newTermUser.setAssessmentId(businessId);
|
||||||
|
newTermUser.setTermId(termId);
|
||||||
|
newTermUser.setResponsibleUnitLeader(responsibleUnitLeader);
|
||||||
|
newTermUser.setParentExecutionId(executionId);
|
||||||
|
newTermUser.setModuleOwner(originUserId);
|
||||||
|
newTermUser.setDesignEngineer(designEngineerId);
|
||||||
|
designEngineerIds.add(designEngineerId);
|
||||||
|
allTermUserList.add(newTermUser);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
processProjectAssessTermUserService.saveBatch(allTermUserList);
|
||||||
|
if (designEngineerIds.isEmpty()) {
|
||||||
|
throw new JeroBootException(ResultCommon.ProjectAssess);
|
||||||
|
}
|
||||||
|
processHandleService.saveNodeUserLink(processDTO.getProcessInstanceId(), ProcessProjectAssessCommon.MKFZRFF, designEngineerIds);
|
||||||
|
// 完成任务
|
||||||
|
String taskId = processDTO.getTaskId();
|
||||||
|
Map<String, Object> variables = new HashMap<>();
|
||||||
|
variables.put(ProcessProjectAssessCommon.DESIGN_ENGINEER_LIST, designEngineerIds);
|
||||||
|
taskService.complete(taskId, variables);
|
||||||
|
}
|
||||||
|
|
||||||
|
//设计工程师评估
|
||||||
|
private void sjgcspgSubmit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO) {
|
||||||
|
String businessId = processInfoVO.getBusinessId();
|
||||||
|
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
|
||||||
|
String originUserId = processApprovalRecord.getOriginUserId();
|
||||||
|
Task task = processDTO.getTask();
|
||||||
|
String executionId = task.getExecutionId();
|
||||||
|
|
||||||
|
ProcessProjectAssessVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
||||||
|
List<ProcessProjectAssessTerm> processProjectAssessTermList = businessInfoDTO.getProcessProjectAssessTermList();
|
||||||
|
List<ProcessProjectAssessTermUser> allTermUserList = new ArrayList<>();
|
||||||
|
for (ProcessProjectAssessTerm processProjectAssessTerm : processProjectAssessTermList) {
|
||||||
|
ProcessProjectAssessTermUser termUser = new ProcessProjectAssessTermUser();
|
||||||
|
termUser.setId(processProjectAssessTerm.getTermUserId());
|
||||||
|
termUser.setEvaluationFeedback(processProjectAssessTerm.getEvaluationFeedback());
|
||||||
|
termUser.setDescription(processProjectAssessTerm.getDescription());
|
||||||
|
termUser.setFileId(processProjectAssessTerm.getFileId());
|
||||||
|
termUser.setExpectedTime(processProjectAssessTerm.getExpectedTime());
|
||||||
|
allTermUserList.add(termUser);
|
||||||
|
}
|
||||||
|
processProjectAssessTermUserService.updateBatchById(allTermUserList);
|
||||||
|
// 完成任务
|
||||||
|
String taskId = processDTO.getTaskId();
|
||||||
|
taskService.complete(taskId);
|
||||||
|
}
|
||||||
|
|
||||||
|
//模块负责人修改
|
||||||
|
private void mkfzrxgSubmit(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO, ProcessDTO processDTO) {
|
||||||
|
String businessId = processInfoVO.getBusinessId();
|
||||||
|
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
|
||||||
|
String originUserId = processApprovalRecord.getOriginUserId();
|
||||||
|
Task task = processDTO.getTask();
|
||||||
|
String executionId = task.getExecutionId();
|
||||||
|
|
||||||
|
ProcessProjectAssessVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
||||||
|
List<ProcessProjectAssessTerm> processProjectAssessTermList = businessInfoDTO.getProcessProjectAssessTermList();
|
||||||
|
List<ProcessProjectAssessTermUser> allTermUserList = new ArrayList<>();
|
||||||
|
for (ProcessProjectAssessTerm processProjectAssessTerm : processProjectAssessTermList) {
|
||||||
|
ProcessProjectAssessTermUser termUser = new ProcessProjectAssessTermUser();
|
||||||
|
termUser.setId(processProjectAssessTerm.getTermUserId());
|
||||||
|
termUser.setEvaluationFeedback(processProjectAssessTerm.getEvaluationFeedback());
|
||||||
|
termUser.setDescription(processProjectAssessTerm.getDescription());
|
||||||
|
termUser.setFileId(processProjectAssessTerm.getFileId());
|
||||||
|
termUser.setExpectedTime(processProjectAssessTerm.getExpectedTime());
|
||||||
|
allTermUserList.add(termUser);
|
||||||
|
}
|
||||||
|
processProjectAssessTermUserService.updateBatchById(allTermUserList);
|
||||||
|
// 完成任务
|
||||||
|
String taskId = processDTO.getTaskId();
|
||||||
|
taskService.complete(taskId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void saveToDraft(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO) {
|
public void saveToDraft(ProcessInfoVO<ProcessProjectAssessVO> processInfoVO) {
|
||||||
ProcessProjectAssessVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
ProcessProjectAssessVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
||||||
if (businessInfoDTO != null) {
|
if (businessInfoDTO != null) {
|
||||||
@@ -410,39 +560,30 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
|||||||
String taskDefinitionKey = delegateTask.getTaskDefinitionKey();
|
String taskDefinitionKey = delegateTask.getTaskDefinitionKey();
|
||||||
String assignee = delegateTask.getAssignee();
|
String assignee = delegateTask.getAssignee();
|
||||||
String processInstanceId = delegateTask.getProcessInstanceId();
|
String processInstanceId = delegateTask.getProcessInstanceId();
|
||||||
|
String nodeId = null;
|
||||||
|
switch (taskDefinitionKey) {
|
||||||
|
//模块负责人分发
|
||||||
|
case ProcessProjectAssessCommon.MKFZRFF:
|
||||||
|
nodeId = ProcessProjectAssessCommon.GBMZGJLDSP;
|
||||||
|
break;
|
||||||
|
//设计工程师评估
|
||||||
|
case ProcessProjectAssessCommon.SJGCSPG:
|
||||||
|
nodeId = ProcessProjectAssessCommon.MKFZRFF;
|
||||||
|
break;
|
||||||
|
//模块负责人审批
|
||||||
|
case ProcessProjectAssessCommon.MKFZRSP:
|
||||||
|
nodeId = ProcessProjectAssessCommon.MKFZRFF;
|
||||||
|
//模块负责人修改
|
||||||
|
case ProcessProjectAssessCommon.MKFZRXG:
|
||||||
|
nodeId = ProcessProjectAssessCommon.GBMZGJLDSP;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
}
|
||||||
//查询我最新提交的task
|
//查询我最新提交的task
|
||||||
ProcessApprovalRecord myLastComplete = processApprovalRecordService.getMyLastComplete(processInstanceId);
|
ProcessApprovalRecord myLastComplete = processApprovalRecordService.getMyLastComplete(processInstanceId, nodeId);
|
||||||
String lastCompleteTaskId = myLastComplete.getTaskId();
|
String lastCompleteTaskId = myLastComplete.getTaskId();
|
||||||
ProcessDTO processDTO = processHandleService.getProcessDTO(lastCompleteTaskId);
|
ProcessDTO processDTO = processHandleService.getProcessDTO(lastCompleteTaskId);
|
||||||
Execution execution = processDTO.getExecution();
|
Execution execution = processDTO.getExecution();
|
||||||
delegateTask.setFormKey(execution.getId());
|
delegateTask.setFormKey(execution.getId());
|
||||||
switch (taskDefinitionKey) {
|
|
||||||
//各部门主管级领导下发
|
|
||||||
case ProcessProjectAssessCommon.GBMZGJLDXF:
|
|
||||||
break;
|
|
||||||
//各部门主管级领导(汇总)审批
|
|
||||||
case ProcessProjectAssessCommon.GBMZGJLDSP:
|
|
||||||
|
|
||||||
break;
|
|
||||||
//模块负责人分发
|
|
||||||
case ProcessProjectAssessCommon.MKFZRFF:
|
|
||||||
break;
|
|
||||||
//模块负责人审批
|
|
||||||
case ProcessProjectAssessCommon.MKFZRSP:
|
|
||||||
//模块负责人修改
|
|
||||||
case ProcessProjectAssessCommon.MKFZRXG:
|
|
||||||
|
|
||||||
break;
|
|
||||||
//设计工程师评估
|
|
||||||
case ProcessProjectAssessCommon.SJGCSPG:
|
|
||||||
|
|
||||||
break;
|
|
||||||
//法规工程师归档
|
|
||||||
case ProcessProjectAssessCommon.FGGCSGD:
|
|
||||||
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-1
@@ -53,11 +53,12 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
|
|||||||
return pageList;
|
return pageList;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProcessApprovalRecord getMyLastComplete(String processInstanceId) {
|
public ProcessApprovalRecord getMyLastComplete(String processInstanceId,String nodeId) {
|
||||||
LambdaQueryWrapper<ProcessApprovalRecord> wrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<ProcessApprovalRecord> wrapper = new LambdaQueryWrapper<>();
|
||||||
wrapper.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId);
|
wrapper.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId);
|
||||||
wrapper.eq(ProcessApprovalRecord::getUserId, CurrentUserUtil.getId());
|
wrapper.eq(ProcessApprovalRecord::getUserId, CurrentUserUtil.getId());
|
||||||
wrapper.eq(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.COMPLETE.getValue());
|
wrapper.eq(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.COMPLETE.getValue());
|
||||||
|
wrapper.eq(StringUtils.isNotBlank(nodeId), ProcessApprovalRecord::getNodeId,nodeId);
|
||||||
wrapper.orderByDesc(ProcessApprovalRecord::getEndTime);
|
wrapper.orderByDesc(ProcessApprovalRecord::getEndTime);
|
||||||
wrapper.last("limit 1");
|
wrapper.last("limit 1");
|
||||||
ProcessApprovalRecord approvalRecord = this.getOne(wrapper);
|
ProcessApprovalRecord approvalRecord = this.getOne(wrapper);
|
||||||
|
|||||||
Reference in New Issue
Block a user