|  |  |  | 
|---|
|  |  |  | @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(1,floor); | 
|---|
|  |  |  | //解析json地图数据 | 
|---|
|  |  |  | List<ArrayList> arrayLists = JSON.parseArray(basMap.getData(), ArrayList.class); | 
|---|
|  |  |  | 
|---|
|  |  |  | 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){ | 
|---|
|  |  |  | x = generateMap1Bay(bay); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //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); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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 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 > 3){ | 
|---|
|  |  |  | x --; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(row > 5){ | 
|---|
|  |  |  | x --; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(row > 7){ | 
|---|
|  |  |  | x --; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(row > 9){ | 
|---|
|  |  |  | x --; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(row > 10){ | 
|---|
|  |  |  | x --; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(row > 12){ | 
|---|
|  |  |  | x --; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(row >20) x += 9; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return x; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Integer generateMap1Bay(int bay){ | 
|---|
|  |  |  | private Integer generateMap2Bay(int bay){ | 
|---|
|  |  |  | int y = bay; | 
|---|
|  |  |  | if(y > 28){ | 
|---|
|  |  |  | y ++; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|