From f42b673fb1ac4ed6fdfde0e8d4a329c3a9e97186 Mon Sep 17 00:00:00 2001
From: ye1023 <12588209+ye1023@user.noreply.gitee.com>
Date: Wed, 29 Apr 2026 17:42:26 +0800
Subject: [PATCH] =?UTF-8?q?yxk-20260429-=E5=A2=9E=E5=8A=A0/saveBpmForm?=
=?UTF-8?q?=E6=8E=A5=E5=8F=A3=EF=BC=8C=E4=BF=9D=E5=AD=98=E4=B8=9A=E5=8A=A1?=
=?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=9A=84=E5=90=8C=E6=97=B6=E6=9B=B4=E6=96=B0?=
=?UTF-8?q?=E6=B5=81=E7=A8=8B=E7=9A=84json=5Fdata?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
jeecg-module-supervision/pom.xml | 4 ++++
.../controller/BgPartymatterController.java | 19 +++++++++++++++
.../dto/BgPartymatterBpmSaveDTO.java | 23 +++++++++++++++++++
pom.xml | 6 +++++
4 files changed, 52 insertions(+)
create mode 100644 jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/dto/BgPartymatterBpmSaveDTO.java
diff --git a/jeecg-module-supervision/pom.xml b/jeecg-module-supervision/pom.xml
index 43da533..75ddea8 100644
--- a/jeecg-module-supervision/pom.xml
+++ b/jeecg-module-supervision/pom.xml
@@ -17,6 +17,10 @@
org.jeecgframework.boot
jeecg-boot-base-core
+
+ org.jeecgframework.boot
+ jeecg-boot-module-bpm-flowable
+
diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/controller/BgPartymatterController.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/controller/BgPartymatterController.java
index 5d6466d..b444ad2 100644
--- a/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/controller/BgPartymatterController.java
+++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/controller/BgPartymatterController.java
@@ -1,5 +1,7 @@
package org.jeecg.modules.demo.bgpartymatter.controller;
+import com.alibaba.fastjson.JSONObject;
+import org.flowable.engine.RuntimeService;
import org.jeecg.common.system.query.QueryGenerator;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.jeecg.common.system.query.QueryRuleEnum;
@@ -16,6 +18,7 @@ import org.springframework.web.servlet.ModelAndView;
import java.util.Arrays;
import java.util.HashMap;
import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.demo.bgpartymatter.dto.BgPartymatterBpmSaveDTO;
import org.jeecg.modules.demo.bgpartymatter.entity.BgPartymatterFeedback;
import org.jeecg.modules.demo.bgpartymatter.entity.BgPartymatter;
import org.jeecg.modules.demo.bgpartymatter.service.IBgPartymatterService;
@@ -55,6 +58,8 @@ public class BgPartymatterController extends JeecgController saveBpmForm(@RequestBody BgPartymatterBpmSaveDTO dto) {
+ if (dto == null || dto.getFormData() == null || oConvertUtils.isEmpty(dto.getFormData().getId())) {
+ return Result.error("表单数据不存在");
+ }
+ if (oConvertUtils.isEmpty(dto.getProcessInstanceId())) {
+ return Result.error("流程实例ID不能为空");
+ }
+ String varField = oConvertUtils.isEmpty(dto.getVarField()) ? "json_data" : dto.getVarField();
+ bgPartymatterService.updateById(dto.getFormData());
+ runtimeService.setVariable(dto.getProcessInstanceId(), varField, JSONObject.toJSONString(dto.getFormData()));
+ return Result.OK("保存成功");
+ }
+
/**
* 通过id删除
* @param id
diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/dto/BgPartymatterBpmSaveDTO.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/dto/BgPartymatterBpmSaveDTO.java
new file mode 100644
index 0000000..6100af2
--- /dev/null
+++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/demo/bgpartymatter/dto/BgPartymatterBpmSaveDTO.java
@@ -0,0 +1,23 @@
+package org.jeecg.modules.demo.bgpartymatter.dto;
+
+import java.io.Serializable;
+
+import org.jeecg.modules.demo.bgpartymatter.entity.BgPartymatter;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+@Data
+@Schema(description = "BgPartymatter BPM form save DTO")
+public class BgPartymatterBpmSaveDTO implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "Process instance id")
+ private String processInstanceId;
+
+ @Schema(description = "Process variable name")
+ private String varField;
+
+ @Schema(description = "BgPartymatter form data")
+ private BgPartymatter formData;
+}
diff --git a/pom.xml b/pom.xml
index 98f720a..890b2a6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -263,6 +263,12 @@
${jeecgProjectVersion}
+
+
+ org.jeecgframework.boot
+ jeecg-boot-module-bpm-flowable
+ ${jeecgProjectVersion}
+
org.jeecgframework.boot