diff --git a/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandler.java b/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandler.java index 48a98c6e4b1576a84e0ff1c45f3a465a34f90d0a..b13870528ed762d24cd13f781d5cc9f425ef0bbc 100644 --- a/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandler.java +++ b/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandler.java @@ -239,10 +239,11 @@ public interface IProcessStepHandler { * 保存工单草稿,将会创建一个工单,工单状态为草稿状态 * * @param currentProcessTaskStepVo 步骤信息 + * @param newProcessTaskId 第一次暂存时可以传递一个值,作为工单id * @return 1代表成功 */ @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED) - int saveDraft(ProcessTaskStepVo currentProcessTaskStepVo); + int saveDraft(ProcessTaskStepVo currentProcessTaskStepVo, Long newProcessTaskId); /** * 开始流程,将会创建一个作业 @@ -304,7 +305,7 @@ public interface IProcessStepHandler { String getMinorName(); /** - * 正向输入路径数量 + * 正向输入路径数量(该字段前端已经不用了) * -1代表不限制 * @return */ @@ -312,7 +313,7 @@ public interface IProcessStepHandler { return -1; } /** - * 正向输出路径数量 + * 正向输出路径数量(该字段前端已经不用了) * -1代表不限制 * @return */ @@ -320,7 +321,7 @@ public interface IProcessStepHandler { return -1; } /** - * 回退输入路径数量 + * 回退输入路径数量(该字段前端已经不用了) * -1代表不限制 * @return */ @@ -328,7 +329,7 @@ public interface IProcessStepHandler { return -1; } /** - * 回退输出路径数量 + * 回退输出路径数量(该字段前端已经不用了) * -1代表不限制 * @return */ @@ -337,7 +338,7 @@ public interface IProcessStepHandler { } /** - * 是否隐藏 + * 是否隐藏组件,组件隐藏后,编辑流程图时不能新增该组件,对于旧流程图中已存在的该组件可以继续修改设置,上报工单可以正常处理。 * @return */ default boolean isHidden() { diff --git a/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandlerUtil.java b/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandlerUtil.java index b51636736ff20a35368ff85ab89e7a09265d65c8..c69d843e80313681d1b283ef3d4df974c5bc0369 100644 --- a/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandlerUtil.java +++ b/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepHandlerUtil.java @@ -166,6 +166,10 @@ public interface IProcessStepHandlerUtil { */ void saveProcessTaskOperationContent(ProcessTaskVo currentProcessTaskVo, ProcessTaskOperationType action); + /** + * 流转操作时检查回复信息是否必填 + * @param currentProcessTaskStepVo + */ void checkContentIsRequired(ProcessTaskStepVo currentProcessTaskStepVo); /** @@ -187,11 +191,8 @@ public interface IProcessStepHandlerUtil { void saveFocusUserList(ProcessTaskStepVo currentProcessTaskStepVo); /** - * @Description: 保存表单属性值 - * @Author: linbq - * @Date: 2021/1/27 11:42 - * @Params:[currentProcessTaskStepVo] - * @Returns:void - **/ + * 保存表单属性值 + * @param currentProcessTaskStepVo 当前步骤信息 + */ void saveForm(ProcessTaskStepVo currentProcessTaskStepVo); } diff --git a/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepInternalHandler.java b/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepInternalHandler.java index 0f85c8333f90a36a118f9b4731e35e4d22ddc228..2741d30d6768103c3ba599386aefb3179b48673e 100644 --- a/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepInternalHandler.java +++ b/src/main/java/neatlogic/framework/process/stephandler/core/IProcessStepInternalHandler.java @@ -28,14 +28,14 @@ public interface IProcessStepInternalHandler { * @param @return * @return Object * @Time: 2020年7月27日 - * @Description: 处理器特有的步骤信息(作为开始节点获取开始节点信息) + * @Description: 该步骤特有的步骤信息(当该步骤是开始节点时调用该方法) */ public Object getHandlerStepInfo(ProcessTaskStepVo currentProcessTaskStepVo); /** * * @Time: 2020年8月12日 - * @Description: 处理器特有的步骤初始化信息 (作为当前处理节点获取开始节点信息) + * @Description: 该步骤特有的步骤初始化信息 (当该步骤不是开始节点时调用该方法) * @param @return * @return Object */ @@ -44,7 +44,7 @@ public interface IProcessStepInternalHandler { /** * @Author: chenqiwei * @Time: Feb 10, 2020 - * @Description: 组装步骤节点信息 + * @Description: 组装步骤节点信息,将步骤stepConfig配置信息中的字段值写入到ProcessStepVo对象对应属性中 * @param @param * processStepVo * @param @param @@ -65,7 +65,7 @@ public interface IProcessStepInternalHandler { /** * * @Time: 2020年6月30日 - * @Description: 构造节点管理配置数据 + * @Description: 构造节点管理配置数据,初始化节点管理中各个节点的全局配置信息,设置默认值,校正节点的全局配置数据,对配置数据中没用的字段删除,对缺失的字段用默认值补充。 * @param configObj * @return JSONObject */ @@ -77,7 +77,7 @@ public interface IProcessStepInternalHandler { } /** - * 校正流程步骤配置数据,对配置数据中没用的字段删除,对缺失的字段用默认值补全。 + * 初始化流程步骤的默认配置信息,校正流程步骤配置数据,对配置数据中没用的字段删除,对缺失的字段用默认值补充。 * @param configObj 配置数据 * @return */ @@ -104,7 +104,7 @@ public interface IProcessStepInternalHandler { public Map getCustomButtonMapByConfigHashAndHandler(String configHash, String handler); /** - * @Description: 根据步骤configHash和handler、status获取自定义按钮文案 + * @Description: 根据步骤configHash和handler、status获取状态自定义按钮文案 * @Author: linbq * @Date: 2020/9/15 12:17 * @Params:[configHash, handler, status] @@ -151,11 +151,16 @@ public interface IProcessStepInternalHandler { */ String getFormSceneUuidByConfigHash(String configHash); + /** + * 向processtask_step_in_operation表中插入步骤正在操作记录,等到该步骤操作完成时会删除这条记录 + * @param processTaskStepInOperationVo + * @return + */ @Transactional(propagation = Propagation.NOT_SUPPORTED) int insertProcessTaskStepInOperation(ProcessTaskStepInOperationVo processTaskStepInOperationVo); /** - * 获取组件步骤中的附件id列表 + * 获取该步骤中的附件id列表 * @param currentProcessTaskStepVo * @return */ diff --git a/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java b/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java index f52db789899772794db4d861d10926d718e18d57..9843eb0b0b448362aaaf21661a3061e7b240defe 100644 --- a/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java +++ b/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java @@ -1755,12 +1755,15 @@ public abstract class ProcessStepHandlerBase implements IProcessStepHandler { protected abstract int myBack(ProcessTaskStepVo currentProcessTaskStepVo) throws ProcessTaskException; @Override - public final int saveDraft(ProcessTaskStepVo currentProcessTaskStepVo) { + public final int saveDraft(ProcessTaskStepVo currentProcessTaskStepVo, Long newProcessTaskId) { JSONObject paramObj = currentProcessTaskStepVo.getParamObj(); Long processTaskId = currentProcessTaskStepVo.getProcessTaskId(); ProcessTaskVo processTaskVo; if (processTaskId == null) {// 首次保存 processTaskVo = new ProcessTaskVo(); + if (newProcessTaskId != null) { + processTaskVo.setId(newProcessTaskId); + } processTaskVo.setTitle(paramObj.getString("title")); processTaskVo.setOwner(paramObj.getString("owner")); processTaskVo.setChannelUuid(paramObj.getString("channelUuid"));