From ddd3d3214edd630c19c11b27d02e350dd3cc68ad Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 17 十一月 2020 16:48:53 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/MonitorController.java | 129 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 119 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MonitorController.java b/src/main/java/com/zy/asrs/controller/MonitorController.java
index 6c4dbef..f077b4d 100644
--- a/src/main/java/com/zy/asrs/controller/MonitorController.java
+++ b/src/main/java/com/zy/asrs/controller/MonitorController.java
@@ -6,9 +6,14 @@
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.*;
@@ -45,6 +50,51 @@
}
/**
+ * 鑾峰彇鍏朵粬淇℃伅
+ */
+ @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")
@@ -58,39 +108,98 @@
return R.ok(report);
}
+ /**
+ * 搴撲綅浣跨敤鎯呭喌缁熻
+ */
@GetMapping("/loc/rep")
public R monitorLocRep(){
- List<Map<String, Object>> result = new ArrayList<>();
+ 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("name", "鍦ㄥ簱");
map.put("value", locUseRate.getFqty());
- result.add(map);
+ pie.add(map);
Map<String, Object> map1 = new HashMap<>();
- map1.put("name", "绌哄簱浣�");
+ map1.put("name", "绌�");
map1.put("value", locUseRate.getOqty());
- result.add(map1);
+ pie.add(map1);
Map<String, Object> map2 = new HashMap<>();
- map2.put("name", "浣跨敤搴撲綅");
+ map2.put("name", "浣跨敤");
map2.put("value", locUseRate.getUqty());
- result.add(map2);
+ pie.add(map2);
Map<String, Object> map3 = new HashMap<>();
- map3.put("name", "绂佺敤搴撲綅");
+ map3.put("name", "绂佺敤");
map3.put("value", locUseRate.getXqty());
- result.add(map3);
+ pie.add(map3);
}
- return R.ok(result);
+
+ // 鎬诲簱浣嶆暟
+ 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