From df325bcf7aabda3e879fbf86c85b3fd5047cffe0 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期五, 05 十二月 2025 15:34:31 +0800
Subject: [PATCH] #出库单

---
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java |   52 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 46 insertions(+), 6 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..a09d2d6 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -1,7 +1,9 @@
 package com.zy.asrs.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 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 +14,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 +55,27 @@
     }
 
     @Override
-    public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch) {
-        if (anfme <= 0) {
-            return this.baseMapper.deleteItem(locNo, matnr, batch) > 0;
+    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) {
+        LocDetl locDetl = this.selectOne(new EntityWrapper<LocDetl>()
+                .eq(!Cools.isEmpty(locNo),"loc_no", locNo)
+                .eq(!Cools.isEmpty(locNo),"matnr", matnr)
+                .eq(!Cools.isEmpty(locNo),"batch", batch)
+                .eq(!Cools.isEmpty(brand),"brand", brand)
+                .eq(!Cools.isEmpty(standby1),"standby1", standby1)
+                .eq(!Cools.isEmpty(standby2),"standby2", standby2)
+                .eq(!Cools.isEmpty(standby3),"standby3", standby3)
+                .eq(!Cools.isEmpty(boxType1),"box_type1", boxType1)
+                .eq(!Cools.isEmpty(boxType2),"box_type2", boxType2)
+                .eq(!Cools.isEmpty(boxType3),"box_type3", boxType3)
+        );
+        if (Cools.isEmpty(locDetl)) {
+            return false;
+        }
+        if (anfme <= 0 && locDetl.getDiffQty().compareTo(BigDecimal.ZERO) == 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;
         }
     }
 
@@ -108,6 +128,18 @@
         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,List<Long> areaIds) {
+        return this.baseMapper.queryStockAll(orderNo,locNos, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, areaIds);
+    }
+
+    @Override
+    public List<LocDetl> queryStockAllCache(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3,List<Long> areaIds) {
+        return this.baseMapper.queryStockAllCache(orderNo,locNos, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, areaIds);
+    }
+
     @Override
     public Double queryStockAnfme(String matnr, String batch) {
         return this.baseMapper.queryStockAnfme(matnr, batch);
@@ -135,8 +167,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 +198,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