From b176072388747abb438990157bfa305b215b4b90 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期二, 14 四月 2026 21:59:39 +0800
Subject: [PATCH] 我们现在讨论一下系统找库位方案, 如何实现,对现有找库位规则进行整改,数据库也要整改 1、要能方便的填写单伸堆垛机或双伸堆垛机的深浅库位配置 2、根据设备状态分配库位,离线设备不分配 3、库位分配要均衡到每一个设备  4、库位高度需要匹配到对应库位信息,低库位能向上兼容  5、空托盘优先放在locType2库位=1的库位,没有这种库位了,允许放到其他库位 6、给入库站点设置有限去那些堆垛机,其次去那些堆垛机,弄成页面可以配置入库站点 7、在系统配置新增优先放前几列的配置,当入库的货物是高频货物时放在前几列 8、组托中会标识该托盘是高频还是低频,如果是高频则从前往后找库位,如果是低频则从后往前找库位 9、找库位时locMast中whsType字段无用

---
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java |   45 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 40 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 b8f2da8..061aedb 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -2,6 +2,7 @@
 
 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;
@@ -12,6 +13,8 @@
 import com.zy.asrs.service.LocDetlService;
 import org.springframework.stereotype.Service;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -51,11 +54,12 @@
     }
 
     @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;
+            return baseMapper.updateAnfme(anfme, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0;
         }
     }
 
@@ -109,6 +113,29 @@
     }
 
     @Override
+    public List<LocDetl> queryStockMatnr(String matnr) {
+        return this.baseMapper.queryStockMatnr(matnr);
+    }
+
+//    @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 List<LocDetl> queryStockAll(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2) {
+        return this.baseMapper.queryStockAll(orderNo,locNos, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2);
+    }
+
+    @Override
+    public List<LocDetl> queryStockAll7(String orderNo, Set<String> locNos,String matnr,  String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
+        return this.baseMapper.queryStockAll7(orderNo,locNos, matnr,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+    }
+
+    @Override
+    public List<LocDetl> queryStockAll123(String orderNo, Set<String> locNos,String matnr,  String boxType3) {
+        return this.baseMapper.queryStockAll123(orderNo,locNos, matnr,boxType3);
+    }
+    @Override
     public Double queryStockAnfme(String matnr, String batch) {
         return this.baseMapper.queryStockAnfme(matnr, batch);
     }
@@ -135,8 +162,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
@@ -166,6 +193,14 @@
     }
 
     @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) {

--
Gitblit v1.9.1