diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/aspect/ProcessAspect.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/aspect/ProcessAspect.java index e422f808..a2c35912 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/aspect/ProcessAspect.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/aspect/ProcessAspect.java @@ -9,8 +9,11 @@ import com.jero.common.system.vo.LoginUser; import com.jero.common.util.MessageUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; +import com.jero.modules.activiti.enums.CommitFlagEnum; +import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.process.esinspectplan.common.EsInspectPlanCommon; import com.jero.modules.activiti.service.ProcessApprovalRecordService; +import com.jero.modules.activiti.service.ProcessNodeLinkService; import lombok.extern.slf4j.Slf4j; import org.activiti.bpmn.model.Process; import org.activiti.bpmn.model.UserTask; @@ -51,6 +54,8 @@ public class ProcessAspect { private RepositoryService repositoryService; @Resource private ProcessApprovalRecordService processApprovalRecordService; + @Resource + private ProcessNodeLinkService processNodeLinkService; private static final String PROCESS_ALL = "processAll"; private static final List SPECIAL_NODE = Arrays.asList(EsInspectPlanCommon.PROCESS_NODE_3); @@ -113,12 +118,16 @@ public class ProcessAspect { // 所有会签人数 Integer all = (Integer) taskService.getVariable(processAll.getTaskId(), "nrOfInstances"); taskService.setVariable(processAll.getTaskId(), "nrOfCompletedInstances", all); - // 删除其他会签人员待办 - processApprovalRecordService.remove( - new LambdaQueryWrapper() + // 其他会签人员审批信息,更新状态为未处理 + processApprovalRecordService.update( + new LambdaUpdateWrapper() .eq(ProcessApprovalRecord::getProcessInstanceId, processAll.getProcessInstanceId()) .eq(ProcessApprovalRecord::getNodeId, processAll.getNodeId()) - .ne(ProcessApprovalRecord::getTaskId, processAll.getTaskId())); + .isNull(ProcessApprovalRecord::getEndTime) + .ne(ProcessApprovalRecord::getTaskId, processAll.getTaskId()) + .set(ProcessApprovalRecord::getCommitFlag, CommitFlagEnum.UNDISPOSED.getValue()) + .set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.SUSPEND.getValue())); + } } log.info("==========流程会签节点驳回一票否决前置方法结束=========="); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java index e5b11f9c..1eac6faa 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java @@ -359,7 +359,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { .eq(ProcessNodeLink::getProcessDefinitionId, processAll.getProcessDefinitionId()) .eq(ProcessNodeLink::getProcessInstanceId, processAll.getProcessInstanceId()) .eq(ProcessNodeLink::getProcessNodeId, processNode.getId()) - .set(ProcessNodeLink::getUserId, "")); + .set(ProcessNodeLink::getUserId, null)); } // 判断是否是最后一个节点 if (isLastNode(processAll.getProcessInstanceId())