From 6fbfdf4c73f9673adb7e2777e83565195568f7a8 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期四, 28 十一月 2024 06:04:16 +0800 Subject: [PATCH] 完善流程(表单回显接口)、项目流程表增加流程实例id字段、流程推进详情接口 --- flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java | 28 +++++++++++++++++++++++++++- 1 files changed, 27 insertions(+), 1 deletions(-) diff --git a/flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java b/flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java index 4bcfac6..bae5779 100644 --- a/flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java +++ b/flowable/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java @@ -82,7 +82,7 @@ private final ISysFormService sysFormService; /** - * 瀹屾垚浠诲姟 + * 瀹屾垚瀹℃牳浠诲姟 * * @param taskVo 璇锋眰瀹炰綋鍙傛暟 */ @@ -103,6 +103,25 @@ taskService.complete(taskVo.getTaskId(), taskVo.getVariables()); } return AjaxResult.success(); + } + + /** + * 瀹屾垚琛ㄥ崟鎻愪氦浠诲姟/鏅�氫换鍔� + * + * @param taskId 浠诲姟id + * @param variables 琛ㄥ崟鏁版嵁 + * @return + */ + @Override + public AjaxResult completeSubmitForm(String taskId, Map<String, Object> variables) { + Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); + if (Objects.isNull(task)) { + return AjaxResult.error("浠诲姟涓嶅瓨鍦�"); + } +// variables.put(taskId + "formJson", variables.get("formJson")); + taskService.addComment(taskId, task.getProcessInstanceId(), FlowComment.SUBMIT.getType(), "瀹屾垚鎻愪氦"); + taskService.complete(taskId, variables); + return AjaxResult.success("鎻愪氦鎴愬姛"); } /** @@ -1114,7 +1133,13 @@ } else { parameters = taskService.getVariables(taskId); } + JSONObject oldVariables = JSONObject.parseObject(JSON.toJSONString(parameters.get("formJson"))); + if (Objects.isNull(oldVariables)) { + // 濡傛灉鏄┖鐨勶紝鐩存帴浣跨敤涓昏〃鍗� + String deploymentId = runtimeService.createProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult().getDeploymentId(); + return this.flowFormData(deploymentId); + } List<JSONObject> oldFields = JSON.parseObject(JSON.toJSONString(oldVariables.get("widgetList")), new TypeReference<List<JSONObject>>() { }); // 璁剧疆宸插~鍐欑殑琛ㄥ崟涓虹鐢ㄧ姸鎬� @@ -1215,6 +1240,7 @@ return AjaxResult.success(flowTask); } + /** * 灏哋bject绫诲瀷鐨勬暟鎹浆鍖栨垚Map<String,Object> * -- Gitblit v1.8.0