From e6ed9e8a9f24683e8ea4e9fc2c82b1d4e24bb00a Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 31 十月 2023 09:44:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/tzskasrs' into tzskasrs

---
 src/main/java/com/zy/asrs/controller/ManLocDetlController.java    |   13 +++-
 src/main/webapp/static/js/agvPakStore/stockAdjust.js              |    2 
 src/main/java/com/zy/asrs/service/impl/ManPakOutServiceImpl.java  |   75 +++++++++++++++++++++++++
 src/main/webapp/views/mat/mat.html                                |    2 
 src/main/java/com/zy/asrs/entity/ManPakOut.java                   |    7 ++
 src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java  |    6 +
 src/main/java/com/zy/asrs/controller/MobileController.java        |   20 ------
 src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java  |    4 +
 src/main/java/com/zy/asrs/controller/ManPakOutController.java     |    8 ++
 src/main/java/com/zy/asrs/controller/AgvLocMastController.java    |    2 
 src/main/java/com/zy/asrs/entity/param/LocDetlAdjustParam.java    |    8 ++
 src/main/java/com/zy/asrs/service/ManPakOutService.java           |    6 ++
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java    |    1 
 src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java |   24 ++++----
 14 files changed, 136 insertions(+), 42 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvLocMastController.java b/src/main/java/com/zy/asrs/controller/AgvLocMastController.java
index 58b89f5..f1ff9b3 100644
--- a/src/main/java/com/zy/asrs/controller/AgvLocMastController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvLocMastController.java
@@ -101,7 +101,7 @@
     @ManagerAuth(memo = "鍒濆鍖栧簱浣�")
     public R init(LocMastInitParam param) {
         //娓呯┖鍘熸湁搴撲綅
-        agvLockMastService.clearLoc();
+        //agvLockMastService.clearLoc();
         //鍒濆鍖栦竴妤肩珯鐐�
         //agvLockMastService.initLocFloor1();
         //鍒濆鍖栦笁妤肩珯鐐�
diff --git a/src/main/java/com/zy/asrs/controller/ManLocDetlController.java b/src/main/java/com/zy/asrs/controller/ManLocDetlController.java
index 85bc07c..17fac75 100644
--- a/src/main/java/com/zy/asrs/controller/ManLocDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/ManLocDetlController.java
@@ -93,6 +93,16 @@
         Page<ManLocDetl> all = manLocDetlService.selectAllPage(manLocDetlPage);
         return R.ok().add(all);
     }
+
+    /*
+   骞冲簱绉诲簱
+    */
+    @RequestMapping("/node/move/start")
+    public R nodeMoveStart(@RequestParam String sourceLocNo, @RequestParam String targetLocNo){
+        manLocDetlService.updateLocNo(targetLocNo,sourceLocNo);
+        return R.ok();
+    }
+
     private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){
         for (Map.Entry<String, Object> entry : map.entrySet()){
             String val = String.valueOf(entry.getValue());
@@ -109,8 +119,5 @@
             }
         }
     }
-
-
-
 
 }
diff --git a/src/main/java/com/zy/asrs/controller/ManPakOutController.java b/src/main/java/com/zy/asrs/controller/ManPakOutController.java
index 27b0dca..9e409e5 100644
--- a/src/main/java/com/zy/asrs/controller/ManPakOutController.java
+++ b/src/main/java/com/zy/asrs/controller/ManPakOutController.java
@@ -440,4 +440,12 @@
         response.getOutputStream().close();
         return R.ok();
     }
+
+    /*
+    骞冲簱搴撳尯鎷f枡淇℃伅 鏍规嵁搴撲綅鑾峰彇鎷f枡淇℃伅锛屽苟涓旀牴缁濆簱浣嶅仛鎺掑簭
+     */
+    @RequestMapping("/node/order/pakout")
+    public R nodeOrderPakout(@RequestParam String locType){
+        return R.ok(manPakOutService.pakoutByLocType(locType));
+    }
 }
diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index d23ef8b..1bd9767 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -422,24 +422,4 @@
         return R.ok().add(waitPakins);
     }
 
-    /*
-    骞冲簱绉诲簱
-     */
-    @RequestMapping("/node/move/start")
-    public R nodeMoveStart(@RequestParam String sourceLocNo, @RequestParam String targetLocNo){
-
-
-        return R.ok();
-    }
-
-
-    /*
-    骞冲簱搴撳尯鎷f枡淇℃伅
-     */
-    @RequestMapping("/node/order/pakout")
-    public R nodeOrderPakout(@RequestParam String locType){
-
-
-        return R.ok();
-    }
 }
diff --git a/src/main/java/com/zy/asrs/entity/ManPakOut.java b/src/main/java/com/zy/asrs/entity/ManPakOut.java
index 7afe93d..8a999c0 100644
--- a/src/main/java/com/zy/asrs/entity/ManPakOut.java
+++ b/src/main/java/com/zy/asrs/entity/ManPakOut.java
@@ -276,5 +276,12 @@
         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
     }
 
+    public ManPakOut(){
+
+    }
+
+    public ManPakOut(String locNo){
+        this.setLocNo(locNo);
+    }
 
 }
diff --git a/src/main/java/com/zy/asrs/entity/param/LocDetlAdjustParam.java b/src/main/java/com/zy/asrs/entity/param/LocDetlAdjustParam.java
index a00c9ed..2d3a845 100644
--- a/src/main/java/com/zy/asrs/entity/param/LocDetlAdjustParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/LocDetlAdjustParam.java
@@ -36,12 +36,16 @@
         //閿�鍞鍗曡鍙�
         private String deadTime;
 
-        public LocDetlAdjust(String matnr, String batch, Double count, String threeCode, String deadTime) {
+        //鏂欑鐮�
+        private String suppCode;
+
+        public LocDetlAdjust(String matnr, String batch, Double count, String threeCode, String deadTime, String suppCode) {
             this.matnr = matnr;
             this.batch = batch;
             this.count = count;
             this.threeCode = threeCode;
             this.deadTime = deadTime;
+            this.suppCode = suppCode;
         }
     }
 
@@ -60,7 +64,7 @@
                 }
             }
             if (!exit) {
-                copyList.add(new LocDetlAdjustParam.LocDetlAdjust(adjust.getMatnr(), adjust.getBatch(), adjust.getCount(), adjust.getThreeCode(), adjust.getDeadTime()));
+                copyList.add(new LocDetlAdjustParam.LocDetlAdjust(adjust.getMatnr(), adjust.getBatch(), adjust.getCount(), adjust.getThreeCode(), adjust.getDeadTime(),adjust.getSuppCode()));
             }
         }
         list = copyList;
diff --git a/src/main/java/com/zy/asrs/service/ManPakOutService.java b/src/main/java/com/zy/asrs/service/ManPakOutService.java
index cfbfcc6..3f9570f 100644
--- a/src/main/java/com/zy/asrs/service/ManPakOutService.java
+++ b/src/main/java/com/zy/asrs/service/ManPakOutService.java
@@ -3,9 +3,15 @@
 import com.baomidou.mybatisplus.service.IService;
 import com.zy.asrs.entity.ManPakOut;
 
+import java.util.List;
+
 public interface ManPakOutService extends IService<ManPakOut> {
     void updateAllStatus(String orderNo,int status);
 
     ManPakOut selectByOrderWithName(String orderNo);
 
+    List<ManPakOut> selectByLocType(String locType);
+
+    List<ManPakOut> pakoutByLocType(String locType);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
index c2860f1..0385081 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
@@ -34,19 +34,19 @@
 
     public void initLocFloor3() {
         //3妤� 1-33鎺� 1-14鍒� 8灞� ------>  1-33鎺� 1-17鍒� 8灞�
-        this.insertBatch(getLocMastList(1, 33, 1, 17, 1, 8, 3));
+//        this.insertBatch(getLocMastList(1, 33, 1, 17, 1, 8, 3));
+//
+//        //3妤� 1-27鎺� 15-34鍒� 8灞� ------>  1-26鎺� 18-25鍒� 8灞�
+//        this.insertBatch(getLocMastList(1, 27, 18, 25, 1, 8, 3));
+//
+//        //3妤� 1-25鎺� 35-46鍒� 8灞� ------>  1-25鎺� 26-35鍒� 8灞�
+//        this.insertBatch(getLocMastList(1, 25, 26, 35, 1, 8, 3));
+//
+//        //3妤� 3-25鎺� 47-60鍒� 8灞� ------>  1-23鎺� 36-70鍒� 8灞�
+//        this.insertBatch(getLocMastList(1, 23, 36, 70, 1, 8, 3));
 
-        //3妤� 1-27鎺� 15-34鍒� 8灞� ------>  1-26鎺� 18-25鍒� 8灞�
-        this.insertBatch(getLocMastList(1, 27, 18, 25, 1, 8, 3));
-
-        //3妤� 1-25鎺� 35-46鍒� 8灞� ------>  1-25鎺� 26-35鍒� 8灞�
-        this.insertBatch(getLocMastList(1, 25, 26, 35, 1, 8, 3));
-
-        //3妤� 3-25鎺� 47-60鍒� 8灞� ------>  1-23鎺� 36-70鍒� 8灞�
-        this.insertBatch(getLocMastList(1, 23, 36, 70, 1, 8, 3));
-
-        //3妤� 4-25鎺� 61-70鍒� 8灞�
-        //this.insertBatch(getLocMastList(4, 25, 61, 70, 1, 8, 3));
+        //3妤� 3-23鎺� 71-72鍒� 8灞�
+        this.insertBatch(getLocMastList(3, 23, 71, 72, 1, 8, 3));
 
     }
 
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
index 8f88216..0448530 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -18,6 +18,7 @@
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 绉诲姩绔湇鍔℃牳蹇冪被
@@ -229,7 +230,10 @@
     public List<AgvBasDevp> getAgvBasDevpByFloor(int floor) {
         EntityWrapper<AgvBasDevp> wrapper = new EntityWrapper<>();
         wrapper.eq("floor",floor).eq("cache_shelves","Y").eq("loc_sts","F");
-        return agvBasDevpService.selectList(wrapper);
+        List<AgvBasDevp> agvBasDevpList = agvBasDevpService.selectList(wrapper);
+        return agvBasDevpList.stream().filter(agvBasDevp -> {
+            return !Cools.isEmpty(agvWaitPakinService.selectByContainerCode(agvBasDevp.getBarcode()));
+        }).collect(Collectors.toList());
     }
 
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index 0430850..1faa1fc 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -402,6 +402,7 @@
             locDetl.setAppeTime(now);
             locDetl.setThreeCode(adjust.getThreeCode());
             locDetl.setDeadTime(adjust.getDeadTime());
+            locDetl.setSuppCode(adjust.getSuppCode());
             if (!agvLocDetlService.insert(locDetl)) {
                 throw new CoolException("娣诲姞" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "搴忓垪鐮佸簱瀛樻槑缁嗗け璐�");
             }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index 2cf9450..35730ae 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -162,7 +162,9 @@
             agvTaskParam.setTaskPriority(agvWrkMast.getIoPri().intValue());
 
             //AgvTaskkDescribeParam
-            agvTaskkDescribeParam.setFromLocationCode(agvWrkMast.getSourceLocNo());
+            if(agvWrkMast.getSourceLocNo().contains("C")){
+                agvTaskkDescribeParam.setFromLocationCode(agvWrkMast.getSourceLocNo());
+            }
             agvTaskkDescribeParam.setToLocationCode(agvWrkMast.getLocNo());
             agvTaskkDescribeParam.setContainerCode(agvWrkMast.getBarcode());
             return agvTaskParam;
diff --git a/src/main/java/com/zy/asrs/service/impl/ManPakOutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ManPakOutServiceImpl.java
index d0cfc70..323374f 100644
--- a/src/main/java/com/zy/asrs/service/impl/ManPakOutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ManPakOutServiceImpl.java
@@ -1,10 +1,14 @@
 package com.zy.asrs.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.zy.asrs.entity.ManPakOut;
 import com.zy.asrs.mapper.ManPakOutMapper;
 import com.zy.asrs.service.ManPakOutService;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
 
 @Service("manPakOutService")
 public class ManPakOutServiceImpl extends ServiceImpl<ManPakOutMapper, ManPakOut> implements ManPakOutService {
@@ -18,4 +22,75 @@
     public ManPakOut selectByOrderWithName(String orderNo) {
         return this.baseMapper.selectByOrderWithName(orderNo);
     }
+
+    @Override
+    public List<ManPakOut> selectByLocType(String locType) {
+        return this.selectList(new EntityWrapper<ManPakOut>().like("loc_no",locType).eq("status",1));
+    }
+
+    @Override
+    public List<ManPakOut> pakoutByLocType(String locType) {
+        List<ManPakOut> manPakOuts = this.selectByLocType(locType);
+
+        manPakOuts.sort((m1,m2) -> {
+            //鍙栧簱浣嶇紪鐮佹渶鍚�6浣嶅緱鍒版帓鍒楀眰
+            String locNo1 = m1.getLocNo().substring(m1.getLocNo().length()-6);
+            String locNo2 = m2.getLocNo().substring(m2.getLocNo().length()-6);
+
+            int row1 = Integer.parseInt(locNo1.substring(0, 2));
+            int row2 = Integer.parseInt(locNo2.substring(0, 2));
+            int bay1 = Integer.parseInt(locNo1.substring(2,4));
+            int bay2 = Integer.parseInt(locNo2.substring(2,4));
+
+            //姣忎袱鎺掍负涓�涓捣鐐癸紝鏍规嵁鍒楁潵鐢辫繎鍒拌繙鎺掑簭
+            if((row1 + 1)/2 != (row2+1)/2){
+                return row1 - row2;
+            }else {
+                return bay1 - bay2;
+            }
+        });
+
+        return manPakOuts;
+    }
+
+    public static void main(String[] args) {
+
+        String str = "DT-13C-010203";
+        System.out.println(str.substring(str.length()-6));
+
+        List<ManPakOut> list = new ArrayList<>();
+        list.add(new ManPakOut("DT-C-010403"));
+        list.add(new ManPakOut("DT-C-050203"));
+        list.add(new ManPakOut("DT-C-040503"));
+        list.add(new ManPakOut("DT-C-030203"));
+        list.add(new ManPakOut("DT-C-010503"));
+        list.add(new ManPakOut("DT-C-020103"));
+        list.add(new ManPakOut("DT-C-020203"));
+        list.add(new ManPakOut("DT-C-040103"));
+
+        //Collections.sort(list);
+
+        list.sort((m1,m2) ->{
+
+            //鍙栧簱浣嶇紪鐮佹渶鍚�6浣嶅緱鍒版帓鍒楀眰
+            String locNo1 = m1.getLocNo().substring(m1.getLocNo().length()-6);
+            String locNo2 = m2.getLocNo().substring(m2.getLocNo().length()-6);
+
+            int row1 = Integer.parseInt(locNo1.substring(0, 2));
+            int row2 = Integer.parseInt(locNo2.substring(0, 2));
+            int bay1 = Integer.parseInt(locNo1.substring(2,4));
+            int bay2 = Integer.parseInt(locNo2.substring(2,4));
+
+            if((row1 + 1)/2 != (row2+1)/2){
+                return row1 - row2;
+            }else {
+                return bay1 - bay2;
+            }
+
+        });
+
+        list.forEach(manPakOut -> {
+            System.out.println(manPakOut);
+        });
+    }
 }
diff --git a/src/main/webapp/static/js/agvPakStore/stockAdjust.js b/src/main/webapp/static/js/agvPakStore/stockAdjust.js
index db7ed09..3a1a916 100644
--- a/src/main/webapp/static/js/agvPakStore/stockAdjust.js
+++ b/src/main/webapp/static/js/agvPakStore/stockAdjust.js
@@ -10,7 +10,7 @@
         ,{field: 'batch', align: 'center',title: '搴忓垪鐮�', edit: true, style: 'font-weight:bold'}
         ,{field: 'threeCode', align: 'center',title: '閿�鍞鍗曞彿', edit: true, style: 'font-weight:bold'}
         ,{field: 'deadTime', align: 'center',title: '閿�鍞鍗曡鍙�', edit: true, style: 'font-weight:bold'}
-        ,{field: 'suppCode', align: 'center',title: '鏂欑鐮�', edit: false, style: 'font-weight:bold'}
+        ,{field: 'suppCode', align: 'center',title: '鏂欑鐮�', edit: true, style: 'font-weight:bold'}
     ];
     arrRemove(detlCols, "field", "zpallet");
     arrRemove(detlCols, "field", "anfme");
diff --git a/src/main/webapp/views/mat/mat.html b/src/main/webapp/views/mat/mat.html
index f5fba90..6f2e8ce 100644
--- a/src/main/webapp/views/mat/mat.html
+++ b/src/main/webapp/views/mat/mat.html
@@ -147,7 +147,7 @@
 </script>
 
 <script type="text/html" id="operate">
-    <a class="layui-btn layui-btn-xs btn-edit layui-btn-primary" lay-event="edit">淇敼</a>
+    <a class="layui-btn layui-btn-xs btn-edit layui-btn-primary btn-modify" lay-event="edit" style="display: none">淇敼</a>
     <button class="layui-btn layui-btn-xs btn-print" lay-event="btnPrint">鎵撳嵃</button>
 </script>
 

--
Gitblit v1.9.1