From 1a8e7f30035b45771d05cd4cc99aae2743576112 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期五, 17 五月 2024 00:16:46 +0800
Subject: [PATCH] # 手动调拨

---
 src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java          |   28 +++++++++++++-
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java    |   13 ++++++
 src/main/java/com/zy/asrs/service/AgvWrkMastService.java         |    2 +
 src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java |   18 +++++++++
 4 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/AgvWrkMastService.java b/src/main/java/com/zy/asrs/service/AgvWrkMastService.java
index d419903..449a8e5 100644
--- a/src/main/java/com/zy/asrs/service/AgvWrkMastService.java
+++ b/src/main/java/com/zy/asrs/service/AgvWrkMastService.java
@@ -28,4 +28,6 @@
 
     public int callCancelTask(int wrkNo);
 
+    public int startAllcationIn(AgvWrkMast agvWrkMast) throws IOException;
+
 }
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 4663e33..865dcb5 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -7,11 +7,14 @@
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.core.common.Cools;
 import com.core.exception.CoolException;
+import com.zy.asrs.entity.AgvBasDevp;
+import com.zy.asrs.entity.AgvLocMast;
 import com.zy.asrs.entity.AgvWrkMast;
 import com.zy.asrs.entity.param.AgvTaskCreateParam;
 import com.zy.asrs.entity.param.AgvTaskParam;
 import com.zy.asrs.mapper.AgvWrkMastMapper;
 import com.zy.asrs.service.*;
+import com.zy.common.service.AgvCommonService;
 import com.zy.common.utils.HttpHandler;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -53,6 +56,10 @@
     ApiLogService apiLogService;
     @Autowired
     AgvBasDevpService agvBasDevpService;
+    @Autowired
+    private AgvCommonService agvCommonService;
+    @Autowired
+    private AgvWrkMastService agvWrkMastService;
 
     public void updateWrkStsByWrkNo(int wrkNo, long wrkSts) {
         AgvWrkMast agvWrkMast = this.selectById(wrkNo);
@@ -82,6 +89,17 @@
         //return containerMoveParam;
     }
 
+    public int startAllcationIn(AgvWrkMast agvWrkMast) throws IOException {
+        AgvBasDevp basDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo());
+        //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
+        AgvLocMast locMast = agvCommonService.getLocNo(basDevp.getLocType1(),basDevp.getFloor());
+        agvWrkMast.setLocNo(locMast.getLocNo());
+        agvWrkMast.setWrkSts(201L);
+        agvWrkMastService.updateById(agvWrkMast);
+        return 0;
+
+    }
+
     //瀹瑰櫒鍏ュ満
     public int containerMoveIn(List<AgvWrkMast> agvWrkMastList) throws IOException {
         //璋冪敤瀹瑰櫒鍏ュ満鏃舵墍闇�瑕佸弬鏁�
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index a33a046..edbe3a4 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -54,7 +54,8 @@
                 .or().eq("io_type",11)
                 .or().eq("io_type",12)
                 .or().eq("io_type",108)
-                .or().eq("io_type",109));
+                .or().eq("io_type",109)
+                .or().eq("io_type",112));
         if(!Cools.isEmpty(agvWrkMastList)){
             agvWrkMastList.stream().forEach(agvWrkMast -> {
                 agvWrkMastHandler.completedPutWayWrk(agvWrkMast);
@@ -111,7 +112,8 @@
                 .or().eq("io_type", 11)
                 .or().eq("io_type", 12)
                 .or().eq("io_type", 109)
-                .or().eq("io_type", 108)).getRecords();
+                .or().eq("io_type", 108)
+                .or().eq("io_type", 112)).getRecords();
 
         if(!Cools.isEmpty(agvWrkMastList)){
             agvWrkMastList.forEach(agvWrkMast -> {
@@ -125,6 +127,28 @@
     }
 
     /*
+    putaway锛氫笂鏋�
+    瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负201.鐢熸垚鍏ュ簱浠诲姟ID 涓�(鍑哄簱绫诲瀷涓� 53.鎷f枡鍐嶅叆搴� || 1.鍏ュ簱 || 10.绌烘澘鍏ュ簱鏍� || 57.鐩樼偣鍐嶅叆搴�)鐨勬暟鎹�
+     */
+    @Scheduled(cron = "0/3 * * * * ? ")
+    public void startAllcationIn(){
+        List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50)
+                ,new EntityWrapper<AgvWrkMast>()
+                        .eq("wrk_sts", 211)
+                        .andNew().eq("io_type", 112)).getRecords();
+
+        if(!Cools.isEmpty(agvWrkMastList)){
+            agvWrkMastList.forEach(agvWrkMast -> {
+                try {
+                    agvWrkMastHandler.startAllcationIn(agvWrkMast);
+                } catch (IOException e) {
+                    log.error(e.getMessage());
+                }
+            });
+        }
+    }
+
+    /*
     carry锛氭惉杩愶紝缁熸寚鍑哄簱銆佺Щ搴撱�佺偣鍒扮偣鎼繍绛�
     瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负21.鐢熸垚鍑哄簱浠诲姟 涓�(鍑哄簱绫诲瀷涓� 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 11.搴撴牸绉绘牻 || 110.绌烘澘鍑哄簱 || 107.鐩樼偣鍑哄簱)鐨勬暟鎹�
      */
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 5c2a65e..903c93b 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -236,6 +236,19 @@
 
     }
 
+    @Transactional
+    @Synchronized
+    public ReturnT<String> startAllcationIn(AgvWrkMast agvWrkMast) throws IOException {
+        
+        //涓嬪彂浠诲姟
+        int startWrkCode = agvWrkMastService.startAllcationIn(agvWrkMast);
+        if(startWrkCode != 0){
+            throw new CoolException("浠诲姟涓嬪彂澶辫触");
+        }
+        return SUCCESS;
+
+    }
+
 //    @Transactional
 //    public ReturnT<String> startCarryWrk(AgvWrkMast agvWrkMast) throws IOException {
 //        //log.info(agvWrkMastList.toString());

--
Gitblit v1.9.1