From e55c8b0a92eb9715edd90c31dfd4de51a47b588b Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 04 十一月 2022 17:40:08 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java |   64 +++++++++++++++++++++----------
 1 files changed, 43 insertions(+), 21 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
index 0b67404..4188b54 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
@@ -26,6 +26,7 @@
 import com.sandu.ximon.dao.enums.PoleBindingEnums;
 import com.sandu.ximon.dao.mapper.MonitorMapper;
 import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -36,6 +37,7 @@
 
 @Service
 @AllArgsConstructor
+@Slf4j
 public class MonitorService extends BaseServiceImpl<MonitorMapper, Monitor> {
     private final MonitorMapper monitorMapper;
     //钀ょ煶浜慉ppKey
@@ -173,30 +175,40 @@
     /**
      * 鍒犻櫎鎽勫儚澶�
      *
-     * @param Id
+     * @param
      * @return
      */
-    public boolean deleteMonitor(Long Id) {
-        Monitor monitor = getById(Id);
-        if (monitor == null) {
-            throw new BusinessException("鎵句笉鍒版憚鍍忓ご");
+    public boolean deleteMonitor(List<Long> ids) {
+        List<Long> idList = new ArrayList<Long>();
+        List<Monitor> monitors = listByIds(ids);
+        if (!monitors.isEmpty()) {
+            monitors.forEach(
+                    monitor -> {
+                        if (monitor == null) {
+                            throw new BusinessException("鎵句笉鍒版憚鍍忓ご");
+                        }
+                        PoleBinding one = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, monitor.getDeviceSerial()));
+                        if (one != null) {
+                            //鍒犻櫎鎽勫儚澶磋澶囧墠闇�瑕佸厛瑙g粦
+                            poleBindingService.unBindPole(null, monitor.getDeviceSerial());
+                        }
+                        /**
+                         * 鍒犻櫎鎽勫儚澶存棩蹇楄褰曞紑濮�
+                         */
+                        String content = "{鎽勫儚澶碈ode锛�" + monitor.getDeviceSerial() + "锛� 鎽勫儚澶村悕绉帮細" + monitor.getDeviceName() + " }";
+                        List<String> listCode = new ArrayList<>();
+                        listCode.add(monitor.getDeviceSerial());
+                        StoreOperationRecordsUtils.storeOperationData(listCode, null, "鍒犻櫎鎽勫儚澶�", content);
+                        /**
+                         * 鍒犻櫎鎽勫儚澶存棩蹇楄褰曠粨鏉�
+                         */
+                        idList.add(monitor.getId());
+                    }
+            );
         }
-        PoleBinding one = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, monitor.getDeviceSerial()));
-        if (one != null) {
-            //鍒犻櫎鎽勫儚澶磋澶囧墠闇�瑕佸厛瑙g粦
-            poleBindingService.unBindPole(null, monitor.getDeviceSerial());
-        }
-        /**
-         * 鍒犻櫎鎽勫儚澶存棩蹇楄褰曞紑濮�
-         */
-        String content = "{鎽勫儚澶碈ode锛�" + monitor.getDeviceSerial() + "锛� 鎽勫儚澶村悕绉帮細" + monitor.getDeviceName() + " }";
-        List<String> listCode = new ArrayList<>();
-        listCode.add(monitor.getDeviceSerial());
-        StoreOperationRecordsUtils.storeOperationData(listCode, null, "鍒犻櫎鎽勫儚澶�", content);
-        /**
-         * 鍒犻櫎鎽勫儚澶存棩蹇楄褰曠粨鏉�
-         */
-        return removeById(Id);
+        //鍏ㄩ儴鍒犻櫎鎴愬姛
+        return removeByIds(idList);
+
     }
 
     /**
@@ -208,7 +220,17 @@
         paramMap.put("appKey", AppKey);
         paramMap.put("appSecret", Secret);
         String s = HttpUtil.post(YSY_URL + ACCESSTOKEN_URL, paramMap);
+        if (!s.startsWith("{") || !s.endsWith("}")) {
+            log.error("鑾峰彇鎽勫儚澶磘oken澶辫触,鏍煎紡鏈夎!");
+        }
         YSY_AccessTokenDto accessTokenDto = JSON.parseObject(s, YSY_AccessTokenDto.class);
+
+        //浜屾鑾峰彇
+        if (accessTokenDto == null) {
+            log.error("鑾峰彇鎽勫儚澶磘oken澶辫触,鏍煎紡鏈夎!");
+            s = HttpUtil.post(YSY_URL + ACCESSTOKEN_URL, paramMap);
+            accessTokenDto = JSON.parseObject(s, YSY_AccessTokenDto.class);
+        }
         return accessTokenDto.getData().getAccessToken();
     }
 

--
Gitblit v1.9.3