diff --git a/src/weaver/interfaces/dito/job/WorkflowSyncCornJob.java b/src/weaver/interfaces/dito/job/WorkflowSyncCornJob.java index 7ce4c592..de2991b8 100644 --- a/src/weaver/interfaces/dito/job/WorkflowSyncCornJob.java +++ b/src/weaver/interfaces/dito/job/WorkflowSyncCornJob.java @@ -25,6 +25,7 @@ import static com.engine.dito.ssologin.constant.DitoConstant.*; public class WorkflowSyncCornJob extends BaseCronJob { private static final Log logger = LogFactory.getLog(WorkflowSyncCornJob.class); private String isDeleteAll; + @Override public void execute() { logger.info("WorkflowSyncModeCornJob start"); @@ -66,13 +67,13 @@ public class WorkflowSyncCornJob extends BaseCronJob { } //系统有效流程新增或修改,无法判断流程更改了什么,新增后再更新 - syncWorkflow(ACTION_TYPE_ADD, workflowSyncFormModeId, workflowSet, modeWorkflowSet, workflowInfo,baseCataCode, modeCataCode); + syncWorkflow(ACTION_TYPE_ADD, workflowSyncFormModeId, workflowSet, modeWorkflowSet, workflowInfo, baseCataCode, modeCataCode); syncWorkflow(ACTION_TYPE_UPDATE, workflowSyncFormModeId, workflowSet, modeWorkflowSet, workflowInfo, baseCataCode, modeCataCode); //建模表的差集需要删除 Set deleteSet = new HashSet<>(modeWorkflowSet); deleteSet.removeAll(workflowSet); if (deleteSet.size() != 0) { - syncWorkflow(ACTION_TYPE_DELETE, workflowSyncFormModeId, deleteSet, modeWorkflowSet, modeWorkflowInfo, baseCataCode,modeCataCode); + syncWorkflow(ACTION_TYPE_DELETE, workflowSyncFormModeId, deleteSet, modeWorkflowSet, modeWorkflowInfo, baseCataCode, modeCataCode); } } catch (Exception e) { logger.info("WorkflowSyncModeCornJob:" + e.getMessage()); @@ -94,11 +95,16 @@ public class WorkflowSyncCornJob extends BaseCronJob { recordSet.executeBatchSql(insertSql, insertList); } else if (actionType.equals(ACTION_TYPE_UPDATE) && CollectionUtils.isNotEmpty(updateList)) { String updateSql = "UPDATE uf_sync_workflow set workflowname=? where workflowselect=?"; + String updateUserSql = "UPDATE uf_workflow_auth set workflowname=? where workflowselect=?"; recordSet.executeBatchSql(updateSql, updateList); + recordSet.executeBatchSql(updateUserSql, updateList); } else if (actionType.equals(ACTION_TYPE_DELETE) && CollectionUtils.isNotEmpty(deleteList)) { String deleteSql = "DELETE FROM uf_sync_workflow where workflowselect=?"; + //同时删除人员同步建模表 + String deleteUserSql = "DELETE FROM uf_workflow_auth where workflowselect=?"; for (String deleteID : deleteList) { recordSet.executeUpdate(deleteSql, deleteID); + recordSet.executeUpdate(deleteUserSql, deleteID); } } } diff --git a/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java b/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java index 46dde642..9b86971a 100644 --- a/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java +++ b/src/weaver/interfaces/dito/job/WorkflowUserCronJob.java @@ -212,6 +212,9 @@ public class WorkflowUserCronJob extends BaseCronJob { List lists = new ArrayList<>(); Set userIds = baseWorkflowMap.get(workflowId); String cataCode = baseWorkflowCataCode.get(workflowId); + if (StringUtils.isEmpty(cataCode)) { + continue; + } for (String addUserId : userIds) { String workflowName = baseWorkflowName.get(workflowId); String workCodeQuery = "SELECT " + staffIdField + " as staffId FROM cus_fielddata WHERE id=? and SCOPEID=-1";