From 2025bc1fe84535219fd4bec24ad0985c5b482b78 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 18 九月 2024 09:50:35 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/AgvMapController.java |   98 ++++++++++++++++++++++++++++++-------------------
 1 files changed, 60 insertions(+), 38 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvMapController.java b/src/main/java/com/zy/asrs/controller/AgvMapController.java
index defe628..284fc10 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMapController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMapController.java
@@ -49,6 +49,10 @@
     @GetMapping("/map/getData/{floor}/{lev}/auth")
     @ManagerAuth
     public String getMapData(@PathVariable("floor") Integer floor, @PathVariable("lev") Integer lev) {
+
+        //to do
+//        floor = 2;
+
         BasMap basMap = agvBasMapService.selectLatestMap(lev,floor);
         //瑙f瀽json鍦板浘鏁版嵁
         List<ArrayList> arrayLists = JSON.parseArray(basMap.getData(), ArrayList.class);
@@ -63,26 +67,30 @@
 
             int x = bay;
             int y = row;
-            //1妤�
-            if(floor == 1){
-                x = generateMap1Row(row);
-                y = generateMap1Bay(bay);
+            //2妤�
+            if(floor == 1 && lev == 1){
+                x = generateMap1Bay(bay);
             }
-            //3妤�
+            if(floor == 1 && lev == 2){
+                y = generateMap4Row(row);
+            }
+            //2妤�
+            if(floor == 2){
+                y = generateMap2Row(row);
+                //y = generateMap2Bay(bay);
+            }
+            ////3妤�
             if(floor == 3){
                 y = generateMap3Row(row);
-                x = generateMap3Bay(bay);
+//                x = generateMap3Bay(bay);
             }
-
 
             ArrayList rowData = arrayLists.get(x);
             Object o = rowData.get(y);
 
             JSONObject jsonObject = JSON.parseObject(o.toString());
-            if (DISABLE_LOC_NO.contains(locMast.getLocNo())) {
-                //绂佹搴撲綅
-                jsonObject.put("value", 10);//灏嗙鐢ㄥ簱浣嶈繘琛岃缃�
-            }
+            jsonObject.put("value","0");
+
             jsonObject.put("locNo", locMast.getLocNo());//璁剧疆搴撲綅鍙�
             jsonObject.put("locSts", locMast.getLocSts());//搴撲綅鐘舵��
             //鏇存柊list
@@ -92,35 +100,47 @@
 
         return JSONObject.toJSONString(arrayLists);
     }
+    private Integer generateMap1Bay(int bay){
+        int y = bay;
+        Integer[] bayAdd = {1,3,5,7,9,11,13,15,17,19};
+        for(int i=0; i<bayAdd.length; i++){
+            if(bay > bayAdd[i]){
+                y ++;
+            }
+        }
 
-    private Integer generateMap1Row(int row){
-        int x = 21-row;
-        if(row > 1){
-            x --;
+        return y;
+
+    }
+
+    private Integer generateMap4Row(int row){
+        int x = row;
+        Integer[] rowAdd = {1,3,5,7,9,11,13,15,17,19,21};
+        for(int i=0; i<rowAdd.length; i++){
+            if(row > rowAdd[i]){
+                x ++;
+            }
         }
-        if(row > 3){
-            x --;
-        }
-        if(row > 4){
-            x --;
-        }
-        if(row > 6){
-            x --;
-        }
-        if(row > 8){
-            x --;
-        }
-        if(row > 10){
-            x --;
-        }
-        if(row > 12){
-            x --;
-        }
+
         return x;
 
     }
 
-    private Integer generateMap1Bay(int bay){
+    private Integer generateMap2Row(int row){
+        int x = row;
+        Integer[] rowAdd = {2,4,6,7,8,10,12,13,15,17,19,20,22,24};
+        for(int i=0; i<rowAdd.length; i++){
+            if(row > rowAdd[i]){
+                x ++;
+            }
+        }
+        if(row >20) x += 9;
+
+        return x;
+
+    }
+
+    private Integer generateMap2Bay(int bay){
         int y = bay;
         if(y > 28){
             y ++;
@@ -133,19 +153,21 @@
 
     private Integer generateMap3Row(int row){
         int x = row;
-        Integer[] rowAdd = {2,4,6,8,9,11,12,14,16,18,19,21,23,25,27,29,31,33};
+        Integer[] rowAdd = {2,4,6,8,10,12,14,15,17,19,21,22,24,26,28,30,32};
         for(int i=0; i<rowAdd.length; i++){
             if(row >= rowAdd[i]){
                 x ++;
             }
         }
+        if(row >8) x += 9;
         return x;
     }
 
     private Integer generateMap3Bay(int bay){
-        int y = 73-bay;
-        if(bay >= 15) y --;
-        if(bay >= 47) y --;
+        int y = 76-bay;
+        if(bay >= 18) y --;
+        if(bay >= 26) y --;
+        if(bay >= 50) y --;
         return y;
     }
 

--
Gitblit v1.9.1