From 4eea87e9d12f148f6a43f6c9e70f2b1f372d4c64 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 17 十一月 2020 16:17:48 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/MonitorController.java |  142 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 141 insertions(+), 1 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..f077b4d 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,7 +50,52 @@
     }
 
     /**
-     * 鍏ュ簱鎶ヨ〃
+     * 鑾峰彇鍏朵粬淇℃伅
+     */
+    @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(){
@@ -57,6 +108,95 @@
         return R.ok(report);
     }
 
+    /**
+     * 搴撲綅浣跨敤鎯呭喌缁熻
+     */
+    @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