From b5ccfa77fc6e4a895818f987887207bb0d2b824a Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 18 十一月 2020 17:03:52 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/MonitorController.java | 151 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 147 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MonitorController.java b/src/main/java/com/zy/asrs/controller/MonitorController.java index 407b3d0..104dfce 100644 --- a/src/main/java/com/zy/asrs/controller/MonitorController.java +++ b/src/main/java/com/zy/asrs/controller/MonitorController.java @@ -3,11 +3,17 @@ import com.core.common.Arith; import com.core.common.Cools; import com.core.common.R; +import com.zy.asrs.domain.vo.LocChartPie; import com.zy.asrs.mapper.ReportQueryMapper; import com.zy.common.service.CommonService; +import com.zy.core.CrnThread; +import com.zy.core.cache.SlaveConnection; +import com.zy.core.enums.SlaveType; +import com.zy.core.model.protocol.CrnProtocol; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.*; @@ -44,19 +50,156 @@ } /** - * 鍏ュ簱鎶ヨ〃 + * 鑾峰彇鍏朵粬淇℃伅 + */ + @GetMapping("/other") + public R monitorOther(@RequestParam("crnId") Integer crnId) { + Double xSpeed = 0.0D; + Double ySpeed = 0.0D; + Double xDistance = 0.0D; + Double yDistance = 0.0D; + Double xDuration = 0.0D; + Double yDuration = 0.0D; + + if (null != crnId) { + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crnId); + if (crnThread != null) { + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol != null) { + xSpeed = Double.valueOf(crnProtocol.getXSpeed()); + ySpeed = Double.valueOf(crnProtocol.getYSpeed()); + xDistance = Double.valueOf(crnProtocol.getXDistance()); + yDistance = Double.valueOf(crnProtocol.getYDistance()); + xDuration = Double.valueOf(crnProtocol.getXDuration()); + yDuration = Double.valueOf(crnProtocol.getYDuration()); + } + } + } + + xSpeed = Double.valueOf(new Random().nextInt(10)); + ySpeed = Double.valueOf(new Random().nextInt(10)); + +// int totalWrk = reportQueryMapper.getTotalWrkByCrnId(crnId); +// int totalLoc = reportQueryMapper.getTotalLocByCrnId(); + + return R.ok( + Cools.add("xSpeed", xSpeed) // 琛岃蛋閫熷害 + .add("ySpeed", ySpeed) // 鍗囬檷閫熷害 +// .add("totalLoc", totalLoc) // 鎬诲簱浣嶆暟 +// .add("totalWrk", totalWrk) // 鎬讳换鍔℃暟 + .add("xDistance", xDistance) // 绱璧拌璺濈km + .add("yDistance", yDistance) // 绱鍗囬檷璺濈km + .add("xDuration", xDuration) // 绱璧拌鏃堕暱h + .add("yDuration", yDuration) // 绱鍗囬檷鏃堕暱h + ); + } + + /** + * 鍏ュ簱鎶ヨ〃 -- 鎶樼嚎鍥� */ @GetMapping("/pakin/rep") public R monitorPakinRep(){ - List<Map<String, Object>> report = reportQueryMapper.queryPakinRep(); - for (Map<String, Object> map : report) { + // 鍏ュ簱 + List<Map<String, Object>> pakinRep = reportQueryMapper.queryPakinRep(); + for (Map<String, Object> map : pakinRep) { if (map.get("node")!=null) { map.put("node", String.valueOf(map.get("node")).substring(5, 10)); } } - return R.ok(report); + // 鍑哄簱 + List<Map<String, Object>> pakoutRep = reportQueryMapper.queryPakinRep(); + return R.ok(pakinRep); } + /** + * 搴撲綅浣跨敤鎯呭喌缁熻 + */ + @GetMapping("/loc/rep") + public R monitorLocRep(){ + List<Map<String, Object>> pie = new ArrayList<>(); + + LocChartPie locUseRate = reportQueryMapper.getLocUseRate(); + if(locUseRate!=null) { + Map<String, Object> map = new HashMap<>(); + map.put("name", "鍦ㄥ簱"); + map.put("value", locUseRate.getFqty()); + pie.add(map); + + Map<String, Object> map1 = new HashMap<>(); + map1.put("name", "绌�"); + map1.put("value", locUseRate.getOqty()); + pie.add(map1); + + Map<String, Object> map2 = new HashMap<>(); + map2.put("name", "浣跨敤"); + map2.put("value", locUseRate.getUqty()); + pie.add(map2); + + Map<String, Object> map3 = new HashMap<>(); + map3.put("name", "绂佺敤"); + map3.put("value", locUseRate.getXqty()); + pie.add(map3); + } + + // 鎬诲簱浣嶆暟 + Integer total = (int) Arith.add(0, locUseRate.getFqty(), locUseRate.getOqty(), locUseRate.getUqty(), locUseRate.getXqty()); + // 浣跨敤涓� + Integer used = locUseRate.getFqty() + locUseRate.getUqty(); + // 搴撲綅浣跨敤鐜� + double usedDivides = Arith.divides(3, used, total); + double usedPr = Arith.multiplys(1, usedDivides, 100); + + return R.ok( + Cools.add("pie", pie) + .add("stockCunt", locUseRate.getFqty()) + .add("emptyCount", locUseRate.getOqty()) + .add("noneCount", locUseRate.getXqty()) + .add("total", total) + .add("used", used) + .add("usedPr", usedPr) + ); + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- Gitblit v1.9.1