From 2d6cdc6d4a4feac22724b516ffbaec629896255c Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期四, 19 九月 2024 20:30:56 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/AgvMapController.java | 94 +++++++++++++++++++++++++++++----------------- 1 files changed, 59 insertions(+), 35 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvMapController.java b/src/main/java/com/zy/asrs/controller/AgvMapController.java index b1f74bf..284fc10 100644 --- a/src/main/java/com/zy/asrs/controller/AgvMapController.java +++ b/src/main/java/com/zy/asrs/controller/AgvMapController.java @@ -49,7 +49,11 @@ @GetMapping("/map/getData/{floor}/{lev}/auth") @ManagerAuth public String getMapData(@PathVariable("floor") Integer floor, @PathVariable("lev") Integer lev) { - BasMap basMap = agvBasMapService.selectLatestMap(1,floor); + + //to do +// floor = 2; + + BasMap basMap = agvBasMapService.selectLatestMap(lev,floor); //瑙f瀽json鍦板浘鏁版嵁 List<ArrayList> arrayLists = JSON.parseArray(basMap.getData(), ArrayList.class); @@ -58,21 +62,28 @@ List<AgvLocMast> locMasts = agvLocMastService.selectLocByLevAndFloor(lev,floor); for (AgvLocMast locMast : locMasts) { Integer row = locMast.getRow1(); - Integer bay = 34 - locMast.getBay1(); + Integer bay = locMast.getBay1(); 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); + } + 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); - //} + if(floor == 3){ + y = generateMap3Row(row); +// x = generateMap3Bay(bay); + } ArrayList rowData = arrayLists.get(x); Object o = rowData.get(y); @@ -89,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 > 5){ - x --; - } - if(row > 7){ - x --; - } - if(row > 9){ - 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 ++; @@ -130,12 +153,13 @@ private Integer generateMap3Row(int row){ int x = row; - Integer[] rowAdd = {2,4,6,7,8,10,12,13,15,17,19,21,23,24,26,28,30,32}; + 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; } -- Gitblit v1.9.1