update 项目合规评估流程 自测

This commit is contained in:
lijiarao
2023-12-16 20:31:46 +08:00
parent 74f60f9889
commit 49f12f7ff6
5 changed files with 41 additions and 11 deletions
@@ -224,9 +224,9 @@ public class ProcessHandleServiceImpl implements IProcessHandleService {
if (Objects.isNull(task)) { if (Objects.isNull(task)) {
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND); throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
} }
if (!CurrentUserUtil.getId().equals(task.getAssignee())) { //if (!CurrentUserUtil.getId().equals(task.getAssignee())) {
throw new JeroBootException(ResultCommon.NO_PERMISSION); // throw new JeroBootException(ResultCommon.NO_PERMISSION);
} //}
} }
/** /**
@@ -44,7 +44,7 @@
<property name="alias" value="ppat"/> <property name="alias" value="ppat"/>
</include> </include>
, ,
ppatu.id termUserId ppatu.id term_user_id
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}
@@ -59,7 +59,7 @@
<property name="alias" value="ppat"/> <property name="alias" value="ppat"/>
</include> </include>
, ,
ppatu.id termUserId ppatu.id term_user_id
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}
@@ -29,9 +29,11 @@ import com.jero.modules.activiti.process.projectassess.vo.ProcessProjectAssessVO
import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessAllService;
import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.activiti.service.ProcessApprovalRecordService;
import com.jero.modules.laws.common.util.CurrentUserUtil; import com.jero.modules.laws.common.util.CurrentUserUtil;
import org.activiti.engine.HistoryService;
import org.activiti.engine.RuntimeService; import org.activiti.engine.RuntimeService;
import org.activiti.engine.TaskService; import org.activiti.engine.TaskService;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.history.HistoricTaskInstance;
import org.activiti.engine.runtime.Execution; 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;
@@ -66,6 +68,8 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
@Resource @Resource
private RuntimeService runtimeService; private RuntimeService runtimeService;
@Resource @Resource
private HistoryService historyService;
@Resource
private ProcessProjectAssessLinkService processProjectAssessLinkService; private ProcessProjectAssessLinkService processProjectAssessLinkService;
@Resource @Resource
private ProcessProjectAssessTermService processProjectAssessTermService; private ProcessProjectAssessTermService processProjectAssessTermService;
@@ -422,11 +426,12 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
String originUserId = processApprovalRecord.getOriginUserId(); String originUserId = processApprovalRecord.getOriginUserId();
Task task = processDTO.getTask(); Task task = processDTO.getTask();
String executionId = task.getExecutionId(); String executionId = task.getExecutionId();
String formKey = task.getFormKey();
//拿到一条用于获取责任单位负责人 //拿到一条用于获取责任单位负责人
LambdaQueryWrapper<ProcessProjectAssessTermUser> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ProcessProjectAssessTermUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId); wrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId);
wrapper.eq(ProcessProjectAssessTermUser::getModuleOwner, originUserId); wrapper.eq(ProcessProjectAssessTermUser::getModuleOwner, originUserId);
wrapper.eq(ProcessProjectAssessTermUser::getParentExecutionId, executionId); wrapper.eq(ProcessProjectAssessTermUser::getParentExecutionId, formKey);
wrapper.last("limit 1"); wrapper.last("limit 1");
ProcessProjectAssessTermUser one = processProjectAssessTermUserService.getOne(wrapper); ProcessProjectAssessTermUser one = processProjectAssessTermUserService.getOne(wrapper);
String responsibleUnitLeader = one.getResponsibleUnitLeader(); String responsibleUnitLeader = one.getResponsibleUnitLeader();
@@ -434,7 +439,7 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
LambdaQueryWrapper<ProcessProjectAssessTermUser> removeWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ProcessProjectAssessTermUser> removeWrapper = new LambdaQueryWrapper<>();
removeWrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId); removeWrapper.eq(ProcessProjectAssessTermUser::getAssessmentId, businessId);
removeWrapper.eq(ProcessProjectAssessTermUser::getModuleOwner, originUserId); removeWrapper.eq(ProcessProjectAssessTermUser::getModuleOwner, originUserId);
removeWrapper.eq(ProcessProjectAssessTermUser::getParentExecutionId, executionId); removeWrapper.eq(ProcessProjectAssessTermUser::getParentExecutionId, formKey);
processProjectAssessTermUserService.remove(removeWrapper); processProjectAssessTermUserService.remove(removeWrapper);
@@ -564,7 +569,7 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
switch (taskDefinitionKey) { switch (taskDefinitionKey) {
//模块负责人分发 //模块负责人分发
case ProcessProjectAssessCommon.MKFZRFF: case ProcessProjectAssessCommon.MKFZRFF:
nodeId = ProcessProjectAssessCommon.GBMZGJLDSP; nodeId = ProcessProjectAssessCommon.GBMZGJLDXF;
break; break;
//设计工程师评估 //设计工程师评估
case ProcessProjectAssessCommon.SJGCSPG: case ProcessProjectAssessCommon.SJGCSPG:
@@ -573,6 +578,7 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
//模块负责人审批 //模块负责人审批
case ProcessProjectAssessCommon.MKFZRSP: case ProcessProjectAssessCommon.MKFZRSP:
nodeId = ProcessProjectAssessCommon.MKFZRFF; nodeId = ProcessProjectAssessCommon.MKFZRFF;
break;
//模块负责人修改 //模块负责人修改
case ProcessProjectAssessCommon.MKFZRXG: case ProcessProjectAssessCommon.MKFZRXG:
nodeId = ProcessProjectAssessCommon.GBMZGJLDSP; nodeId = ProcessProjectAssessCommon.GBMZGJLDSP;
@@ -582,8 +588,8 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
//查询我最新提交的task //查询我最新提交的task
ProcessApprovalRecord myLastComplete = processApprovalRecordService.getMyLastComplete(processInstanceId, nodeId); ProcessApprovalRecord myLastComplete = processApprovalRecordService.getMyLastComplete(processInstanceId, nodeId);
String lastCompleteTaskId = myLastComplete.getTaskId(); String lastCompleteTaskId = myLastComplete.getTaskId();
ProcessDTO processDTO = processHandleService.getProcessDTO(lastCompleteTaskId); HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery().taskId(lastCompleteTaskId).singleResult();
Execution execution = processDTO.getExecution(); String executionId = historicTaskInstance.getExecutionId();
delegateTask.setFormKey(execution.getId()); delegateTask.setFormKey(executionId);
} }
} }
@@ -35,11 +35,17 @@
<bpmn:outgoing>Flow_0xb4gtd</bpmn:outgoing> <bpmn:outgoing>Flow_0xb4gtd</bpmn:outgoing>
</bpmn:startEvent> </bpmn:startEvent>
<bpmn:userTask id="mkfzrff" name="模块负责人分发" activiti:assignee="${moduleOwner}"> <bpmn:userTask id="mkfzrff" name="模块负责人分发" activiti:assignee="${moduleOwner}">
<bpmn:extensionElements>
<activiti:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_0xb4gtd</bpmn:incoming> <bpmn:incoming>Flow_0xb4gtd</bpmn:incoming>
<bpmn:outgoing>Flow_1d18hwv</bpmn:outgoing> <bpmn:outgoing>Flow_1d18hwv</bpmn:outgoing>
</bpmn:userTask> </bpmn:userTask>
<bpmn:sequenceFlow id="Flow_0xb4gtd" sourceRef="Event_1ian0ub" targetRef="mkfzrff" /> <bpmn:sequenceFlow id="Flow_0xb4gtd" sourceRef="Event_1ian0ub" targetRef="mkfzrff" />
<bpmn:userTask id="sjgcspg" name="设计工程师评估" activiti:assignee="${designEngineer}"> <bpmn:userTask id="sjgcspg" name="设计工程师评估" activiti:assignee="${designEngineer}">
<bpmn:extensionElements>
<activiti:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_1d18hwv</bpmn:incoming> <bpmn:incoming>Flow_1d18hwv</bpmn:incoming>
<bpmn:incoming>Flow_07hxwn8</bpmn:incoming> <bpmn:incoming>Flow_07hxwn8</bpmn:incoming>
<bpmn:outgoing>Flow_09f92lr</bpmn:outgoing> <bpmn:outgoing>Flow_09f92lr</bpmn:outgoing>
@@ -49,6 +55,9 @@
</bpmn:userTask> </bpmn:userTask>
<bpmn:sequenceFlow id="Flow_1d18hwv" sourceRef="mkfzrff" targetRef="sjgcspg" /> <bpmn:sequenceFlow id="Flow_1d18hwv" sourceRef="mkfzrff" targetRef="sjgcspg" />
<bpmn:userTask id="mkfzrsp" name="模块负责人审批" activiti:assignee="${moduleOwner}"> <bpmn:userTask id="mkfzrsp" name="模块负责人审批" activiti:assignee="${moduleOwner}">
<bpmn:extensionElements>
<activiti:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_09f92lr</bpmn:incoming> <bpmn:incoming>Flow_09f92lr</bpmn:incoming>
<bpmn:outgoing>Flow_1w5wrt4</bpmn:outgoing> <bpmn:outgoing>Flow_1w5wrt4</bpmn:outgoing>
</bpmn:userTask> </bpmn:userTask>
@@ -92,6 +101,9 @@
</bpmn:sequenceFlow> </bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_0mpm9av" sourceRef="mkfzrxg" targetRef="gbmzgjldsp" /> <bpmn:sequenceFlow id="Flow_0mpm9av" sourceRef="mkfzrxg" targetRef="gbmzgjldsp" />
<bpmn:userTask id="mkfzrxg" name="模块负责人修改" activiti:assignee="${moduleOwner}"> <bpmn:userTask id="mkfzrxg" name="模块负责人修改" activiti:assignee="${moduleOwner}">
<bpmn:extensionElements>
<activiti:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_11i64js</bpmn:incoming> <bpmn:incoming>Flow_11i64js</bpmn:incoming>
<bpmn:outgoing>Flow_0mpm9av</bpmn:outgoing> <bpmn:outgoing>Flow_0mpm9av</bpmn:outgoing>
<bpmn:multiInstanceLoopCharacteristics activiti:collection="moduleOwnerList" activiti:elementVariable="moduleOwner"> <bpmn:multiInstanceLoopCharacteristics activiti:collection="moduleOwnerList" activiti:elementVariable="moduleOwner">
@@ -35,11 +35,17 @@
<bpmn:outgoing>Flow_0xb4gtd</bpmn:outgoing> <bpmn:outgoing>Flow_0xb4gtd</bpmn:outgoing>
</bpmn:startEvent> </bpmn:startEvent>
<bpmn:userTask id="mkfzrff" name="模块负责人分发" camunda:assignee="${moduleOwner}"> <bpmn:userTask id="mkfzrff" name="模块负责人分发" camunda:assignee="${moduleOwner}">
<bpmn:extensionElements>
<camunda:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_0xb4gtd</bpmn:incoming> <bpmn:incoming>Flow_0xb4gtd</bpmn:incoming>
<bpmn:outgoing>Flow_1d18hwv</bpmn:outgoing> <bpmn:outgoing>Flow_1d18hwv</bpmn:outgoing>
</bpmn:userTask> </bpmn:userTask>
<bpmn:sequenceFlow id="Flow_0xb4gtd" sourceRef="Event_1ian0ub" targetRef="mkfzrff" /> <bpmn:sequenceFlow id="Flow_0xb4gtd" sourceRef="Event_1ian0ub" targetRef="mkfzrff" />
<bpmn:userTask id="sjgcspg" name="设计工程师评估" camunda:assignee="${designEngineer}"> <bpmn:userTask id="sjgcspg" name="设计工程师评估" camunda:assignee="${designEngineer}">
<bpmn:extensionElements>
<camunda:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_1d18hwv</bpmn:incoming> <bpmn:incoming>Flow_1d18hwv</bpmn:incoming>
<bpmn:incoming>Flow_07hxwn8</bpmn:incoming> <bpmn:incoming>Flow_07hxwn8</bpmn:incoming>
<bpmn:outgoing>Flow_09f92lr</bpmn:outgoing> <bpmn:outgoing>Flow_09f92lr</bpmn:outgoing>
@@ -49,6 +55,9 @@
</bpmn:userTask> </bpmn:userTask>
<bpmn:sequenceFlow id="Flow_1d18hwv" sourceRef="mkfzrff" targetRef="sjgcspg" /> <bpmn:sequenceFlow id="Flow_1d18hwv" sourceRef="mkfzrff" targetRef="sjgcspg" />
<bpmn:userTask id="mkfzrsp" name="模块负责人审批" camunda:assignee="${moduleOwner}"> <bpmn:userTask id="mkfzrsp" name="模块负责人审批" camunda:assignee="${moduleOwner}">
<bpmn:extensionElements>
<camunda:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_09f92lr</bpmn:incoming> <bpmn:incoming>Flow_09f92lr</bpmn:incoming>
<bpmn:outgoing>Flow_1w5wrt4</bpmn:outgoing> <bpmn:outgoing>Flow_1w5wrt4</bpmn:outgoing>
</bpmn:userTask> </bpmn:userTask>
@@ -92,6 +101,9 @@
</bpmn:sequenceFlow> </bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_0mpm9av" sourceRef="mkfzrxg" targetRef="gbmzgjldsp" /> <bpmn:sequenceFlow id="Flow_0mpm9av" sourceRef="mkfzrxg" targetRef="gbmzgjldsp" />
<bpmn:userTask id="mkfzrxg" name="模块负责人修改" camunda:assignee="${moduleOwner}"> <bpmn:userTask id="mkfzrxg" name="模块负责人修改" camunda:assignee="${moduleOwner}">
<bpmn:extensionElements>
<camunda:taskListener class="com.jero.modules.activiti.process.projectassess.listener.ProcessProjectAssessCreateListener" event="create" />
</bpmn:extensionElements>
<bpmn:incoming>Flow_11i64js</bpmn:incoming> <bpmn:incoming>Flow_11i64js</bpmn:incoming>
<bpmn:outgoing>Flow_0mpm9av</bpmn:outgoing> <bpmn:outgoing>Flow_0mpm9av</bpmn:outgoing>
<bpmn:multiInstanceLoopCharacteristics camunda:collection="moduleOwnerList" camunda:elementVariable="moduleOwner"> <bpmn:multiInstanceLoopCharacteristics camunda:collection="moduleOwnerList" camunda:elementVariable="moduleOwner">