diff --git a/src/main/java/neatlogic/module/process/stephandler/component/TimerProcessComponent.java b/src/main/java/neatlogic/module/process/stephandler/component/TimerProcessComponent.java index 2faa1cf6a6afdeaae4cae5f1d50706d73017f7ea..f4806f4d077197ea8f2e90ab6a2927337771bffc 100644 --- a/src/main/java/neatlogic/module/process/stephandler/component/TimerProcessComponent.java +++ b/src/main/java/neatlogic/module/process/stephandler/component/TimerProcessComponent.java @@ -65,6 +65,9 @@ public class TimerProcessComponent extends ProcessStepHandlerBase { @Resource private ProcessTaskService processTaskService; + @Resource + private SchedulerManager schedulerManager; + private final Logger logger = LoggerFactory.getLogger(TimerProcessComponent.class); @Override @@ -248,7 +251,23 @@ public class TimerProcessComponent extends ProcessStepHandlerBase { @Override protected int myHang(ProcessTaskStepVo currentProcessTaskStepVo) { - return 0; + ProcessTaskStepTimerVo processTaskStepTimerVo = processTaskMapper.getProcessTaskStepTimerByProcessTaskStepId(currentProcessTaskStepVo.getId()); + if (processTaskStepTimerVo != null) { + IJob jobHandler = SchedulerManager.getHandler(ProcessTaskStepTimerCompleteJob.class.getName()); + if (jobHandler == null) { + throw new ScheduleHandlerNotFoundException(ProcessTaskStepTimerCompleteJob.class.getName()); + } + JobObject.Builder jobObjectBuilder = new JobObject.Builder( + currentProcessTaskStepVo.getId().toString(), + jobHandler.getGroupName(), + jobHandler.getClassName(), + TenantContext.get().getTenantUuid() + ); + JobObject jobObject = jobObjectBuilder.build(); + schedulerManager.unloadJob(jobObject); + processTaskMapper.deleteProcessTaskStepTimerByProcessTaskStepId(currentProcessTaskStepVo.getId()); + } + return 1; } @Override diff --git a/src/main/java/neatlogic/module/process/stephandler/utilhandler/TimerProcessUtilHandler.java b/src/main/java/neatlogic/module/process/stephandler/utilhandler/TimerProcessUtilHandler.java index 4a6d7264af1dc4d43f42d20268c8bd076c358ae9..a9d8a08563127b5d6988b3ec15f3b440b9afa3ad 100644 --- a/src/main/java/neatlogic/module/process/stephandler/utilhandler/TimerProcessUtilHandler.java +++ b/src/main/java/neatlogic/module/process/stephandler/utilhandler/TimerProcessUtilHandler.java @@ -62,7 +62,7 @@ public class TimerProcessUtilHandler extends ProcessStepInternalHandlerBase { @Override public void makeupProcessStep(ProcessStepVo processStepVo, JSONObject stepConfigObj) { -/** 组装分配策略 **/ + /** 组装分配策略 **/ JSONObject workerPolicyConfig = stepConfigObj.getJSONObject("workerPolicyConfig"); if (MapUtils.isNotEmpty(workerPolicyConfig)) { JSONArray policyList = workerPolicyConfig.getJSONArray("policyList"); @@ -84,6 +84,11 @@ public class TimerProcessUtilHandler extends ProcessStepInternalHandlerBase { processStepVo.setWorkerPolicyList(workerPolicyList); } } + // 保存表单场景 + String formSceneUuid = stepConfigObj.getString("formSceneUuid"); + if (StringUtils.isNotBlank(formSceneUuid)) { + processStepVo.setFormSceneUuid(formSceneUuid); + } } @Override @@ -133,6 +138,11 @@ public class TimerProcessUtilHandler extends ProcessStepInternalHandlerBase { attributeUuid = ""; } resultObj.put("attributeUuid", attributeUuid); + /** 表单场景 **/ + String formSceneUuid = configObj.getString("formSceneUuid"); + String formSceneName = configObj.getString("formSceneName"); + resultObj.put("formSceneUuid", formSceneUuid == null ? "" : formSceneUuid); + resultObj.put("formSceneName", formSceneName == null ? "" : formSceneName); return resultObj; } }