fix: 88345 法规符合性排查流程(主排查人单线审核) --审核一个,汇总节点就有代办了
This commit is contained in:
+30
-1
@@ -20,6 +20,7 @@ import com.jero.modules.activiti.enums.FinishFlagEnum;
|
|||||||
import com.jero.modules.activiti.enums.ProcessStatusEnum;
|
import com.jero.modules.activiti.enums.ProcessStatusEnum;
|
||||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||||
import com.jero.modules.activiti.process.fb.common.ProcessDefinitionKey;
|
import com.jero.modules.activiti.process.fb.common.ProcessDefinitionKey;
|
||||||
|
import com.jero.modules.activiti.process.standardComplianceCheck.common.ProcessStandardComplianceCheckConstants;
|
||||||
import com.jero.modules.activiti.process.standardinterpret.common.StandardInterpretCommon;
|
import com.jero.modules.activiti.process.standardinterpret.common.StandardInterpretCommon;
|
||||||
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;
|
||||||
@@ -446,7 +447,18 @@ public class MyGlobalEventListener implements ActivitiEventListener {
|
|||||||
if (variable != null) {
|
if (variable != null) {
|
||||||
int unallocatedQuantity = (int) variable;
|
int unallocatedQuantity = (int) variable;
|
||||||
if (unallocatedQuantity == 0) {
|
if (unallocatedQuantity == 0) {
|
||||||
taskService.complete(parentTaskId);
|
if (processInstanceId.equals(mainInstanceId)) {
|
||||||
|
List<String> nodeIdList = new ArrayList<>();
|
||||||
|
nodeIdList.add(ProcessStandardComplianceCheckConstants.DESIGNER_ENGINEER_EVALUATION);
|
||||||
|
nodeIdList.add(ProcessStandardComplianceCheckConstants.MAIN_CHECK_USER_APPROVAL);
|
||||||
|
nodeIdList.add(ProcessStandardComplianceCheckConstants.MAIN_CHECK_USER_REDISTRIBUTE);
|
||||||
|
boolean b = isChildrenNodeAllComplete2(processInstanceId, nodeIdList);
|
||||||
|
if (b) {
|
||||||
|
taskService.complete(parentTaskId);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
taskService.complete(parentTaskId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
taskService.complete(parentTaskId);
|
taskService.complete(parentTaskId);
|
||||||
@@ -518,4 +530,21 @@ public class MyGlobalEventListener implements ActivitiEventListener {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断所有子流程是否都完成
|
||||||
|
*
|
||||||
|
* @param processInstanceId
|
||||||
|
* @return true:都完成 false:未都完成
|
||||||
|
*/
|
||||||
|
private boolean isChildrenNodeAllComplete2(String processInstanceId, List<String> nodeIdList) {
|
||||||
|
// 判断当前parentTaskId是否是第一个自动处理任务节点
|
||||||
|
ProcessApprovalRecordService processApprovalRecordService = SpringContextUtil.getBean(ProcessApprovalRecordService.class);
|
||||||
|
int count = processApprovalRecordService.count(
|
||||||
|
new LambdaQueryWrapper<ProcessApprovalRecord>()
|
||||||
|
.eq(ProcessApprovalRecord::getProcessInstanceId, processInstanceId)
|
||||||
|
.in(ProcessApprovalRecord::getNodeId, nodeIdList)
|
||||||
|
.eq(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue()));
|
||||||
|
return count == 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user