From 5e94332935da62448c17f89a807acf46a5ae3e75 Mon Sep 17 00:00:00 2001
From: Van333 <van666666@foxmail.com>
Date: 星期四, 15 十二月 2022 10:08:22 +0800
Subject: [PATCH] 本地诺瓦调整

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java |  394 ++++++++++++++++++++++++++++---------------------------
 1 files changed, 199 insertions(+), 195 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
index bbc90ac..4d6adb8 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -60,6 +60,7 @@
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
 
+
 /**
  * 鐏潌鐩稿叧
  *
@@ -129,24 +130,26 @@
     /**
      * 鍒犻櫎鐏潌
      */
-    public boolean deletePole(Long poleId) {
-        Pole pole = getById(poleId);
-        if (pole == null) {
+    public boolean deletePole(List<Long> poleIds) {
+        List<Pole> poles = listByIds(poleIds);
+        if (poles.isEmpty()) {
             throw new BusinessException("鏈壘鍒拌鐏潌");
         }
         // 鍒犻櫎鐏潌缁戝畾鍏崇郴
-        poleBindingService.remove(Wrappers.<PoleBinding>lambdaQuery().eq(PoleBinding::getPoleId, poleId));
+        poleBindingService.remove(Wrappers.<PoleBinding>lambdaQuery().in(PoleBinding::getPoleId, poleIds));
+        SpringContextHolder.getBean(LightTaskPoleRelationService.class)
+                .remove(Wrappers.lambdaQuery(LightTaskPoleRelation.class).in(LightTaskPoleRelation::getPoleId, poleIds));
 
         /**
          * 鍒犻櫎鐏潌鏃ュ織璁板綍寮�濮�
          */
-        String content = "{鐏潌Code锛�" + pole.getDeviceCode() + "锛� 鐏潌鍚嶇О锛�" + pole.getPoleName() + " }";
+        String content = "{鐏潌id锛�" + poles + " }";
 
         StoreOperationRecordsUtils.storeOperationData(null, null, "鍒犻櫎鐏潌", content);
         /**
          * 鍒犻櫎鐏潌鏃ュ織璁板綍缁撴潫
          */
-        return removeById(poleId);
+        return removeByIds(poleIds);
     }
 
 
@@ -326,42 +329,42 @@
         }).start();
 
         //鎽勫儚澶�
-        List<MonitorBo> monitorBos = SpringContextHolder.getBean(MonitorService.class).listMonitorOnHome();
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-
-                AtomicInteger onLine = new AtomicInteger(0);
-                AtomicInteger offLine = new AtomicInteger(0);
-
-                DeviceOnLineCountVO Monitor = new DeviceOnLineCountVO();
-                monitorBos.forEach(
-                        device -> {
-                            String s = redisUtils.get(DeviceRedisKey.MONITOR + device.getDeviceSerial());
-                            if (s != null) {
-                                RedisDeviceStatus redisDeviceStatus = JSON.parseObject(s, RedisDeviceStatus.class);
-                                if (redisDeviceStatus.getStatus() == 0) {
-                                    //鍦ㄧ嚎
-                                    onLine.getAndIncrement();
-                                } else {
-                                    //绂荤嚎
-                                    offLine.getAndIncrement();
-                                }
-                            } else {
-                                offLine.getAndIncrement();
-                            }
-                        }
-                );
-
-                Monitor.setTotalCount(monitorBos.size());
-                Monitor.setOnlineCount(onLine.get());
-                Monitor.setOfflineCount(offLine.get());
-
-                onLineCountVO.setMonitor(Monitor);
-                System.out.println("鎽勫儚澶存墽琛屾椂闂�: " + LocalDateTime.now());
-                countDownLatchUtil.countDown(str);
-            }
-        }).start();
+//        List<MonitorBo> monitorBos = SpringContextHolder.getBean(MonitorService.class).listMonitorOnHome();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//
+//                AtomicInteger onLine = new AtomicInteger(0);
+//                AtomicInteger offLine = new AtomicInteger(0);
+//
+//                DeviceOnLineCountVO Monitor = new DeviceOnLineCountVO();
+//                monitorBos.forEach(
+//                        device -> {
+//                            String s = redisUtils.get(DeviceRedisKey.MONITOR + device.getDeviceSerial());
+//                            if (s != null) {
+//                                RedisDeviceStatus redisDeviceStatus = JSON.parseObject(s, RedisDeviceStatus.class);
+//                                if (redisDeviceStatus.getStatus() == 0) {
+//                                    //鍦ㄧ嚎
+//                                    onLine.getAndIncrement();
+//                                } else {
+//                                    //绂荤嚎
+//                                    offLine.getAndIncrement();
+//                                }
+//                            } else {
+//                                offLine.getAndIncrement();
+//                            }
+//                        }
+//                );
+//
+//                Monitor.setTotalCount(monitorBos.size());
+//                Monitor.setOnlineCount(onLine.get());
+//                Monitor.setOfflineCount(offLine.get());
+//
+//                onLineCountVO.setMonitor(Monitor);
+//                System.out.println("鎽勫儚澶存墽琛屾椂闂�: " + LocalDateTime.now());
+//                countDownLatchUtil.countDown(str);
+//            }
+//        }).start();
 
 
         //鍗曠伅
@@ -413,49 +416,49 @@
 
 
         //鍏呯數妗�
-        List<C3ChargingBo> c3mChargings = SpringContextHolder.getBean(C3ChargingService.class).getC3ChargingList();
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                AtomicInteger onLine = new AtomicInteger(0);
-                AtomicInteger offLine = new AtomicInteger(0);
-                AtomicInteger error = new AtomicInteger(0);
-
-
-                DeviceOnLineCountVO c3m = new DeviceOnLineCountVO();
-                c3mChargings.forEach(
-                        device -> {
-                            String s = redisUtils.get(C3mRedisConstant.C3_STATUS.getCode() + device.getC3Mac());
-                            RedisDeviceStatus redisDeviceStatus = new RedisDeviceStatus();
-                            redisDeviceStatus.setDeviceId(device.getC3Id().toString());
-                            if (s != null) {
-                                A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage heartBeatDataPackage = JSON.parseObject(s, A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage.class);
-                                //  鍏呯數妗╁彛鐘舵�佷綅  1.绌洪棽 2.鍏呯數涓� 3.鍏呯數涓柇锛岀瓑寰呮湇鍔″櫒纭 4.鍏呯數缁撴潫锛岀瓑寰呮湇鍔″櫒纭 5.鏈夋晠闅� 6.涓庡厖鐢垫々瀵规帴涓�
-                                if ("5".equals(heartBeatDataPackage.getStatusBit())) {
-                                    //鏁呴殰
-                                    onLine.getAndIncrement();
-                                    error.getAndIncrement();
-                                } else {
-                                    //鍦ㄧ嚎
-                                    onLine.getAndIncrement();
-                                }
-                            } else {
-                                //绂荤嚎
-                                offLine.getAndIncrement();
-                            }
-                        }
-                );
-
-                c3m.setTotalCount(c3mChargings.size());
-                c3m.setOnlineCount(onLine.get());
-                c3m.setOfflineCount(offLine.get());
-                c3m.setErrorCount(error.get());
-
-                onLineCountVO.setC3m(c3m);
-                System.out.println("鍏呯數妗╂墽琛屾椂闂�: " + LocalDateTime.now());
-                countDownLatchUtil.countDown(str);
-            }
-        }).start();
+//        List<C3ChargingBo> c3mChargings = SpringContextHolder.getBean(C3ChargingService.class).getC3ChargingList();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//                AtomicInteger onLine = new AtomicInteger(0);
+//                AtomicInteger offLine = new AtomicInteger(0);
+//                AtomicInteger error = new AtomicInteger(0);
+//
+//
+//                DeviceOnLineCountVO c3m = new DeviceOnLineCountVO();
+//                c3mChargings.forEach(
+//                        device -> {
+//                            String s = redisUtils.get(C3mRedisConstant.C3_STATUS.getCode() + device.getC3Mac());
+//                            RedisDeviceStatus redisDeviceStatus = new RedisDeviceStatus();
+//                            redisDeviceStatus.setDeviceId(device.getC3Id().toString());
+//                            if (s != null) {
+//                                A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage heartBeatDataPackage = JSON.parseObject(s, A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage.class);
+//                                //  鍏呯數妗╁彛鐘舵�佷綅  1.绌洪棽 2.鍏呯數涓� 3.鍏呯數涓柇锛岀瓑寰呮湇鍔″櫒纭 4.鍏呯數缁撴潫锛岀瓑寰呮湇鍔″櫒纭 5.鏈夋晠闅� 6.涓庡厖鐢垫々瀵规帴涓�
+//                                if ("5".equals(heartBeatDataPackage.getStatusBit())) {
+//                                    //鏁呴殰
+//                                    onLine.getAndIncrement();
+//                                    error.getAndIncrement();
+//                                } else {
+//                                    //鍦ㄧ嚎
+//                                    onLine.getAndIncrement();
+//                                }
+//                            } else {
+//                                //绂荤嚎
+//                                offLine.getAndIncrement();
+//                            }
+//                        }
+//                );
+//
+//                c3m.setTotalCount(c3mChargings.size());
+//                c3m.setOnlineCount(onLine.get());
+//                c3m.setOfflineCount(offLine.get());
+//                c3m.setErrorCount(error.get());
+//
+//                onLineCountVO.setC3m(c3m);
+//                System.out.println("鍏呯數妗╂墽琛屾椂闂�: " + LocalDateTime.now());
+//                countDownLatchUtil.countDown(str);
+//            }
+//        }).start();
 
 
         //澶ф皵
@@ -506,76 +509,76 @@
 //        result.put("AirEquipmentNongGengTotalCount", airEquipmentNongGengBos.size());
 
         //姘磋川
-        List<WaterQualityEquipmentBo> waterQualityEquipments = SpringContextHolder.getBean(WaterQualityEquipmentService.class).listWaterQualityEquipmentByKeyword(null, null);
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-
-                DeviceOnLineCountVO water = new DeviceOnLineCountVO();
-                water.setTotalCount(waterQualityEquipments.size());
-                water.setOnlineCount(waterQualityEquipments.size());
-                water.setOfflineCount(0);
-                water.setErrorCount(0);
-                onLineCountVO.setWaterEquipment(water);
-                System.out.println("姘磋川鎵ц鏃堕棿: " + LocalDateTime.now());
-                countDownLatchUtil.countDown(str);
-            }
-        }).start();
+//        List<WaterQualityEquipmentBo> waterQualityEquipments = SpringContextHolder.getBean(WaterQualityEquipmentService.class).listWaterQualityEquipmentByKeyword(null, null);
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//
+//                DeviceOnLineCountVO water = new DeviceOnLineCountVO();
+//                water.setTotalCount(waterQualityEquipments.size());
+//                water.setOnlineCount(waterQualityEquipments.size());
+//                water.setOfflineCount(0);
+//                water.setErrorCount(0);
+//                onLineCountVO.setWaterEquipment(water);
+//                System.out.println("姘磋川鎵ц鏃堕棿: " + LocalDateTime.now());
+//                countDownLatchUtil.countDown(str);
+//            }
+//        }).start();
 
 
         //鐏潌鍊炬枩
-        List<LightPoleHeelingEquipmentBo> lightPoleHeelingEquipmentBos = SpringContextHolder.getBean(LightPoleHeelingEquipmentService.class).LightPoleHeelingEquipmentListOnHome();
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-
-                DeviceOnLineCountVO PoleHeeling = new DeviceOnLineCountVO();
-                PoleHeeling.setTotalCount(lightPoleHeelingEquipmentBos.size());
-                PoleHeeling.setOnlineCount(lightPoleHeelingEquipmentBos.size());
-                PoleHeeling.setOfflineCount(0);
-                PoleHeeling.setErrorCount(0);
-                onLineCountVO.setLightPoleHeeling(PoleHeeling);
-                System.out.println("鐏潌鍊炬枩鎵ц鏃堕棿: " + LocalDateTime.now());
-                countDownLatchUtil.countDown(str);
-            }
-        }).start();
+//        List<LightPoleHeelingEquipmentBo> lightPoleHeelingEquipmentBos = SpringContextHolder.getBean(LightPoleHeelingEquipmentService.class).LightPoleHeelingEquipmentListOnHome();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//
+//                DeviceOnLineCountVO PoleHeeling = new DeviceOnLineCountVO();
+//                PoleHeeling.setTotalCount(lightPoleHeelingEquipmentBos.size());
+//                PoleHeeling.setOnlineCount(lightPoleHeelingEquipmentBos.size());
+//                PoleHeeling.setOfflineCount(0);
+//                PoleHeeling.setErrorCount(0);
+//                onLineCountVO.setLightPoleHeeling(PoleHeeling);
+//                System.out.println("鐏潌鍊炬枩鎵ц鏃堕棿: " + LocalDateTime.now());
+//                countDownLatchUtil.countDown(str);
+//            }
+//        }).start();
 
         //鐔欒
-        List<PoleLightemitEntity> xiXuns = SpringContextHolder.getBean(PoleLightemitService.class).listLedOnHome();
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                AtomicInteger onLine = new AtomicInteger(0);
-                AtomicInteger offLine = new AtomicInteger(0);
-
-                DeviceOnLineCountVO xixunLed = new DeviceOnLineCountVO();
-                xiXuns.forEach(
-                        device -> {
-                            String s = redisUtils.get(DeviceRedisKey.XIXUN + device.getLightemitControlCode());
-                            if (s != null) {
-                                RedisDeviceStatus redisDeviceStatus = JSON.parseObject(s, RedisDeviceStatus.class);
-                                if (redisDeviceStatus.getStatus() == 0) {
-                                    //鍦ㄧ嚎
-                                    onLine.getAndIncrement();
-                                } else {
-                                    //绂荤嚎
-                                    offLine.getAndIncrement();
-                                }
-                            } else {
-                                offLine.getAndIncrement();
-                            }
-                        }
-                );
-
-                xixunLed.setTotalCount(xiXuns.size());
-                xixunLed.setOnlineCount(onLine.get());
-                xixunLed.setOfflineCount(offLine.get());
-
-                onLineCountVO.setLedXiXun(xixunLed);
-                System.out.println("鐔欐睕鎵ц鏃堕棿: " + LocalDateTime.now());
-                countDownLatchUtil.countDown(str);
-            }
-        }).start();
+//        List<PoleLightemitEntity> xiXuns = SpringContextHolder.getBean(PoleLightemitService.class).listLedOnHome();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//                AtomicInteger onLine = new AtomicInteger(0);
+//                AtomicInteger offLine = new AtomicInteger(0);
+//
+//                DeviceOnLineCountVO xixunLed = new DeviceOnLineCountVO();
+//                xiXuns.forEach(
+//                        device -> {
+//                            String s = redisUtils.get(DeviceRedisKey.XIXUN + device.getLightemitControlCode());
+//                            if (s != null) {
+//                                RedisDeviceStatus redisDeviceStatus = JSON.parseObject(s, RedisDeviceStatus.class);
+//                                if (redisDeviceStatus.getStatus() == 0) {
+//                                    //鍦ㄧ嚎
+//                                    onLine.getAndIncrement();
+//                                } else {
+//                                    //绂荤嚎
+//                                    offLine.getAndIncrement();
+//                                }
+//                            } else {
+//                                offLine.getAndIncrement();
+//                            }
+//                        }
+//                );
+//
+//                xixunLed.setTotalCount(xiXuns.size());
+//                xixunLed.setOnlineCount(onLine.get());
+//                xixunLed.setOfflineCount(offLine.get());
+//
+//                onLineCountVO.setLedXiXun(xixunLed);
+//                System.out.println("鐔欐睕鎵ц鏃堕棿: " + LocalDateTime.now());
+//                countDownLatchUtil.countDown(str);
+//            }
+//        }).start();
         try {
             countDownLatch.await(20000, TimeUnit.MILLISECONDS);
             countDownLatchUtil.remove(str);
@@ -646,7 +649,7 @@
         setCount(PoleResult);
 
         CommonPage commonPage = ListPagingUtils.pages(PoleResult, pageNo, pageSize);
-
+//
         return commonPage;
     }
 
@@ -745,7 +748,6 @@
 //        }
 //        return list;
 //    }
-
     public List<Pole> isTrue(List<Pole> list, PoleStatesParam param) {
         //瀹炰綋鐏潌
         List<Pole> isTrue = new ArrayList<>();
@@ -864,8 +866,8 @@
      *
      * @return 鏄惁鎴愬姛
      */
-    public boolean unBindPole(Long poleId, String deviceCode) {
-        return poleBindingService.unBindPole(poleId, deviceCode);
+    public boolean unBindPole(Long poleId, String deviceCode, Integer deviceType) {
+        return poleBindingService.unBindPole(poleId, deviceCode, deviceType);
     }
 
 
@@ -1049,7 +1051,7 @@
      * @return 璁惧鐘舵�佸垪琛�
      */
     public List<DeviceStatus> listStatusByDeviceCode(ArrayList<String> deviceCodeList) {
-        // 鏈�澶у彧鑳芥煡50涓�
+//         鏈�澶у彧鑳芥煡50涓�
         List<List<String>> split = CollectionUtil.split(deviceCodeList, 50);
         List<DeviceStatus> statusList = new ArrayList<>();
         for (List<String> list : split) {
@@ -1063,6 +1065,8 @@
                 }
             }
         }
+
+
         return statusList;
     }
 
@@ -1303,16 +1307,16 @@
         Long poleId = param.getPoleId();
         Pole pole = getById(poleId);
         PoleBinding air = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 3));
-        PoleBinding nova = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 1));
-        LedPlayerEntity LED = SpringContextHolder.getBean(LedPlayerEntityService.class).getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, nova.getDeviceCode()));
-        if (pole == null) {
-            throw new BusinessException("鐏潌涓嶅瓨鍦�");
-        }
         if (air == null) {
             throw new BusinessException("鏈粦瀹氬ぇ姘旂洃娴嬭澶�");
         }
+        PoleBinding nova = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 1));
         if (nova == null) {
             throw new BusinessException("鏈粦瀹歯ova璁惧");
+        }
+        LedPlayerEntity LED = SpringContextHolder.getBean(LedPlayerEntityService.class).getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, nova.getDeviceCode()));
+        if (pole == null) {
+            throw new BusinessException("鐏潌涓嶅瓨鍦�");
         }
         //鑾峰彇澶ф皵鐩戞祴鏁版嵁
         A5AtmosphereHeartbeatReportInnerFrame.HeartBeatDataPackage data = SpringContextHolder.getBean(AirDataService.class).getDataByPoleid(poleId);
@@ -1337,28 +1341,28 @@
         //璁剧疆瑙﹀彂鏉′欢    瀛樺叆Redis  15鍒嗛挓瓒呮椂   15鍒嗛挓鍐呭啀娆¤皟鐢ㄧ洿鎺ヨ繑鍥�
         redisUtils.set("redisStatusKeyTimeout", System.currentTimeMillis(), 60 * 15);
 
-        CountDownLatch countDownLatch = new CountDownLatch(7);//todo
+        CountDownLatch countDownLatch = new CountDownLatch(7);//todo 鍑犱釜璁惧璁剧疆涓哄嚑
         //鑾峰彇涓�涓�7浣嶉殢鏈烘暟
         String str = RandomStringUtils.randomAlphanumeric(7);
         countDownLatchUtil.push(str, countDownLatch);
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                SpringContextHolder.getBean(IpVolumeService.class).setCacheData();
-                countDownLatchUtil.countDown(str);
-                System.out.println("闊虫煴鎵ц");
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//                SpringContextHolder.getBean(IpVolumeService.class).setCacheData();
+//                countDownLatchUtil.countDown(str);
+//                System.out.println("闊虫煴鎵ц");
+//
+//            }
+//        }).start();
 
-            }
-        }).start();
-
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                SpringContextHolder.getBean(MonitorService.class).setCacheData();
-                countDownLatchUtil.countDown(str);
-                System.out.println("鎽勫儚澶存墽琛�");
-            }
-        }).start();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//                SpringContextHolder.getBean(MonitorService.class).setCacheData();
+//                countDownLatchUtil.countDown(str);
+//                System.out.println("鎽勫儚澶存墽琛�");
+//            }
+//        }).start();
         new Thread(new Runnable() {
             @Override
             public void run() {
@@ -1383,14 +1387,14 @@
                 System.out.println("澶ф皵鎵ц");
             }
         }).start();
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                SpringContextHolder.getBean(PoleLightemitService.class).setCacheData();
-                countDownLatchUtil.countDown(str);
-                System.out.println("鐔欐睕鎵ц");
-            }
-        }).start();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//                SpringContextHolder.getBean(PoleLightemitService.class).setCacheData();
+//                countDownLatchUtil.countDown(str);
+//                System.out.println("鐔欐睕鎵ц");
+//            }
+//        }).start();
         new Thread(new Runnable() {
             @Override
             public void run() {
@@ -1399,14 +1403,14 @@
                 System.out.println("璇虹摝鎵ц");        //todo 璇虹摝鏁呴殰鏆傛棤
             }
         }).start();
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                SpringContextHolder.getBean(PoleLightemitService.class).setCacheData();
-                countDownLatchUtil.countDown(str);
-                System.out.println("鐔欐睕鎵ц");
-            }
-        }).start();
+//        new Thread(new Runnable() {
+//            @Override
+//            public void run() {
+//                SpringContextHolder.getBean(PoleLightemitService.class).setCacheData();
+//                countDownLatchUtil.countDown(str);
+//                System.out.println("鐔欐睕鎵ц");
+//            }
+//        }).start();
 
 
         try {
@@ -1418,4 +1422,4 @@
 
     }
 
-}
\ No newline at end of file
+}

--
Gitblit v1.9.3