From 2b3519929a06019633e04ee9abb0c6ef8bba358f Mon Sep 17 00:00:00 2001
From: zhangchao <zc857179121@qq.com>
Date: 星期三, 23 十月 2024 11:06:47 +0800
Subject: [PATCH] 测试环境暂时注释

---
 src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java |  116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 115 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java b/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java
index 872288f..801e139 100644
--- a/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java
@@ -1,18 +1,132 @@
 package com.zy.asrs.task;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.core.common.R;
+import com.zy.asrs.entity.AgvBasDevp;
+import com.zy.asrs.entity.WrkMastExecute;
+import com.zy.asrs.service.AgvBasDevpService;
+import com.zy.asrs.service.WrkMastExecuteService;
+import com.zy.asrs.task.handler.AutoMoveTwoAndThreeGoOneHandler;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
 
 // 鑷姩绉诲簱
 @Slf4j
 @Component
 public class AutoMoveTwoAndThreeGoOneScheduler {
 
+    @Autowired
+    private WrkMastExecuteService wrkMastExecuteService;
+    @Autowired
+    private AutoMoveTwoAndThreeGoOneHandler autoMoveTwoAndThreeGoOneHandler;
+    @Autowired
+    private AgvBasDevpService agvBasDevpService;
+
     /**
-     * 2銆�3妤艰浆绉诲埌1妤间换鍔℃墽琛�
+     * 鎵цagv_wrk_mast_execute浠诲姟
      */
 //    @Scheduled(cron = "0/2 * * * * ? ")
     private void autoMove(){
+        List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectList(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("wrk_sts",0L));
+        for (WrkMastExecute wrkMastExecute:wrkMastExecuteList){
+            try{
+                if (true){
+                    autoMoveTwoAndThreeGoOneHandler.start(wrkMastExecute);
+                }
+            }catch (Exception e){
+                log.error("鎵цagv_wrk_mast_execute浠诲姟寮傚父===銆嬪紓甯稿師鍥狅細"+e.getMessage());
+            }
+        }
+    }
 
+    /**
+     * 涓嬩竴姝gv_wrk_mast_execute浠诲姟
+     */
+//    @Scheduled(cron = "0/2 * * * * ? ")
+    private void autoMove2(){
+        List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectList(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("wrk_sts",3L));
+        for (WrkMastExecute wrkMastExecute:wrkMastExecuteList){
+            Date now = new Date();
+            try{
+                if (wrkMastExecute.getStatus()==2 && wrkMastExecute.getNowPosition()==1){
+                    AgvBasDevp agvBasDevp = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("dev_no", wrkMastExecute.getRoute()[1]));
+                    if (Cools.isEmpty(agvBasDevp) || !agvBasDevp.getLocSts().equals("F")){
+                        continue;
+                    }
+                    //鍒ゆ柇鐢垫蹇欎笉蹇�
+                    int count = wrkMastExecuteService.selectCount(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("status", 2));
+                    if(count<3){
+                        wrkMastExecute.setStatus(3);
+                        wrkMastExecute.setWrkSts(0L);
+                        wrkMastExecute.setModiTime(now);
+                        wrkMastExecute.setEndPosition(4);
+                        wrkMastExecuteService.updateById(wrkMastExecute);
+                        updateAgvBasDevp(agvBasDevp,"R",agvBasDevp.getLocType2(),agvBasDevp.getBarcode());
+                    }
+                }
+            }catch (Exception e){
+                log.error("鎵цagv_wrk_mast_execute浠诲姟寮傚父===銆嬪紓甯稿師鍥狅細"+e.getMessage());
+            }
+        }
+    }
+
+    /**
+     * 涓嬩竴姝gv_wrk_mast_execute浠诲姟
+     */
+//    @Scheduled(cron = "0/2 * * * * ? ")
+    private void autoMove3(){
+        List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectList(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("wrk_sts",2L));
+        for (WrkMastExecute wrkMastExecute:wrkMastExecuteList){
+            Date now = new Date();
+            try{
+                if (wrkMastExecute.getStatus()==2){
+                    AgvBasDevp agvBasDevp = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("dev_no", wrkMastExecute.getRoute()[wrkMastExecute.getEndPosition()]));
+                    if (Cools.isEmpty(agvBasDevp) || !agvBasDevp.getLocSts().equals("S")){
+                        log.error("绔欑偣鐘舵�乴ocsts鍙傛暟鏈夎锛歭ocSts:"+agvBasDevp.getLocSts$());
+                    }else {
+                        wrkMastExecute.setWrkSts(wrkMastExecute.getWrkStsCode());
+                        wrkMastExecute.setModiTime(now);
+                        wrkMastExecute.setNowPosition(wrkMastExecute.getEndPosition());
+                        wrkMastExecuteService.updateById(wrkMastExecute);
+                        updateAgvBasDevp(agvBasDevp,"F",agvBasDevp.getLocType2(),agvBasDevp.getBarcode());
+                    }
+                }else if (wrkMastExecute.getStatus()==3 || wrkMastExecute.getStatus()==4){
+                    AgvBasDevp agvBasDevp = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("dev_no", wrkMastExecute.getRoute()[wrkMastExecute.getNowPosition()]));
+                    if (Cools.isEmpty(agvBasDevp) || !agvBasDevp.getLocSts().equals("R")){
+                        log.error("绔欑偣鐘舵�乴ocsts鍙傛暟鏈夎锛歭ocSts:"+agvBasDevp.getLocSts$());
+                    }else {
+                        wrkMastExecute.setWrkSts(wrkMastExecute.getWrkStsCode());
+                        wrkMastExecute.setModiTime(now);
+                        wrkMastExecute.setNowPosition(wrkMastExecute.getEndPosition());
+                        wrkMastExecuteService.updateById(wrkMastExecute);
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvBasDevp.getDevNo(),"O","",(short)0);
+                    }
+                }else if (wrkMastExecute.getStatus()==1){
+                    wrkMastExecute.setWrkSts(wrkMastExecute.getWrkStsCode());
+                    wrkMastExecute.setModiTime(now);
+                    wrkMastExecute.setNowPosition(wrkMastExecute.getEndPosition());
+                    wrkMastExecuteService.updateById(wrkMastExecute);
+                }
+            }catch (Exception e){
+                log.error("鎵цagv_wrk_mast_execute浠诲姟寮傚父===銆嬪紓甯稿師鍥狅細"+e.getMessage());
+            }
+        }
+    }
+
+
+
+    private void updateAgvBasDevp(AgvBasDevp agvBasDevp, String locSts, Short continerType, String containerCode){
+        if(!Cools.isEmpty(agvBasDevp)){
+            agvBasDevp.setLocSts(locSts);
+            agvBasDevp.setLocType2(continerType);
+            agvBasDevp.setBarcode(containerCode);
+            agvBasDevpService.updateById(agvBasDevp);
+        }
     }
 }

--
Gitblit v1.9.1