From 9e27b1b292872bd83b761091554fbd8db72b595e Mon Sep 17 00:00:00 2001
From: yangyang
Date: 星期四, 20 三月 2025 10:47:13 +0800
Subject: [PATCH] #优化 物料扩展字段修改优化

---
 rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 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 abf6c8a..d3cfffb 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
@@ -87,4 +87,37 @@
         FieldsService fieldsService = SpringUtils.getBean(FieldsService.class);
         return fieldsService.list(new LambdaQueryWrapper<Fields>().eq(Fields::getStatus, 1).eq(Fields::getFlagEnable, 1));
     }
+
+    public static void updateFieldsValue(Map<String, Object> params) {
+        List<Fields> fields = getFieldsSta();
+        if (fields.isEmpty()) { return; }
+        Object fieldsIndex = params.get("fieldsIndex");
+        if (!Objects.isNull(fieldsIndex)) {
+            String index = fieldsIndex.toString();
+            FieldsItemService fieldsItemService = SpringUtils.getBean(FieldsItemService.class);
+            for (Fields field : fields) {
+                if (!Objects.isNull(params.get(field.getFields()))) {
+                    FieldsItem indexItem = fieldsItemService.getOne(new LambdaQueryWrapper<FieldsItem>()
+                            .eq(FieldsItem::getUuid, index)
+                            .eq(FieldsItem::getFieldsId, field.getId()));
+                    //濡傛灉瀛愯〃涓虹┖锛屾墽琛屾彃鍏ユ搷浣滐紝鍚﹀垯灏辨墽琛屼慨鏀规搷浣�
+                    if (Objects.isNull(indexItem)) {
+                        FieldsItem item = new FieldsItem();
+                        item.setUuid(index)
+                                .setFieldsId(field.getId())
+                                .setValue(params.get(field.getFields()).toString());
+                        if (fieldsItemService.save(item)) {
+                            throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒");
+                        }
+                    } else {
+                        indexItem.setValue(params.get(field.getFields()).toString());
+                        if (fieldsItemService.updateById(indexItem)) {
+                            throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒");
+                        }
+                    }
+                }
+            }
+
+        }
+    }
 }

--
Gitblit v1.9.1