From 04107fffc1081a5484586d791b4a19bf68a3c319 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=A0=8B?= Date: Fri, 6 Jan 2023 15:03:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E7=A8=8B=E6=8E=A8=E9=80=81=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../interfaces/dito/job/WorkflowSyncCornJob.java | 10 ++++++++-- .../interfaces/dito/job/WorkflowUserCronJob.java | 3 +++ 2 files changed, 11 insertions(+), 2 deletions(-) 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";