From 6f01b51fc0770fda7787076caf0314be7a7f6656 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 27 六月 2025 10:58:21 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java |   64 +++++++++++++++++++++++++++++--
 1 files changed, 59 insertions(+), 5 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 d6b3ae7..a793146 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -2,20 +2,31 @@
 
 import com.baomidou.mybatisplus.plugins.Page;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.Cools;
+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 com.zy.asrs.utils.MatUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
 @Service("locDetlService")
 public class LocDetlServiceImpl extends ServiceImpl<LocDetlMapper, LocDetl> implements LocDetlService {
+
+    @Autowired
+    private MatService matService;
 
     @Override
     public Page<LocDetl> getPage(Page<LocDetl> page) {
@@ -49,11 +60,19 @@
     }
 
     @Override
-    public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch) {
+    public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch,
+                               String brand,String standby1,String standby2,String standby3,String boxType1,String boxType2,String boxType3) {
         if (anfme <= 0) {
-            return this.baseMapper.deleteItem(locNo, matnr, batch) > 0;
+            return this.baseMapper.deleteItem(locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
         } else {
-            return baseMapper.updateAnfme(anfme, locNo, matnr, batch) > 0;
+            boolean result = baseMapper.updateAnfme(anfme, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
+            if (!result) {
+                return false;
+            }
+
+            //璁$畻杈呭崟浣�
+            Double weight = MatUtils.calcWeight(matnr, anfme);
+            return this.baseMapper.updateWeight(weight, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
         }
     }
 
@@ -106,6 +125,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);
@@ -133,8 +159,8 @@
 
 
     @Override
-    public LocDetl selectItem(String locNo, String matnr, String batch) {
-        return this.baseMapper.selectItem(locNo, matnr, batch);
+    public LocDetl selectItem(String locNo, String matnr, String batch,String brand,String standby1,String standby2,String standby3,String boxType1,String boxType2,String boxType3) {
+        return this.baseMapper.selectItem(locNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
     }
 
     @Override
@@ -162,4 +188,32 @@
         }
         return this.baseMapper.selectLocDetlUnilateralMoveShuttleN(matnr,batch,grade);
     }
+
+    @Override
+    public List<LocDetl> searchByLike(String orderNo, String matnr, String maktx, String specs, String locNo) {
+        if (Cools.isEmpty(orderNo) && Cools.isEmpty(matnr) && Cools.isEmpty(maktx) && Cools.isEmpty(specs) && Cools.isEmpty(locNo)) {
+            return new ArrayList<>();
+        }
+        return this.baseMapper.searchByLike(orderNo, matnr, maktx, specs, locNo);
+    }
+
+    @Override
+    public R frozenInventory(List<FrozenParam> param) {
+
+        for(FrozenParam obj : param) {
+            this.baseMapper.frozenInventory(obj.getLocNo(), obj.getMatnr(), obj.getBatch(), 1);
+        }
+
+        return R.ok("鍐荤粨搴撳瓨瀹屾垚!");
+    }
+
+    @Override
+    public R unfreezeInventory(List<FrozenParam> param) {
+
+        for(FrozenParam obj : param) {
+            this.baseMapper.frozenInventory(obj.getLocNo(), obj.getMatnr(), obj.getBatch(), 0);
+        }
+
+        return R.ok("搴撳瓨瑙e喕瀹屾垚!");
+    }
 }

--
Gitblit v1.9.1