diff --git a/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java b/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java index 64a12b9d..b079244a 100644 --- a/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java +++ b/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java @@ -71,6 +71,7 @@ public class WorkflowUserCronJob extends BaseCronJob { } baseWorkflowIdSet.add(workflowId); String userIds = shareManager.getWorkflowCreater(Integer.parseInt(workflowId)); + logger.info("workflowname-shareManager-"+userIds); Set userIdList = new HashSet<>(Arrays.asList(userIds.split(","))); baseWorkflowMap.put(workflowId, userIdList); baseWorkflowName.put(workflowId, workflowname); @@ -141,7 +142,7 @@ public class WorkflowUserCronJob extends BaseCronJob { //人员权限修改同步 if (updateSet.size() != 0) { - HashSet needUpdateSet = updateWorkflow(bb, updateSet, baseWorkflowMap, modeWorkflowMap, baseWorkflowName, formModeId); + HashSet needUpdateSet = updateWorkflow(bb, updateSet, baseWorkflowMap, modeWorkflowMap, baseWorkflowName, baseWorkflowCataCode,formModeId); needUpdateSet.addAll(needUpdateWorkflowSet); logger.info("needUpdateSet-size:" + needUpdateSet.size()); //先删除流程再重新同步人员权限 @@ -258,15 +259,15 @@ public class WorkflowUserCronJob extends BaseCronJob { /** * 更新建模表数据 - * - * @param bb + * @param bb * @param updateSet * @param baseWorkflowMap * @param modeWorkflowMap * @param baseWorkflowName + * @param baseWorkflowCataCode * @param formModeId */ - private HashSet updateWorkflow(BaseBean bb, Set updateSet, Map> baseWorkflowMap, Map> modeWorkflowMap, Map baseWorkflowName, String formModeId) { + private HashSet updateWorkflow(BaseBean bb, Set updateSet, Map> baseWorkflowMap, Map> modeWorkflowMap, Map baseWorkflowName, Map baseWorkflowCataCode, String formModeId) { bb.writeLog("updateWorkflow-----start"); HashSet needUpdateSet = new HashSet<>(); String staffIdField = PropBean.getUfPropValue("staffIdFieldByCus"); @@ -280,6 +281,7 @@ public class WorkflowUserCronJob extends BaseCronJob { String workflowName = baseWorkflowName.get(workflowId); Set baseUsers = baseWorkflowMap.get(workflowId); Set modeUsers = modeWorkflowMap.get(workflowId); + logger.info(workflowName+baseUsers+":"+modeUsers); //如果差集集为0,则跳过 if (baseUsers.containsAll(modeUsers) && baseUsers.size() == modeUsers.size()) { continue; @@ -292,7 +294,7 @@ public class WorkflowUserCronJob extends BaseCronJob { HashSet diffUsers = new HashSet<>(baseUsers); diffUsers.removeAll(modeUsers); if (diffUsers.size() != 0) { - String addSql = "INSERT INTO uf_workflow_auth (userselect,effective,formmodeid,modedatacreatedate,modedatacreatetime,workflowselect,workflowname,staffid) values (?,?,?,?,?,?,?,?)"; + String addSql = "INSERT INTO uf_workflow_auth (userselect,effective,formmodeid,modedatacreatedate,modedatacreatetime,workflowselect,workflowname,staffid,catacode) values (?,?,?,?,?,?,?,?,?)"; for (String addUserId : diffUsers) { String workCodeQuery = "SELECT " + staffIdField + " as staffId FROM cus_fielddata WHERE id=? and SCOPEID=-1"; rs2.executeQuery(workCodeQuery, addUserId); @@ -309,6 +311,7 @@ public class WorkflowUserCronJob extends BaseCronJob { list.add(workflowId); list.add(workflowName); list.add(staffId); + list.add(baseWorkflowCataCode.get(workflowId)); addLists.add(list); } boolean b2 = rs.executeBatchSql(addSql, addLists);