From f8c64c4e54cec545eb613d8450932096f15937ef Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 26 三月 2025 09:20:35 +0800 Subject: [PATCH] #修改 物料新增动态字段不能保存问题修复 --- rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java | 4 ++-- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java | 16 +++++++++++++--- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java | 2 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java index 0f7f8ae..6182be3 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java @@ -80,7 +80,7 @@ * @description 鍔ㄦ�佸瓧娈祐alue淇濆瓨 * @time 2025/3/18 15:00 */ - public static void saveFields(Map<String, ?> template, String uuid) { + public static void saveFields(Map<String, ?> template, String uuid) throws Exception{ List<Fields> fields = getFieldsSta(); FieldsItemService fieldsItemService = SpringUtils.getBean(FieldsItemService.class); if (fields.isEmpty()) { @@ -110,7 +110,7 @@ return fieldsService.list(new LambdaQueryWrapper<Fields>().eq(Fields::getStatus, 1).eq(Fields::getFlagEnable, 1)); } - public static void updateFieldsValue(Map<String, Object> params) { + public static void updateFieldsValue(Map<String, Object> params) throws Exception{ List<Fields> fields = getFieldsSta(); if (fields.isEmpty()) { return; } Object fieldsIndex = params.get("fieldsIndex"); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java index 234ca81..19837d8 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java @@ -85,7 +85,7 @@ @OperationLog("Update 鐗╂枡淇℃伅琛�") @PostMapping("/matnr/update") @Transactional(rollbackFor = Exception.class) - public R update(@RequestBody Map<String, Object> params) { + public R update(@RequestBody Map<String, Object> params) throws Exception { Matnr matnr = JSONObject.parseObject(JSONObject.toJSONString(params), Matnr.class); if (Objects.isNull(matnr.getCode())) { throw new CoolException("缂栫爜涓嶈兘涓虹┖锛侊紒"); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java index f8d44ba..373d76a 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java @@ -87,7 +87,11 @@ String uuid = CommonUtil.randomUUID16(); matnr.setFieldsIndex(uuid); //淇濆瓨鐗╂枡鎵╁睍灞炴�у�� - FieldsUtils.saveFields(template, uuid); + try { + FieldsUtils.saveFields(template, uuid); + } catch (Exception e) { + throw new RuntimeException(e); + } } matnrs.add(matnr); }); @@ -212,8 +216,14 @@ */ String uuid16 = CommonUtil.randomUUID16(); if (!FieldsUtils.getFieldsSta().isEmpty()) { - FieldsUtils.saveFields(matnr, uuid16); - matnr1.setFieldsIndex(uuid16); + Map<String, ?> extendFields = (Map<String, ?>) matnr.get("extendFields"); + try { + FieldsUtils.saveFields(extendFields, uuid16); + matnr1.setFieldsIndex(uuid16); + } catch (Exception ex) { + log.error(ex.toString()); + throw new CoolException("鍔ㄦ�佸瓧娈典繚瀛樺け璐�"); + } } if (!this.saveOrUpdate(matnr1)) { return R.error("Save Fail"); -- Gitblit v1.9.1