From 569d108ea9b845da1fcb5149f259753a23bb7acb Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Thu, 26 Dec 2024 16:27:47 +0800 Subject: [PATCH 1/2] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20IT=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?-=E6=B5=81=E7=A8=8B=E5=9B=BE=E4=BF=9D=E5=AD=98=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1320124261302272]IT服务-流程图保存逻辑优化 http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1320124261302272 --- .../utilhandler/EventProcessUtilHandler.java | 74 ------------------- 1 file changed, 74 deletions(-) diff --git a/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java b/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java index 167a1b4..f2a5509 100644 --- a/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java +++ b/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java @@ -13,11 +13,7 @@ import neatlogic.framework.notify.dto.InvokeNotifyPolicyConfigVo; import neatlogic.framework.process.operationauth.core.IOperationType; import neatlogic.framework.process.constvalue.ProcessTaskOperationType; import neatlogic.framework.process.constvalue.ProcessTaskStepOperationType; -import neatlogic.framework.process.dto.ProcessStepTaskConfigVo; -import neatlogic.framework.process.dto.ProcessStepVo; -import neatlogic.framework.process.dto.ProcessStepWorkerPolicyVo; import neatlogic.framework.process.dto.ProcessTaskStepVo; -import neatlogic.framework.process.dto.processconfig.ActionConfigActionVo; import neatlogic.framework.process.dto.processconfig.ActionConfigVo; import neatlogic.framework.process.stephandler.core.ProcessStepInternalHandlerBase; import neatlogic.framework.process.util.ProcessConfigUtil; @@ -25,13 +21,9 @@ import neatlogic.module.event.dao.mapper.EventMapper; import neatlogic.module.event.dao.mapper.EventSolutionMapper; import neatlogic.module.event.dao.mapper.EventTypeMapper; import neatlogic.module.event.notify.handler.EventNotifyPolicyHandler; -import org.apache.commons.collections4.CollectionUtils; -import org.apache.commons.collections4.MapUtils; -import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.List; import java.util.Objects; import java.util.stream.Collectors; @@ -81,72 +73,6 @@ public class EventProcessUtilHandler extends ProcessStepInternalHandlerBase { return null; } - @Override - public void makeupProcessStep(ProcessStepVo processStepVo, JSONObject stepConfigObj) { - /** 组装通知策略id **/ - JSONObject notifyPolicyConfig = stepConfigObj.getJSONObject("notifyPolicyConfig"); - InvokeNotifyPolicyConfigVo invokeNotifyPolicyConfigVo = JSONObject.toJavaObject(notifyPolicyConfig, InvokeNotifyPolicyConfigVo.class); - if (invokeNotifyPolicyConfigVo != null) { - processStepVo.setNotifyPolicyConfig(invokeNotifyPolicyConfigVo); - } - - JSONObject actionConfig = stepConfigObj.getJSONObject("actionConfig"); - ActionConfigVo actionConfigVo = JSONObject.toJavaObject(actionConfig, ActionConfigVo.class); - if (actionConfigVo != null) { - List actionList = actionConfigVo.getActionList(); - if (CollectionUtils.isNotEmpty(actionList)) { - List integrationUuidList = new ArrayList<>(); - for (ActionConfigActionVo actionVo : actionList) { - String integrationUuid = actionVo.getIntegrationUuid(); - if (StringUtils.isNotBlank(integrationUuid)) { - integrationUuidList.add(integrationUuid); - } - } - processStepVo.setIntegrationUuidList(integrationUuidList); - } - } - - /** 组装分配策略 **/ - JSONObject workerPolicyConfig = stepConfigObj.getJSONObject("workerPolicyConfig"); - if (MapUtils.isNotEmpty(workerPolicyConfig)) { - JSONArray policyList = workerPolicyConfig.getJSONArray("policyList"); - if (CollectionUtils.isNotEmpty(policyList)) { - List workerPolicyList = new ArrayList<>(); - for (int k = 0; k < policyList.size(); k++) { - JSONObject policyObj = policyList.getJSONObject(k); - if (!"1".equals(policyObj.getString("isChecked"))) { - continue; - } - ProcessStepWorkerPolicyVo processStepWorkerPolicyVo = new ProcessStepWorkerPolicyVo(); - processStepWorkerPolicyVo.setProcessUuid(processStepVo.getProcessUuid()); - processStepWorkerPolicyVo.setProcessStepUuid(processStepVo.getUuid()); - processStepWorkerPolicyVo.setPolicy(policyObj.getString("type")); - processStepWorkerPolicyVo.setSort(k + 1); - processStepWorkerPolicyVo.setConfig(policyObj.getString("config")); - workerPolicyList.add(processStepWorkerPolicyVo); - } - processStepVo.setWorkerPolicyList(workerPolicyList); - } - } - - JSONArray tagList = stepConfigObj.getJSONArray("tagList"); - if (CollectionUtils.isNotEmpty(tagList)) { - processStepVo.setTagList(tagList.toJavaList(String.class)); - } - - //保存子任务 - JSONObject taskConfig = stepConfigObj.getJSONObject("taskConfig"); - if(MapUtils.isNotEmpty(taskConfig)){ - ProcessStepTaskConfigVo taskConfigVo = JSONObject.toJavaObject(taskConfig,ProcessStepTaskConfigVo.class); - processStepVo.setTaskConfigVo(taskConfigVo); - } - // 保存表单场景 - String formSceneUuid = stepConfigObj.getString("formSceneUuid"); - if (StringUtils.isNotBlank(formSceneUuid)) { - processStepVo.setFormSceneUuid(formSceneUuid); - } - } - @Override public void updateProcessTaskStepUserAndWorker(Long processTaskId, Long processTaskStepId) { defaultUpdateProcessTaskStepUserAndWorker(processTaskId, processTaskStepId); -- Gitee From 8e22150df3fa3ddf1ca975551d957d631a24e02d Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Thu, 26 Dec 2024 21:09:45 +0800 Subject: [PATCH 2/2] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20IT=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?-=E6=B5=81=E7=A8=8B=E5=9B=BE=E4=BF=9D=E5=AD=98=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1320124261302272]IT服务-流程图保存逻辑优化 http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1320124261302272 --- .../utilhandler/EventProcessUtilHandler.java | 133 ++---------------- 1 file changed, 9 insertions(+), 124 deletions(-) diff --git a/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java b/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java index f2a5509..35a8d3f 100644 --- a/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java +++ b/src/main/java/neatlogic/module/event/stephandler/utilhandler/EventProcessUtilHandler.java @@ -1,31 +1,22 @@ package neatlogic.module.event.stephandler.utilhandler; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import neatlogic.framework.crossover.CrossoverServiceFactory; import neatlogic.framework.event.constvalue.EventProcessStepHandlerType; import neatlogic.framework.event.dto.EventSolutionVo; import neatlogic.framework.event.dto.EventTypeVo; import neatlogic.framework.event.dto.EventVo; import neatlogic.framework.event.exception.core.EventNotFoundException; -import neatlogic.framework.notify.crossover.INotifyServiceCrossoverService; -import neatlogic.framework.notify.dto.InvokeNotifyPolicyConfigVo; -import neatlogic.framework.process.operationauth.core.IOperationType; import neatlogic.framework.process.constvalue.ProcessTaskOperationType; import neatlogic.framework.process.constvalue.ProcessTaskStepOperationType; import neatlogic.framework.process.dto.ProcessTaskStepVo; -import neatlogic.framework.process.dto.processconfig.ActionConfigVo; +import neatlogic.framework.process.operationauth.core.IOperationType; import neatlogic.framework.process.stephandler.core.ProcessStepInternalHandlerBase; -import neatlogic.framework.process.util.ProcessConfigUtil; import neatlogic.module.event.dao.mapper.EventMapper; import neatlogic.module.event.dao.mapper.EventSolutionMapper; import neatlogic.module.event.dao.mapper.EventTypeMapper; -import neatlogic.module.event.notify.handler.EventNotifyPolicyHandler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; @Service @@ -78,97 +69,18 @@ public class EventProcessUtilHandler extends ProcessStepInternalHandlerBase { defaultUpdateProcessTaskStepUserAndWorker(processTaskId, processTaskStepId); } - @SuppressWarnings("serial") - @Override - public JSONObject makeupConfig(JSONObject configObj) { - if (configObj == null) { - configObj = new JSONObject(); - } - JSONObject resultObj = new JSONObject(); - - /** 授权 **/ - IOperationType[] stepActions = { + public IOperationType[] getStepActions() { + return new IOperationType[]{ ProcessTaskStepOperationType.STEP_VIEW, ProcessTaskStepOperationType.STEP_TRANSFER, ProcessTaskStepOperationType.STEP_PAUSE, ProcessTaskStepOperationType.STEP_RETREAT }; - JSONArray authorityList = configObj.getJSONArray("authorityList"); - JSONArray authorityArray = ProcessConfigUtil.regulateAuthorityList(authorityList, stepActions); - resultObj.put("authorityList", authorityArray); - - /** 按钮映射列表 **/ - IOperationType[] stepButtons = { - ProcessTaskStepOperationType.STEP_COMPLETE, - ProcessTaskStepOperationType.STEP_BACK, - ProcessTaskStepOperationType.STEP_COMMENT, - ProcessTaskOperationType.PROCESSTASK_TRANSFER, - ProcessTaskStepOperationType.STEP_ACCEPT, - ProcessTaskOperationType.PROCESSTASK_ABORT, - ProcessTaskOperationType.PROCESSTASK_RECOVER - }; - - JSONArray customButtonList = configObj.getJSONArray("customButtonList"); - JSONArray customButtonArray = ProcessConfigUtil.regulateCustomButtonList(customButtonList, stepButtons); - resultObj.put("customButtonList", customButtonArray); - - /** 状态映射列表 **/ - JSONArray customStatusList = configObj.getJSONArray("customStatusList"); - JSONArray customStatusArray = ProcessConfigUtil.regulateCustomStatusList(customStatusList); - resultObj.put("customStatusList", customStatusArray); - - /** 可替换文本列表 **/ - resultObj.put("replaceableTextList", ProcessConfigUtil.regulateReplaceableTextList(configObj.getJSONArray("replaceableTextList"))); - - /* 任务 */ - JSONObject taskConfig = configObj.getJSONObject("taskConfig"); - resultObj.put("taskConfig",taskConfig); - return resultObj; } @Override - public JSONObject regulateProcessStepConfig(JSONObject configObj) { - if (configObj == null) { - configObj = new JSONObject(); - } - JSONObject resultObj = new JSONObject(); - - /** 授权 **/ - IOperationType[] stepActions = { - ProcessTaskStepOperationType.STEP_VIEW, - ProcessTaskStepOperationType.STEP_TRANSFER, - ProcessTaskStepOperationType.STEP_PAUSE, - ProcessTaskStepOperationType.STEP_RETREAT - }; - JSONArray authorityList = null; - Integer enableAuthority = configObj.getInteger("enableAuthority"); - if (Objects.equals(enableAuthority, 1)) { - authorityList = configObj.getJSONArray("authorityList"); - } else { - enableAuthority = 0; - } - resultObj.put("enableAuthority", enableAuthority); - JSONArray authorityArray = ProcessConfigUtil.regulateAuthorityList(authorityList, stepActions); - resultObj.put("authorityList", authorityArray); - - /** 通知 **/ - JSONObject notifyPolicyConfig = configObj.getJSONObject("notifyPolicyConfig"); - INotifyServiceCrossoverService notifyServiceCrossoverService = CrossoverServiceFactory.getApi(INotifyServiceCrossoverService.class); - InvokeNotifyPolicyConfigVo invokeNotifyPolicyConfigVo = notifyServiceCrossoverService.regulateNotifyPolicyConfig(notifyPolicyConfig, EventNotifyPolicyHandler.class); - resultObj.put("notifyPolicyConfig", invokeNotifyPolicyConfigVo); - - /** 动作 **/ - JSONObject actionConfig = configObj.getJSONObject("actionConfig"); - ActionConfigVo actionConfigVo = JSONObject.toJavaObject(actionConfig, ActionConfigVo.class); - if (actionConfigVo == null) { - actionConfigVo = new ActionConfigVo(); - } - actionConfigVo.setHandler(EventNotifyPolicyHandler.class.getName()); - resultObj.put("actionConfig", actionConfigVo); - - JSONArray customButtonList = configObj.getJSONArray("customButtonList"); - /** 按钮映射列表 **/ - IOperationType[] stepButtons = { + public IOperationType[] getStepButtons() { + return new IOperationType[]{ ProcessTaskStepOperationType.STEP_COMPLETE, ProcessTaskStepOperationType.STEP_BACK, ProcessTaskStepOperationType.STEP_COMMENT, @@ -178,38 +90,11 @@ public class EventProcessUtilHandler extends ProcessStepInternalHandlerBase { ProcessTaskOperationType.PROCESSTASK_RECOVER, ProcessTaskStepOperationType.STEP_REAPPROVAL }; + } - JSONArray customButtonArray = ProcessConfigUtil.regulateCustomButtonList(customButtonList, stepButtons); - resultObj.put("customButtonList", customButtonArray); - /** 状态映射列表 **/ - JSONArray customStatusList = configObj.getJSONArray("customStatusList"); - JSONArray customStatusArray = ProcessConfigUtil.regulateCustomStatusList(customStatusList); - resultObj.put("customStatusList", customStatusArray); - - /** 可替换文本列表 **/ - resultObj.put("replaceableTextList", ProcessConfigUtil.regulateReplaceableTextList(configObj.getJSONArray("replaceableTextList"))); - - /** 分配处理人 **/ - JSONObject workerPolicyConfig = configObj.getJSONObject("workerPolicyConfig"); - JSONObject workerPolicyObj = ProcessConfigUtil.regulateWorkerPolicyConfig(workerPolicyConfig); - resultObj.put("workerPolicyConfig", workerPolicyObj); - - /* 任务 */ - JSONObject taskConfig = configObj.getJSONObject("taskConfig"); - resultObj.put("taskConfig",taskConfig); - - JSONObject simpleSettings = ProcessConfigUtil.regulateSimpleSettings(configObj); - resultObj.putAll(simpleSettings); - - Integer enableReapproval = configObj.getInteger("enableReapproval"); - enableReapproval = enableReapproval == null ? 0 : enableReapproval; - resultObj.put("enableReapproval", enableReapproval); - /** 表单场景 **/ - String formSceneUuid = configObj.getString("formSceneUuid"); - String formSceneName = configObj.getString("formSceneName"); - resultObj.put("formSceneUuid", formSceneUuid == null ? "" : formSceneUuid); - resultObj.put("formSceneName", formSceneName == null ? "" : formSceneName); - return resultObj; + @Override + public String[] getRegulateKeyList() { + return new String[]{"authorityList", "notifyPolicyConfig", "actionConfig", "customButtonList", "customStatusList", "replaceableTextList", "workerPolicyConfig", "taskConfig", "enableReapproval", "formSceneUuid", "formSceneName", "autoStart", "isNeedUploadFile", "isNeedContent", "isRequired", "commentTemplateId", "tagList"}; } } -- Gitee