From 78ff74dfc9c42ee12993ac01c43063d0432231e3 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期五, 20 十二月 2024 15:27:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/phyzasrs-erp-4' into phyzasrs-erp-4
---
 src/main/java/com/zy/asrs/mapper/AgvLocMastMapper.java            |    8 +++
 src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java |   12 ++++++
 src/main/java/com/zy/asrs/controller/AgvMapController.java        |   42 ++++++++++++++------
 src/main/java/com/zy/asrs/service/AgvLocMastService.java          |    4 ++
 4 files changed, 52 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/AgvMapController.java b/src/main/java/com/zy/asrs/controller/AgvMapController.java
index 8aaff06..f945e1b 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMapController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMapController.java
@@ -62,20 +62,36 @@
         //鑾峰彇褰撳墠妤煎眰搴撲綅鏁版嵁
         List<AgvLocMast> locMasts = agvLocMastService.selectLocByLevAndFloor(lev, floor);
 
-        List<AgvLocMast> distinctRow = agvLocMastService.selectDistinctLocByLevAndFloor(lev, floor);
-        List<Integer> integers = new ArrayList<>();
+        List<AgvLocMast> distinctRow = new ArrayList<>();
+        List<Integer> rowIntegers = new ArrayList<>();
         int min = 0;
         int i =1;
-        for (AgvLocMast locMast : distinctRow) {
-            if (min > locMast.getMapRow1()) {
-                min = locMast.getMapRow1();
-            }
-            if (locMast.getRightSide() == 1) {
-                integers.add(i);
-            }
-            i++;
+        if (lev == 1 && floor == 1) {
+            distinctRow = agvLocMastService.selectDistinctLocByLevAndFloorMapbay1(lev, floor);
+            for (AgvLocMast locMast : distinctRow) {
+                if (min > locMast.getMapBay1()) {
+                    min = locMast.getMapBay1();
+                }
+                if (locMast.getRightSide() == 1) {
+                    rowIntegers.add(i);
+                }
+                i++;
 
+            }
+        } else {
+            distinctRow = agvLocMastService.selectDistinctLocByLevAndFloorMaprow1(lev, floor);
+            for (AgvLocMast locMast : distinctRow) {
+                if (min > locMast.getMapRow1()) {
+                    min = locMast.getMapRow1();
+                }
+                if (locMast.getRightSide() == 1) {
+                    rowIntegers.add(i);
+                }
+                i++;
+
+            }
         }
+
         for (AgvLocMast locMast : locMasts) {
             Integer row = locMast.getMapRow1();
             if (row < 0) {
@@ -88,11 +104,11 @@
             int x = bay;
             int y = row;
             if (floor == 3) {
-                y = generateMap3Row(integers, row);
+                y = generateMap3Row(rowIntegers, row);
             } else if (floor == 1 && lev == 1) {
-                x = generateMap1Bay(integers, bay);
+                x = generateMap1Bay(rowIntegers, bay);
             } else {
-                y = generateMap4Row(integers, row);
+                y = generateMap4Row(rowIntegers, row);
             }
 
             ArrayList rowData = arrayLists.get(x);
diff --git a/src/main/java/com/zy/asrs/mapper/AgvLocMastMapper.java b/src/main/java/com/zy/asrs/mapper/AgvLocMastMapper.java
index 8251128..96cd0c1 100644
--- a/src/main/java/com/zy/asrs/mapper/AgvLocMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/AgvLocMastMapper.java
@@ -35,6 +35,12 @@
     List<String> queryContainerTypeByLocType1(@Param("locType1")Short locType1);
 
 
-    @Select("SELECT distinct map_row1 as mapRow1,right_side as rightSide FROM agv_loc_mast WHERE lev1 = #{lev1} And floor = #{floor} order by map_row1")
+    @Select("SELECT distinct map_row1 as mapRow1,map_bay1 as mapBay1,right_side as rightSide FROM agv_loc_mast WHERE lev1 = #{lev1} And floor = #{floor} order by map_row1")
     List<AgvLocMast> selectDistinctLocByLevAndFloor(@Param("lev1")Integer lev1,@Param("floor")Integer floor);
+
+    @Select("SELECT distinct map_row1 as mapRow1,right_side as rightSide FROM agv_loc_mast WHERE lev1 = #{lev1} And floor = #{floor} order by map_row1")
+    List<AgvLocMast> selectDistinctLocByLevAndFloorMaprow1(@Param("lev1")Integer lev1,@Param("floor")Integer floor);
+
+    @Select("SELECT distinct map_bay1 as mapBay1,right_side as rightSide FROM agv_loc_mast WHERE lev1 = #{lev1} And floor = #{floor} order by map_bay1")
+    List<AgvLocMast> selectDistinctLocByLevAndFloorMapbay1(@Param("lev1")Integer lev1,@Param("floor")Integer floor);
 }
diff --git a/src/main/java/com/zy/asrs/service/AgvLocMastService.java b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
index 5ea50b9..0623e67 100644
--- a/src/main/java/com/zy/asrs/service/AgvLocMastService.java
+++ b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
@@ -35,4 +35,8 @@
 
     List<AgvLocMast> selectDistinctLocByLevAndFloor(int lev, int floor);
 
+    List<AgvLocMast> selectDistinctLocByLevAndFloorMaprow1(int lev, int floor);
+
+    List<AgvLocMast> selectDistinctLocByLevAndFloorMapbay1(int lev, int floor);
+
 }
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 2a91852..9b308c5 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
@@ -420,4 +420,16 @@
         return this.agvLocMastMapper.selectDistinctLocByLevAndFloor(lev,floor);
     }
 
+    @Override
+    public List<AgvLocMast> selectDistinctLocByLevAndFloorMaprow1(int lev, int floor) {
+
+        return this.agvLocMastMapper.selectDistinctLocByLevAndFloorMaprow1(lev,floor);
+    }
+
+    @Override
+    public List<AgvLocMast> selectDistinctLocByLevAndFloorMapbay1(int lev, int floor) {
+
+        return this.agvLocMastMapper.selectDistinctLocByLevAndFloorMapbay1(lev,floor);
+    }
+
 }
--
Gitblit v1.9.1