From bb5bb4094dfc9c4a691692d0275cb24bedbc732c Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期三, 18 十月 2023 13:48:23 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/tzskasrs' into tzskasrs

---
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 54 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 a6f231a..9638cdc 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -9,6 +9,7 @@
 import com.zy.asrs.entity.LocMast;
 import com.zy.asrs.entity.result.StockVo;
 import com.zy.asrs.mapper.LocDetlMapper;
+import com.zy.asrs.service.BasDevpService;
 import com.zy.asrs.service.LocDetlService;
 import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.service.StaDescService;
@@ -28,6 +29,8 @@
     private StaDescService staDescService;
     @Autowired
     private LocMastService locMastService;
+    @Autowired
+    private BasDevpService basDevpService;
 
     @Override
     public Page<LocDetl> getStockOut(Page<LocDetl> page) {
@@ -123,8 +126,49 @@
                 int ioType = anfme > issued ? 103 : 101;
                 anfme = anfme > issued ? issued : anfme;
                 LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderNo, anfme);
-                List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locDetl.getLocNo(), ioType);
-                locDto.setStaNos(staNos);
+                //List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locDetl.getLocNo(), ioType);
+                List<Integer> outSite = basDevpService.getAvailableOutSite(101);
+
+                locDto.setStaNos(outSite);
+                locDto.setCsocode(csocode);
+                locDto.setIsoseq(isoseq);
+                locDto.setContainerCode(locDetl.getSuppCode());
+                locDtoList.add(locDto);
+                // 鍓╀綑寰呭嚭鏁伴噺閫掑噺
+                issued = issued - locDetl.getAnfme();
+            }
+        }
+        return issued;
+    }
+
+    //琛ヨ揣鍑哄簱
+    public double queryStockAndSetLocDto1(String matnr, String batch, String orderNo, List<LocDto> locDtoList, double issued, String csocode, String isoseq) {
+        Wrapper<LocDetl> wrapper = new EntityWrapper<LocDetl>().eq("matnr", matnr).orderBy("modi_time");
+        wapperSetCondition(wrapper,"batch",batch);
+        wapperSetCondition(wrapper,"three_code",csocode);
+        wapperSetCondition(wrapper,"dead_time",isoseq);
+//        if(Cools.isEmpty(batch)){
+//            wrapper.isNull("batch");
+//        }else {
+//            wrapper.eq("batch",batch);
+//        }
+
+        List<LocDetl> locDetlList = this.selectList(wrapper);
+        for (LocDetl locDetl : locDetlList) {
+            //鍒ゆ柇褰撳墠搴撲綅璐х墿鏄惁F鍦ㄥ簱
+            LocMast locMast = locMastService.selectById(locDetl.getLocNo());
+            if(!"F".equals(locMast.getLocSts())){
+                continue;
+            }
+            if (issued > 0) {
+                double anfme = locDetl.getAnfme();
+                int ioType = anfme > issued ? 103 : 101;
+                //anfme = anfme > issued ? issued : anfme;
+                LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderNo, anfme);
+                //List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locDetl.getLocNo(), ioType);
+                List<Integer> outSite = basDevpService.getAvailableOutSite(101);
+
+                locDto.setStaNos(outSite);
                 locDto.setCsocode(csocode);
                 locDto.setIsoseq(isoseq);
                 locDto.setContainerCode(locDetl.getSuppCode());
@@ -163,8 +207,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 suppCode) {
+        return this.baseMapper.selectItem(locNo, matnr, batch,suppCode);
     }
 
     @Override
@@ -181,13 +225,18 @@
     }
 
     @Override
+    public List<String> selectLocNo(String matnr) {
+        return this.baseMapper.selectLocNo(matnr);
+    }
+
+    @Override
     public int updateStockFreeze(String matnr, String locNo, Integer stockFreeze) {
         return this.baseMapper.updateStockFreeze(matnr, locNo, stockFreeze);
     }
 
     private void wapperSetCondition(Wrapper wrapper,String column, String condition){
         if(Cools.isEmpty(condition)){
-            wrapper.isNull(column);
+            wrapper.andNew().eq(column,"").or().isNull(column);
         }else {
             wrapper.eq(column,condition);
         }

--
Gitblit v1.9.1