From f6f8bb8d5dfc7f663bdce8a0fbf5062a030de2f6 Mon Sep 17 00:00:00 2001
From: ytfl <ytfl@qq.com>
Date: 星期六, 14 六月 2025 20:07:12 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
index 63c203f..456e2b5 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -6,11 +6,14 @@
 import com.core.common.R;
 import com.zy.asrs.entity.FrozenParam;
 import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.Mat;
 import com.zy.asrs.entity.result.LocDetlAll;
 import com.zy.asrs.entity.result.LocDetlDTO;
 import com.zy.asrs.entity.result.StockVo;
 import com.zy.asrs.mapper.LocDetlMapper;
 import com.zy.asrs.service.LocDetlService;
+import com.zy.asrs.service.MatService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -20,6 +23,9 @@
 
 @Service("locDetlService")
 public class LocDetlServiceImpl extends ServiceImpl<LocDetlMapper, LocDetl> implements LocDetlService {
+
+    @Autowired
+    private MatService matService;
 
     @Override
     public Page<LocDetl> getPage(Page<LocDetl> page) {
@@ -58,7 +64,26 @@
         if (anfme <= 0) {
             return this.baseMapper.deleteItem(locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
         } else {
-            return baseMapper.updateAnfme(anfme, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
+            boolean result = baseMapper.updateAnfme(anfme, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
+            if (!result) {
+                return false;
+            }
+
+            //鏇存柊杈呮枡
+            Mat mat = matService.selectByMatnr(matnr);
+            if (mat == null) {
+                return false;
+            }
+
+            //杞崲鍏崇郴
+            String origin = mat.getOrigin();
+            if (Cools.isEmpty(origin)) {
+                return true;
+            }
+            String[] split = origin.split("/");
+            //杈呭崟浣�
+            Double weight = (anfme / Double.parseDouble(split[1])) / Double.parseDouble(split[0]);
+            return this.baseMapper.updateWeight(weight, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
         }
     }
 
@@ -111,6 +136,13 @@
         return this.baseMapper.queryStock(matnr, batch, orderNo, locNos);
     }
 
+
+
+    @Override
+    public List<LocDetl> queryStockAll(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
+        return this.baseMapper.queryStockAll(orderNo,locNos, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+    }
+
     @Override
     public Double queryStockAnfme(String matnr, String batch) {
         return this.baseMapper.queryStockAnfme(matnr, batch);

--
Gitblit v1.9.1