diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardinterpret/service/impl/StandardInterpretFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardinterpret/service/impl/StandardInterpretFlowServiceImpl.java index e50d646c..4969f897 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardinterpret/service/impl/StandardInterpretFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardinterpret/service/impl/StandardInterpretFlowServiceImpl.java @@ -231,9 +231,8 @@ public class StandardInterpretFlowServiceImpl implements StandardInterpretFlowSe if (StandardInterpretCommon.AUTO_TASK_1.equals(taskDefinitionKey) || StandardInterpretCommon.AUTO_TASK_3.equals(taskDefinitionKey)) { // 获取子解读人 - List interpretingPeopleList = - (List) delegateTask.getVariable(StandardInterpretCommon.INTERPRETING_PEOPLE); - + String interpretingPeoples = (String) delegateTask.getVariable(StandardInterpretCommon.INTERPRETING_PEOPLE); + List interpretingPeopleList = Arrays.asList(interpretingPeoples.split(",")); for (String interpretingPeople : interpretingPeopleList) { // 循环发起 标准解读流程(主解读重新分发子流程) variables.put(StandardInterpretCommon.INTERPRETING_PEOPLE, interpretingPeople); @@ -1028,7 +1027,8 @@ public class StandardInterpretFlowServiceImpl implements StandardInterpretFlowSe // 设置未分配数量 map.put(StandardInterpretCommon.UNALLOCATED_QUANTITY, unallocatedQuantity); // 设置子解读人 - map.put(StandardInterpretCommon.INTERPRETING_PEOPLE, new ArrayList<>(interpretPersonIdList)); + map.put(StandardInterpretCommon.INTERPRETING_PEOPLE, + String.join(",", interpretPersonIdList)); // 设置主流程实例id map.put(ActivitiCommon.MAIN_INSTANCE_ID, standardInterpretFlowDTO.getProcessAll().getProcessInstanceId()); processStandardInterpretClauseSublistService.saveBatch(processStandardInterpretClauseSublists); @@ -1129,21 +1129,23 @@ public class StandardInterpretFlowServiceImpl implements StandardInterpretFlowSe // 更新流程审批信息 LambdaUpdateWrapper processApprovalRecordUpdate = new LambdaUpdateWrapper<>(); - if (!Objects.isNull(task)){ - processApprovalRecordUpdate.eq(ProcessApprovalRecord::getTaskId, task.getId()); - } - - processApprovalRecordUpdate.set(ProcessApprovalRecord::getUserId, loginUser.getId()); - processApprovalRecordUpdate.set(ProcessApprovalRecord::getProjectId, processAll.getProjectId()); - processApprovalRecordUpdate.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue()); - processApprovalRecordUpdate.set(ProcessApprovalRecord::getEndTime, new Date()); if (StringUtils.isNotBlank(processApprovalRecord.getParentTaskId())){ + // 子流程 processApprovalRecordUpdate.eq( ProcessApprovalRecord::getParentTaskId, processApprovalRecord.getParentTaskId()); + processApprovalRecordUpdate.eq(ProcessApprovalRecord::getUserId, processApprovalRecord.getUserId()); processApprovalRecordUpdate.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue()); + processApprovalRecordService.update(processApprovalRecordUpdate); + }else { + // 普通流程 + processApprovalRecordUpdate.eq(ProcessApprovalRecord::getTaskId, task.getId()); + processApprovalRecordUpdate.set(ProcessApprovalRecord::getUserId, loginUser.getId()); + processApprovalRecordUpdate.set(ProcessApprovalRecord::getProjectId, processAll.getProjectId()); + processApprovalRecordUpdate.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue()); + processApprovalRecordUpdate.set(ProcessApprovalRecord::getEndTime, new Date()); + processApprovalRecordService.update(processApprovalRecord, processApprovalRecordUpdate); } - processApprovalRecordService.update(processApprovalRecord, processApprovalRecordUpdate); // 新增流程实例节点关联用户表信息 processNodeLinkService.saveNodeUserLink(processInstance.getProcessDefinitionId(), processInstance.getId()