src/main/java/com/zy/asrs/controller/MapController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/home/map.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/home/map_realtime.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/MapController.java
@@ -50,22 +50,9 @@ @GetMapping("/map/getData/{lev}/auth") @ManagerAuth public String getMapData(@PathVariable("lev") Integer lev) { try { String mapFilename = "map.json"; String fileName = this.getClass().getClassLoader().getResource(mapFilename).getPath();//获取文件路径 File file = new File(fileName); StringBuffer stringBuffer = new StringBuffer(); if (file.isFile() && file.exists()) { InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "GBK"); BufferedReader br = new BufferedReader(isr); String lineTxt = null; while ((lineTxt = br.readLine()) != null) { stringBuffer.append(lineTxt); } br.close(); //解析json地图数据 List<ArrayList> arrayLists = JSON.parseArray(stringBuffer.toString(), ArrayList.class); BasMap basMap = basMapService.selectLatestMap(lev); //解析json地图数据 List<ArrayList> arrayLists = JSON.parseArray(basMap.getData(), ArrayList.class); // ArrayList<HashMap<String, Integer>> lineRows = new ArrayList<>(); // int dataRow = 0; // int dataRowCount = 0; @@ -95,11 +82,11 @@ // } // } //获取当前楼层库位数据 List<LocMast> locMasts = locMastService.selectLocByLev(lev); for (LocMast locMast : locMasts) { Integer row = locMast.getRow1(); Integer bay = locMast.getBay1(); //获取当前楼层库位数据 List<LocMast> locMasts = locMastService.selectLocByLev(lev); for (LocMast locMast : locMasts) { Integer row = locMast.getRow1(); Integer bay = locMast.getBay1(); // for (HashMap<String, Integer> lineRow : lineRows) { // if (row > lineRow.get("start") && row <= lineRow.get("end")) { // row += lineRow.get("count"); @@ -107,28 +94,21 @@ // } // } ArrayList rowData = arrayLists.get(row); Object o = rowData.get(bay); JSONObject jsonObject = JSON.parseObject(o.toString()); if (DISABLE_LOC_NO.contains(locMast.getLocNo())) { //禁止库位 jsonObject.put("value", 10);//将禁用库位进行设置 } jsonObject.put("locNo", locMast.getLocNo());//设置库位号 jsonObject.put("locSts", locMast.getLocSts());//库位状态 //更新list rowData.set(bay, jsonObject); arrayLists.set(row, rowData); } return JSONObject.toJSONString(arrayLists); } else { System.out.println("文件不存在!"); ArrayList rowData = arrayLists.get(row); Object o = rowData.get(bay); JSONObject jsonObject = JSON.parseObject(o.toString()); if (DISABLE_LOC_NO.contains(locMast.getLocNo())) { //禁止库位 jsonObject.put("value", 10);//将禁用库位进行设置 } } catch (IOException ioException) { ioException.printStackTrace(); jsonObject.put("locNo", locMast.getLocNo());//设置库位号 jsonObject.put("locSts", locMast.getLocSts());//库位状态 //更新list rowData.set(bay, jsonObject); arrayLists.set(row, rowData); } return null; return JSONObject.toJSONString(arrayLists); } @RequestMapping("/map/searchData/auth") src/main/webapp/views/home/map.html
@@ -381,7 +381,7 @@ </head> <body> <div id="app" style="display: flex;justify-content: space-around;margin-top: 50px;flex-wrap: wrap;" @click="bgClick()"> <div style="flex: 12;display: flex;" :style="{scale:showScale/100.0,marginTop:(showScale-100)*0.7 + 'px'}"> <div style="flex: 18;display: flex;justify-content: center;" :style="{zoom:showScale/100.0,marginTop:(showScale)*4 + 'px'}"> <div style="margin-top: -110px;"> <div class="pointContainer" v-for="(x,index) in map" :key="index"> <div v-if="index != 0 && (index != map.length-1)" v-for="(y,idx) in x" :key="idx"> @@ -426,9 +426,15 @@ <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 2" :style="{background: currentLev==2?'red':''}">2F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 3" :style="{background: currentLev==3?'red':''}">3F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 4" :style="{background: currentLev==4?'red':''}">4F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 5" :style="{background: currentLev==5?'red':''}">5F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 6" :style="{background: currentLev==6?'red':''}">6F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 7" :style="{background: currentLev==7?'red':''}">7F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 8" :style="{background: currentLev==8?'red':''}">8F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 9" :style="{background: currentLev==9?'red':''}">9F</button></div> <div style="margin-top: 20px;"><button class="layui-btn" @click="currentLev = 10" :style="{background: currentLev==10?'red':''}">10F</button></div> </div> </div> <div style="padding: 40px 20px 10px 10px;flex: 5;margin-top: -70px;"> <div style="padding: 40px 20px 10px 10px;" :style="window.innerWidth < 2000 ? 'margin-top: 0px;' : 'flex: 5;margin-top: -70px;'"> <el-slider v-model="showScale" :marks="showScaleMarks"></el-slider> <div style="display: flex;justify-content: space-between;flex-wrap: wrap;"> <div class="hoverCard" style="width: 100%;"> @@ -628,7 +634,7 @@ searchLocNo: "", outSite: null, outSites: null, showScale: 80, //控制地图显示大小比例 showScale: 65, //控制地图显示大小比例 showScaleMarks: {//比例滑动条显示标记 0: "0%", 50: { @@ -645,11 +651,6 @@ this.init() this.getOutSite() // setInterval((that) => { // //定时获取堆垛机数据 // that.getCrnData() // },1000,this) }, watch: { map: { src/main/webapp/views/home/map_realtime.html
@@ -381,7 +381,7 @@ </head> <body> <div id="app" style="display: flex;justify-content: space-around;margin-top: 50px;flex-wrap: wrap;" @click="bgClick()"> <div style="flex: 12;display: flex;" :style="{scale:showScale/100.0,marginTop:(showScale-100)*0.7 + 'px'}"> <div style="flex: 18;display: flex;justify-content: center;" :style="{zoom:showScale/100.0,marginTop:(showScale)*4 + 'px'}"> <div style="margin-top: -110px;"> <div class="pointContainer" v-for="(x,index) in map" :key="index"> <div v-if="index != 0 && (index != map.length-1)" v-for="(y,idx) in x" :key="idx"> @@ -428,7 +428,7 @@ </div> </div> <div style="padding: 40px 20px 10px 10px;flex: 5;margin-top: -70px;"> <div style="padding: 40px 20px 10px 10px;" :style="window.innerWidth < 2000 ? 'margin-top: 0px;' : 'flex: 5;margin-top: -70px;'"> <el-slider v-model="showScale" :marks="showScaleMarks"></el-slider> <div style="display: flex;justify-content: space-between;flex-wrap: wrap;"> <div class="hoverCard"> @@ -479,6 +479,18 @@ <input id="03" type="radio" v-model="currentLev" name="r" value="3"> <label for="04">4F</label> <input id="04" type="radio" v-model="currentLev" name="r" value="4"> <label for="05">5F</label> <input id="05" type="radio" v-model="currentLev" name="r" value="5"> <label for="06">6F</label> <input id="06" type="radio" v-model="currentLev" name="r" value="6"> <label for="07">7F</label> <input id="07" type="radio" v-model="currentLev" name="r" value="7"> <label for="08">8F</label> <input id="08" type="radio" v-model="currentLev" name="r" value="8"> <label for="09">9F</label> <input id="09" type="radio" v-model="currentLev" name="r" value="9"> <label for="10">10F</label> <input id="10" type="radio" v-model="currentLev" name="r" value="10"> </div> </div> </div> @@ -552,7 +564,7 @@ searchLocNo: "", outSite: null, outSites: null, showScale: 80, //控制地图显示大小比例 showScale: 65, //控制地图显示大小比例 showScaleMarks: {//比例滑动条显示标记 0: "0%", 50: {