From 4fa74e859c0a44fa45dafaa129653ad8a8496c80 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期六, 03 六月 2023 16:44:48 +0800 Subject: [PATCH] #平库地图更改 --- src/main/java/com/zy/asrs/controller/MapController.java | 133 +++++++++++++++++++++++++++++++++++++------- 1 files changed, 111 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MapController.java b/src/main/java/com/zy/asrs/controller/MapController.java index 8cf5c35..5bcad57 100644 --- a/src/main/java/com/zy/asrs/controller/MapController.java +++ b/src/main/java/com/zy/asrs/controller/MapController.java @@ -31,12 +31,25 @@ }}; - @GetMapping("/map/getData/{lev}/auth") + @GetMapping("/map/getData/auth") @ManagerAuth - public String getMapData(@PathVariable("lev") Integer lev) { + public String getMapData(@RequestParam Integer lev,@RequestParam Integer area) { try { String mapFilename = "map.json"; // String fileName ="file:" + new ClassPathResource(mapFilename).getPath(); + //鑾峰彇褰撳墠妤煎眰搴撲綅鏁版嵁 + List<LocMast> locMasts = locMastService.selectLocByLev(lev); + switch (area){ + case 1: + break; + case 2: + case 3: + case 4: + case 5: + mapFilename = "DTDnode.json"; + locMasts = locMastService.selectNodeLocByLev(lev); + break; + } String fileName = this.getClass().getClassLoader().getResource(mapFilename).getPath();//鑾峰彇鏂囦欢璺緞 // File file = new File("D:\\workspace\\zy-asrs\\src\\main\\resources\\map.json"); File file = new File(fileName); @@ -69,29 +82,97 @@ arrayLists.set(row, rowData); } - //鑾峰彇褰撳墠妤煎眰搴撲綅鏁版嵁 - List<LocMast> locMasts = locMastService.selectLocByLev(lev); + + for (LocMast locMast : locMasts) { Integer row = locMast.getRow1(); Integer bay = locMast.getBay1(); - if (row<17){ - if (row % 4 == 0 || (row+1) % 4 == 0) { - row=row+locMast.getCrnNo(); - }else{ - row=row+locMast.getCrnNo()-1; - } - }else { - row=row-100+21; + + switch (area){ + case 1: + if (row % 4 == 0 || (row+1) % 4 == 0) { + row=row+locMast.getCrnNo(); + }else{ + row=row+locMast.getCrnNo()-1; + } + bay=32-bay; + break; + case 2: + case 3: + case 4: + case 5: + if (bay % 7 == 0) { + bay=bay+1; + }else{ + if (bay>7){ + bay=bay+locMast.getCrnNo(); + }else { + bay=bay+locMast.getCrnNo()-1; + } + } + if (row == 3){ + row = row +1; + } else if (row == 5) { + row = row+2; + } else if (row ==8) { + row = row+3; + } + else if (row ==10) { + row = row+4; + } + else if (row ==13) { + row = row+5; + }else if (row ==14) { + row = row+6; + }else { + if (row >3){ + row = row +1; + } + if (row > 5){ + row = row +1; + } + if (row > 8){ + row = row +1; + } + if (row > 10){ + row = row +1; + } + if (row > 13){ + row = row +1; + } + if (row > 14){ + row = row +1; + } + } + + + } - ArrayList rowData = arrayLists.get(row); - Object o = rowData.get(bay); - JSONObject jsonObject = JSON.parseObject(o.toString()); - jsonObject.put("locNo", locMast.getLocNo());//璁剧疆搴撲綅鍙� - jsonObject.put("locSts", locMast.getLocSts());//搴撲綅鐘舵�� - jsonObject.put("locSts$", locMast.getLocSts$());//搴撲綅鐘舵�� - //鏇存柊list - rowData.set(bay, jsonObject); - arrayLists.set(row, rowData); + + if (area == 1){ + ArrayList rowData = arrayLists.get(row); + Object o = rowData.get(bay); + JSONObject jsonObject = JSON.parseObject(o.toString()); + jsonObject.put("locNo", locMast.getLocNo());//璁剧疆搴撲綅鍙� + jsonObject.put("locSts", locMast.getLocSts());//搴撲綅鐘舵�� + //jsonObject.put("locSts$", locMast.getLocSts$());//搴撲綅鐘舵�� + //鏇存柊list + rowData.set(bay, jsonObject); + arrayLists.set(row, rowData); + }else { + ArrayList rowData = arrayLists.get(bay); + Object o = rowData.get(row); + JSONObject jsonObject = JSON.parseObject(o.toString()); + jsonObject.put("locNo", locMast.getLocNo());//璁剧疆搴撲綅鍙� + jsonObject.put("locSts", locMast.getLocSts());//搴撲綅鐘舵�� + //jsonObject.put("locSts$", locMast.getLocSts$());//搴撲綅鐘舵�� + //鏇存柊list + rowData.set(row, jsonObject); + arrayLists.set(bay, rowData); + } + + + } return JSONObject.toJSONString(arrayLists); @@ -113,7 +194,7 @@ @RequestParam("matnr") String matnr, @RequestParam("maktx") String maktx ) { - List<LocDetl> locDetls = locDetlService.searchByLike(orderNo, matnr, maktx, specs, locNo); + List<LocDetl> locDetls = locDetlService.searchByLike(orderNo, matnr, maktx, specs, ""); ArrayList<LocDetl> lists = new ArrayList<>(); for (LocDetl locDetl : locDetls) {//杩囨护鎺変笉鏄綋鍓嶆ゼ灞傜殑鏁版嵁 int lev1 = Utils.getLev(locDetl.getLocNo()); @@ -121,6 +202,14 @@ lists.add(locDetl); } } + + //鎼滅储鎸囧畾搴撲綅鍙凤紝鍗充娇搴撲綅涓虹┖锛屼篃鍙互杩斿洖鏁版嵁 + LocMast locMast = locMastService.selectById(locNo); + if (locMast != null) { + LocDetl locDetl = new LocDetl(); + locDetl.setLocNo(locMast.getLocNo()); + lists.add(locDetl); + } return R.ok().add(lists); } -- Gitblit v1.9.1