From 786c00c997a65ea7b6d0a8db506bac93ef2a4fed Mon Sep 17 00:00:00 2001 From: guoshengxiong <1923636941@qq.com> Date: Fri, 11 Apr 2025 11:21:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/wflow/controller/CustomController.java | 9 +++++++++ .../java/com/wflow/service/CustomListenService.java | 2 +- .../wflow/service/impl/CustomListenServiceImpl.java | 10 ++++++++-- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/wflow/controller/CustomController.java b/src/main/java/com/wflow/controller/CustomController.java index c1bb638..74fa822 100644 --- a/src/main/java/com/wflow/controller/CustomController.java +++ b/src/main/java/com/wflow/controller/CustomController.java @@ -72,6 +72,15 @@ public class CustomController { return R.ok("修改成功"); } + /** + * 更新表单 + */ + @PostMapping("updateFormData") + public Object updateFormData(@RequestBody HashMap param) { + customListenService.updateFormData(MapUtil.getStr(param, "instanceId"), MapUtil.getStr(param, "fieldId"), param.get("val")); + return R.ok("成功"); + } + /** * 复制一个流程 */ diff --git a/src/main/java/com/wflow/service/CustomListenService.java b/src/main/java/com/wflow/service/CustomListenService.java index a4b328a..d737244 100644 --- a/src/main/java/com/wflow/service/CustomListenService.java +++ b/src/main/java/com/wflow/service/CustomListenService.java @@ -11,7 +11,7 @@ public interface CustomListenService { * @param fieldId * @param val */ - void updateFormData(String instanceId, String fieldId, String val); + void updateFormData(String instanceId, String fieldId, Object val); /** * 更新表单时间 diff --git a/src/main/java/com/wflow/service/impl/CustomListenServiceImpl.java b/src/main/java/com/wflow/service/impl/CustomListenServiceImpl.java index a80dcfa..25bab28 100644 --- a/src/main/java/com/wflow/service/impl/CustomListenServiceImpl.java +++ b/src/main/java/com/wflow/service/impl/CustomListenServiceImpl.java @@ -47,11 +47,17 @@ public class CustomListenServiceImpl implements CustomListenService { private OrgRepositoryService orgRepositoryService; @Override - public void updateFormData(String instanceId, String fieldId, String val) { + public void updateFormData(String instanceId, String fieldId, Object val) { WflowFormData data = new WflowFormData(); data.setInstanceId(instanceId); data.setFieldId(fieldId); - data.setFieldValue(val); + String valStr; + if (val instanceof Map || val instanceof Collection) { + valStr = JSON.toJSONString(val); + } else { + valStr = val.toString(); + } + data.setFieldValue(valStr); formDataMapper.update(data, new LambdaQueryWrapper() .eq(WflowFormData::getInstanceId, instanceId) .eq(WflowFormData::getFieldId, fieldId));