diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java index 97fd41b3..46d9ae6d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java @@ -107,8 +107,6 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl variables = annualInitData.getFlowUser(); // 业务数据 List dataList = annualInitData.getDataList(); // 设置流程变量 @@ -125,7 +123,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl data.setProcessInstanceId(processInstanceId)); saveBatch(dataList); @@ -163,13 +161,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl getUserMap(Map variables) { // 转成逗号拼接 - variables.put("contactUserList", Optional.ofNullable((List) variables.get("contactUserList")) - .map(list -> String.join(",", list)) - .orElse("")); - variables.put("approvalUserList", Optional.ofNullable((List) variables.get("approvalUserList")) - .map(list -> String.join(",", list)) - .orElse("")); - variables.put("mainDraftUserList", Optional.ofNullable((List) variables.get("mainDraftUserList")) + variables.put("contactUserList", Optional.ofNullable((HashSet) variables.get("contactUserList")) .map(list -> String.join(",", list)) .orElse("")); return variables; @@ -274,6 +266,10 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl userMap = new HashMap<>(); switch (taskName) { case CONTACT_USER_SELECT: dataList = annualInitData.getDataList(); @@ -283,6 +279,9 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl approvalUserSet = new HashSet<>(); dataList.forEach(d -> approvalUserSet.add(d.getApprovalUser())); taskService.setVariable(taskId, "approvalUserList", approvalUserSet); + // 保存人员 + userMap.put("approvalUserList", String.join(",", approvalUserSet)); + processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, userMap); dataList.forEach(data -> data.setExecutionId(executionId)); saveOrUpdateBatch(dataList); } else { @@ -314,6 +313,9 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl mainDraftUserSet.add(d.getPrcMainDraftUser())); dataList.forEach(data -> data.setExecutionId(executionId)); taskService.setVariable(taskId, "mainDraftUserList", mainDraftUserSet); + // 保存人员 + userMap.put("mainDraftUserList", String.join(",", mainDraftUserSet)); + processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, userMap); } else { // 找到对应数据,然后设置驳回标志位 updateWrapper.eq(ProcessEsAnnualInit::getContactUser, contactUser); @@ -333,6 +335,12 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl d.setMainDraftingUser(userId)); saveOrUpdateBatch(dataList); + // 找出所有主起草人 + Set mainDraftUserSet = new HashSet<>(); + dataList.forEach(d -> mainDraftUserSet.add(d.getMainDraftingUser())); + // 保存人员 + userMap.put("mainDraftUser", String.join(",", mainDraftUserSet)); + processNodeLinkService.incrementSaveNodeUserLink(processDefinitionId, processInstanceId, userMap); break; case CONTACT_USER_COLLECT: dataList = annualInitData.getDataList(); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java index 929e9c45..461b7e52 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java @@ -180,7 +180,6 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl