From 7af92a0e1847a3691e6ddb28fc1f936402d0bb38 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 26 三月 2025 13:28:21 +0800
Subject: [PATCH] 物料扩展字段优化

---
 rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java              |   12 ++++--------
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java |    4 ++--
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java    |    4 ++++
 3 files changed, 10 insertions(+), 10 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 6182be3..ea9f543 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
@@ -118,9 +118,7 @@
             String index = fieldsIndex.toString();
             FieldsItemService fieldsItemService = SpringUtils.getBean(FieldsItemService.class);
             for (Fields field : fields) {
-                Map<String, String> extendFields = (Map<String, String>) params.get("extendFields");
-                if (!Objects.isNull(extendFields)) {
-                    if (!Objects.isNull(extendFields.get(field.getFields()))) {
+                    if (!Objects.isNull(params.get(field.getFields()))) {
                         FieldsItem indexItem = fieldsItemService.getOne(new LambdaQueryWrapper<FieldsItem>()
                                 .eq(FieldsItem::getUuid, index)
                                 .eq(FieldsItem::getFieldsId, field.getId()));
@@ -129,22 +127,20 @@
                             FieldsItem item = new FieldsItem();
                             item.setUuid(index)
                                     .setFieldsId(field.getId())
-                                    .setValue(extendFields.get(field.getFields()).toString());
+                                    .setValue(params.get(field.getFields()).toString());
                             if (!fieldsItemService.save(item)) {
                                 throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒");
                             }
                         } else {
-                            indexItem.setValue(extendFields.get(field.getFields()).toString());
+                            indexItem.setValue(params.get(field.getFields()).toString());
                             if (!fieldsItemService.updateById(indexItem)) {
                                 throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒");
                             }
                         }
                     }
-                }
             }
         } else {
-            String uuid16 = CommonUtil.randomUUID16();
-            saveFields(params, uuid16);
+            saveFields(params, params.get("index").toString());
         }
     }
 }
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 3a49ec1..0fcbe92 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
@@ -108,6 +108,10 @@
             Matnr matnr1 = matnrService.getById(matnr.getId());
             if (!Objects.isNull(matnr1.getFieldsIndex())) {
                 params.put("fieldsIndex", matnr1.getFieldsIndex());
+            } else {
+                String uuid16 = CommonUtil.randomUUID16();
+                params.put("index", uuid16);
+                matnr.setFieldsIndex(uuid16);
             }
             FieldsUtils.updateFieldsValue(params);
         }
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 fd66a2d..bbc13ea 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
@@ -237,9 +237,9 @@
          */
         String uuid16 = CommonUtil.randomUUID16();
         if (!FieldsUtils.getFieldsSta().isEmpty()) {
-            Map<String, ?> extendFields = (Map<String, ?>) matnr.get("extendFields");
+//            Map<String, ?> extendFields = (Map<String, ?>) matnr.get("extendFields");
             try {
-                FieldsUtils.saveFields(extendFields, uuid16);
+                FieldsUtils.saveFields(matnr, uuid16);
                 matnr1.setFieldsIndex(uuid16);
             } catch (Exception ex) {
                 log.error(ex.toString());

--
Gitblit v1.9.1