From a8378db2feef3b08edc0a6594bec187051d3b754 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 24 十二月 2025 13:32:33 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override

---
 north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialStoreService.java |   74 ++++++++++++++++++++++++++++++------
 1 files changed, 61 insertions(+), 13 deletions(-)

diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialStoreService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialStoreService.java
index b9b3b4e..701a4e0 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialStoreService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialStoreService.java
@@ -2,10 +2,12 @@
 
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.example.erp.entity.mm.MaterialStore;
+import com.example.erp.entity.userInfo.Log;
 import com.example.erp.entity.userInfo.SysError;
 import com.example.erp.mapper.mm.BasicWarehouseTypeMapper;
 import com.example.erp.mapper.mm.MaterialInventoryMapper;
 import com.example.erp.mapper.mm.MaterialStoreMapper;
+import com.example.erp.service.userInfo.LogService;
 import com.example.erp.service.userInfo.SysErrorService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -27,9 +29,11 @@
     BasicWarehouseTypeMapper basicWarehouseTypeMapper;
     @Autowired
     SysErrorService sysErrorService;
+    @Autowired
+    LogService logService;
 
-    public Boolean saveMaterialStore(Map<String,Object> object) {
-        boolean saveState = true;
+    public String saveMaterialStore(Map<String,Object> object) {
+        String saveState = "true";
         //璁剧疆鍥炴粴鐐�
         Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
         try {
@@ -54,16 +58,31 @@
             if (object.get("height") != null) {
                 height = Double.parseDouble(object.get("height").toString());
             }
+
+            Log log = new Log();
+            log.setOperatorId(object.get("userId").toString());
+            log.setOperator(object.get("userName").toString());
+            log.setContent(object.toString());
+
             DecimalFormat decimalFormat = new DecimalFormat("#0.00");
-            singlePieceArea= Double.parseDouble(decimalFormat.format(width * height / 100000));
-            if(Long.parseLong(id)>0){
-                materialStoreMapper.updateMaterialStore(type,json, Long.valueOf(id));
-                if (Objects.equals(type, "鍘熺墖")){
-                    materialInventoryMapper.updateMaterialInventoryArea(Long.valueOf(id),singlePieceArea);
+            singlePieceArea= Double.parseDouble(decimalFormat.format(width * height / 1000000));
+            Integer jsonCount=materialStoreMapper.selectMaterialStoreJson(json);
+            if(jsonCount==0){
+                if(Long.parseLong(id)>0){
+                    materialStoreMapper.updateMaterialStore(type,json, Long.valueOf(id));
+                    if (Objects.equals(type, "鍘熺墖")){
+                        materialInventoryMapper.updateMaterialInventoryArea(Long.valueOf(id),singlePieceArea);
+                    }
+                    log.setFunction("saveMaterialStore淇敼");
+                }else{
+                    materialStoreMapper.insertMaterialStore(type,json);
+                    log.setFunction("saveMaterialStore鏂板");
                 }
             }else{
-                materialStoreMapper.insertMaterialStore(type,json);
+                saveState = "false1";
             }
+            logService.saveLog(log);
+
         } catch (Exception e) {
             TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
             //灏嗗紓甯镐紶鍏ユ暟鎹簱
@@ -71,7 +90,7 @@
             sysError.setError(e+Arrays.toString(e.getStackTrace()));
             sysError.setFunc("saveMaterialStore");
             sysErrorService.insert(sysError);
-            saveState = false;
+            saveState = "false";
 
         }
         return saveState;
@@ -87,8 +106,25 @@
         return map;
     }
 
-    public Boolean deleteMaterialStore(Map<String,Object> object) {
-        boolean saveState = true;
+    public Map<String, Object> getSelectProductBOM(Integer pageNum, Integer pageSize, MaterialStore materialStore) {
+        Integer offset = (pageNum - 1) * pageSize;
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("data", materialStoreMapper.getSelectProductBOM(offset, pageSize, materialStore));
+        map.put("total", materialStoreMapper.getSelectMaterialStorePageTotal(offset, pageSize, materialStore));
+        return map;
+    }
+
+    public Map<String, Object> getSelectMaterialStores(MaterialStore materialStore) {
+
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("data", materialStoreMapper.getSelectMaterialStores(materialStore));
+        return map;
+    }
+
+    public String deleteMaterialStore(Map<String,Object> object) {
+        String saveState = "true";
         //璁剧疆鍥炴粴鐐�
         Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
         try {
@@ -97,8 +133,20 @@
                 id = object.get("id").toString();
             }
             if(id!=null){
-                materialStoreMapper.deleteMaterialStore(Long.valueOf(id));
+                Integer materialCount=materialStoreMapper.selectMaterialStore(Long.valueOf(id));
+                if(materialCount==0){
+                    materialStoreMapper.deleteMaterialStore(Long.valueOf(id));
+                }else{
+                    saveState="false1";
+                }
+
             }
+            Log log = new Log();
+            log.setOperatorId(object.get("userId").toString());
+            log.setOperator(object.get("userName").toString());
+            log.setContent(object.toString());
+            log.setFunction("deleteMaterialStore鍒犻櫎锛�"+id);
+            logService.saveLog(log);
 
 
 
@@ -109,7 +157,7 @@
             sysError.setError(e+Arrays.toString(e.getStackTrace()));
             sysError.setFunc("deleteMaterialStore");
             sysErrorService.insert(sysError);
-            saveState = false;
+            saveState = "false";
 
         }
         return saveState;

--
Gitblit v1.8.0