From 2f80aaf62144f6ea315334335ad46fbe0ab911e8 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 18 十月 2024 14:52:02 +0800
Subject: [PATCH] *
---
 src/main/java/com/zy/asrs/entity/BasCircularShuttle.java          |   14 +++++++-------
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java       |   36 ++++++++++++++++++++++++++++++++----
 src/main/java/com/zy/core/MainProcess.java                        |    3 +++
 src/main/resources/mapper/BasCircularShuttleMapper.xml            |    4 ++--
 src/main/java/com/zy/asrs/utils/SortTheExecutionOfTheCarUtil.java |    2 +-
 5 files changed, 45 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/BasCircularShuttle.java b/src/main/java/com/zy/asrs/entity/BasCircularShuttle.java
index fcfd3be..3f822b0 100644
--- a/src/main/java/com/zy/asrs/entity/BasCircularShuttle.java
+++ b/src/main/java/com/zy/asrs/entity/BasCircularShuttle.java
@@ -23,12 +23,12 @@
     private Long id;
 
     @ApiModelProperty(value= "")
-    @TableField("ste_id")
-    private Integer steId;
+    @TableField("rgv_id")
+    private Integer rgvId;
 
     @ApiModelProperty(value= "")
-    @TableField("ste_no")
-    private Integer steNo;
+    @TableField("rgv_no")
+    private Integer rgvNo;
 
     /**
      * 0:姝e父锛�1锛氱鐢�
@@ -38,9 +38,9 @@
 
     public BasCircularShuttle() {}
 
-    public BasCircularShuttle(Integer steId,Integer steNo,Integer status) {
-        this.steId = steId;
-        this.steNo = steNo;
+    public BasCircularShuttle(Integer rgvId,Integer rgvNo,Integer status) {
+        this.rgvId = rgvId;
+        this.rgvNo = rgvNo;
         this.status = status;
     }
 
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 9d634e6..5fc5a05 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -10,6 +10,7 @@
 import com.zy.asrs.service.BasCircularShuttleService;
 import com.zy.asrs.service.BasDevpPositionService;
 import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.utils.SortTheExecutionOfTheCarUtil;
 import com.zy.asrs.utils.Utils;
 import com.zy.core.DevpThread;
 import com.zy.core.News;
@@ -34,6 +35,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -62,18 +64,44 @@
      */
     public synchronized void updateStePosition() {
         try{
-            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("ste_id", true));
+            boolean sign = false;
+            Integer rgvNo = 0;
+            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true));
             for (BasCircularShuttle basCircularShuttle : basCircularShuttleList){
-                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basCircularShuttle.getSteNo());
+                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basCircularShuttle.getRgvNo());
                 RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                 if (rgvProtocol.modeType != RgvModeType.AUTO || (rgvProtocol.getStatusType() != RgvStatusType.IDLE && rgvProtocol.getStatusType() != RgvStatusType.SOS1001) ){
-
+                    sign = true;
                 } else {
+                    rgvNo = basCircularShuttle.getRgvNo();
                     break;
                 }
             }
-        } catch (Exception e){
+            if (sign && rgvNo!=0){
+                int[][] ints = new int[basCircularShuttleList.size()][2];
+                for (BasCircularShuttle basCircularShuttle : basCircularShuttleList){
+                    ints[basCircularShuttle.getRgvNo()-1] = new int[]{basCircularShuttle.getRgvNo(),basCircularShuttle.getRgvId()};
+                }
+                String[] oldList = new String[ints.length];
+                for (int[] rgv : ints){
+                    oldList[rgv[0]-1] = Arrays.toString(rgv);
+                }
+                int[][] rgvList = SortTheExecutionOfTheCarUtil.ReorderSteId(ints, rgvNo);
+                String[] newList = new String[rgvList.length];
+                for (int[] rgv : rgvList){
+                    newList[rgv[0]-1] = Arrays.toString(rgv);
+                }
 
+                log.info("鏇存柊灏忚溅鎺掑簭淇℃伅锛氬師濮嬪皬杞﹀彿rgvNo={},灏忚溅閲嶆柊鎺掑簭淇℃伅={},灏忚溅鍘熷鎺掑簭淇℃伅={}",rgvNo,Arrays.toString(newList),Arrays.toString(oldList));
+                for (BasCircularShuttle basCircularShuttle : basCircularShuttleList){
+                    int[] rgv = rgvList[basCircularShuttle.getRgvNo() - 1];
+                    basCircularShuttle.setRgvId(rgv[1]);
+                    basCircularShuttleService.updateById(basCircularShuttle);
+                }
+            }
+
+        } catch (Exception e) {
+            log.error("鑷姩鏇存柊灏忚溅鎺掑簭淇℃伅澶辫触锛屽紓甯革細"+e);
         }
     }
     /**
diff --git a/src/main/java/com/zy/asrs/utils/SortTheExecutionOfTheCarUtil.java b/src/main/java/com/zy/asrs/utils/SortTheExecutionOfTheCarUtil.java
index 8ad735b..e502e64 100644
--- a/src/main/java/com/zy/asrs/utils/SortTheExecutionOfTheCarUtil.java
+++ b/src/main/java/com/zy/asrs/utils/SortTheExecutionOfTheCarUtil.java
@@ -49,7 +49,7 @@
         return 0;
     }
     public static void main(String[] args) {
-        int[][] ints = new int[][]{{1,1},{2,2},{3,3},{4,4},{5,5},{6,6},{7,7},{8,8},{9,9},{10,10}};
+        int[][] ints = new int[][]{{1,1},{3,3},{2,2},{4,4},{5,5},{6,6},{7,7},{8,8},{9,9},{10,10}};
 
         int[][] reorderSteId = ReorderSteId(ints, 2);
         for (int[] ste : reorderSteId){
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 763721a..21c9218 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -58,6 +58,9 @@
                     mainService.updateStePosition();
 
                     // 浠诲姟涓嬪彂
+                    mainService.DevpTaskNoRun();
+
+                    // 浠诲姟涓嬪彂
                     mainService.loopSteCharge();
 
 
diff --git a/src/main/resources/mapper/BasCircularShuttleMapper.xml b/src/main/resources/mapper/BasCircularShuttleMapper.xml
index 740145b..5f313c3 100644
--- a/src/main/resources/mapper/BasCircularShuttleMapper.xml
+++ b/src/main/resources/mapper/BasCircularShuttleMapper.xml
@@ -5,8 +5,8 @@
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
     <resultMap id="BaseResultMap" type="com.zy.asrs.entity.BasCircularShuttle">
         <id column="id" property="id" />
-        <result column="ste_id" property="steId" />
-        <result column="ste_no" property="steNo" />
+        <result column="rgv_id" property="rgvId" />
+        <result column="rgv_no" property="rgvNo" />
         <result column="status" property="status" />
 
     </resultMap>
--
Gitblit v1.9.1