From 78c7b03e279cad29a6123e83da738edc1f00280c Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期四, 23 六月 2022 16:55:41 +0800
Subject: [PATCH] bug修复

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java |  122 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 115 insertions(+), 7 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
index 5622190..616465a 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
@@ -12,9 +12,11 @@
 import com.sandu.ximon.admin.utils.FileUtil;
 import com.sandu.ximon.admin.utils.HtmlTemplateUtils;
 import com.sandu.ximon.admin.utils.LightemitUtils;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
 import com.sandu.ximon.admin.vo.EquipmentInfomation;
 import com.sandu.ximon.dao.domain.Pole;
 import com.sandu.ximon.dao.domain.PoleLightemitEntity;
+import com.sandu.ximon.dao.enums.OrderByEnums;
 import com.sandu.ximon.dao.enums.PoleBindingEnums;
 import com.sandu.ximon.dao.mapper.PoleLightemitEntityMapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -63,13 +65,49 @@
      * @param isOnLine
      * @return
      */
-    public List<PoleLightemitEntity> listLed(String keyword, boolean isOnLine) {
+    public List<PoleLightemitEntity> listLed(String keyword, Integer order, Integer seq, boolean isOnLine) {
         List<PoleLightemitEntity> poleLightemitEntityList;
+        //鎺掑簭瀛楁
+        String orderByResult = "id";
+        //姝e簭銆佸�掑彊
+        String orderBySeq = OrderByEnums.ASC.getCode();
+        if (order != null) {
+            switch (order) {
+                case 1:
+                    orderByResult = OrderByEnums.LED_S_CODE.getCode();
+                    break;
+                case 2:
+                    orderByResult = OrderByEnums.LED_S_NAME.getCode();
+                    break;
+                case 3:
+                    orderByResult = OrderByEnums.LED_S_POLE_NAME.getCode();
+                    break;
+                case 4:
+                    orderByResult = OrderByEnums.LED_S_CREATE_TIME.getCode();
+                    break;
+                default:
+            }
+        }
+        if (seq != null) {
+            switch (seq) {
+                case 1:
+                    orderBySeq = " ASC";
+                    break;
+                case 2:
+                    orderBySeq = " DESC";
+                    break;
+                default:
+                    break;
+            }
+        }
+        //鎺掑簭鏂瑰紡
+        String orderBy = orderByResult + " " + orderBySeq;
+
         //瓒呯
         if (SecurityUtils.getClientId() == null) {
-            poleLightemitEntityList = poleLightemitDao.listLed(keyword, null);
+            poleLightemitEntityList = poleLightemitDao.listLed(keyword, null, orderBy);
         } else {
-            poleLightemitEntityList = poleLightemitDao.listLed(keyword, SecurityUtils.getUserId());
+            poleLightemitEntityList = poleLightemitDao.listLed(keyword, SecurityUtils.getUserId(), orderBy);
         }
 
         List<PoleLightemitEntity> temp = new ArrayList<>();
@@ -85,6 +123,35 @@
             }
         }
         return temp;
+    }
+
+
+    /**
+     * 缁戝畾浣跨敤
+     *
+     * @param keyword
+     * @return
+     */
+    public List<PoleLightemitEntity> listLedOnBinding(String keyword) {
+        List<PoleLightemitEntity> poleLightemitEntityList;
+
+
+        //瓒呯
+        if (SecurityUtils.getClientId() == null) {
+            poleLightemitEntityList = poleLightemitDao.listLedOnBinding(keyword, null);
+        } else {
+            poleLightemitEntityList = poleLightemitDao.listLedOnBinding(keyword, SecurityUtils.getUserId());
+        }
+
+        for (PoleLightemitEntity poleLightemitEntity : poleLightemitEntityList) {
+            //鏌ヨ璁惧鍦ㄧ嚎鐘舵��
+            boolean onLine = lightemitUtils.getLedOnLine(poleLightemitEntity.getLightemitControlCode());
+            //鏌ヨ灞忓箷鐨勫紑鍚姸鎬�
+            String isOpen = lightemitUtils.getIsScreenOpen(poleLightemitEntity.getLightemitControlCode());
+            poleLightemitEntity.setIsOpen(String.valueOf(isOpen));
+            poleLightemitEntity.setOnLine(onLine);
+        }
+        return poleLightemitEntityList;
     }
 
     /**
@@ -178,13 +245,24 @@
         boolean save = this.save(poleLightemit);
         // 缁戝畾鐏潌
 
-        if (save && poleLightemit.getPoleId() != null) {
+        if (save && poleLightemit.getStreetlightId() != null) {
             PoleBindingParam poleBindingParam = new PoleBindingParam();
             poleBindingParam.setDeviceCode(poleLightemit.getLightemitControlCode());
             poleBindingParam.setDeviceType(1);
             poleBindingParam.setDeviceName(poleLightemit.getLightemitName());
-            poleBindingService.bindPole(poleLightemit.getPoleId(), poleBindingParam);
+            poleBindingService.bindPole(poleLightemit.getStreetlightId(), poleBindingParam);
         }
+
+        /**
+         * 鐔欐睕led鏂板鏃ュ織璁板綍寮�濮�
+         */
+        List<String> listCode = new ArrayList<>();
+        listCode.add(poleLightemit.getLightemitControlCode());
+        String content = "{灞忓箷id锛�" + poleLightemit.getLightemitId() + "锛� 灞忓箷鍚嶇О锛�" + poleLightemit.getLightemitName() + "锛� 灞忓箷缂栫爜锛�" + poleLightemit.getLightemitControlCode() + " }";
+        StoreOperationRecordsUtils.storeOperationData(listCode, null, "鐔欐睕LED鏂板", content);
+        /**
+         * 鐔欐睕led鏂板鏃ュ織璁板綍缁撴潫
+         */
         //  poleStreetlightLightemitService.saveStreetlightLightemit(poleLightemit.getLightemitId(),poleLightemit.getStreetlightId());
     }
 
@@ -203,7 +281,7 @@
         boolean b = this.updateById(poleLightemit);
         // 缁戝畾鐏潌
 
-        if (b && poleLightemit.getPoleId() != null) {
+        if (b && poleLightemit.getStreetlightId() != null) {
             //鍏堝垹闄ょ粦瀹氬叧绯�
             poleBindingService.unBindPole(null, poleLightemit.getLightemitControlCode());
             //鍐嶇粦瀹�
@@ -211,26 +289,56 @@
             poleBindingParam.setDeviceCode(poleLightemit.getLightemitControlCode());
             poleBindingParam.setDeviceType(10);
             poleBindingParam.setDeviceName(poleLightemit.getLightemitName());
-            poleBindingService.bindPole(poleLightemit.getPoleId(), poleBindingParam);
+            poleBindingService.bindPole(poleLightemit.getStreetlightId(), poleBindingParam);
         }
+
+        /**
+         * 鐔欐睕led缂栬緫鏃ュ織璁板綍寮�濮�
+         */
+        List<String> listCode = new ArrayList<>();
+        listCode.add(byId.getLightemitControlCode());
+        String content = "{灞忓箷id锛�" + byId.getLightemitId() + "锛� 灞忓箷鍘熷悕锛�" + byId.getLightemitName() + "锛� 灞忓箷鍚嶇О锛�" + poleLightemit.getLightemitName() + "锛� 灞忓箷缂栫爜锛�" + byId.getLightemitControlCode() + " }";
+        StoreOperationRecordsUtils.storeOperationData(listCode, null, "鐔欐睕LED缂栬緫", content);
+        /**
+         * 鐔欐睕led缂栬緫鏃ュ織璁板綍缁撴潫
+         */
         // poleStreetlightLightemitService.saveStreetlightLightemit(poleLightemit.getLightemitId(),poleLightemit.getStreetlightId());
     }
 
     public boolean deletePoleLightemit(List<Long> ledIds) {
 
         List<PoleLightemitEntity> poleLightemitEntities = listByIds(ledIds);
+        if (poleLightemitEntities != null && poleLightemitEntities.size() != 0) {
+            throw new BusinessException("璁惧涓嶅瓨鍦�");
+        }
 
+        List<String> listCode = new ArrayList<>();
         // 鍒犻櫎璁惧缁戝畾
         if (poleLightemitEntities != null && poleLightemitEntities.size() != 0) {
             for (PoleLightemitEntity poleLightemitEntitie : poleLightemitEntities) {
                 if (poleLightemitEntitie.getLightemitControlCode() != null) {
                     //鍒犻櫎缁戝畾鍏崇郴//鍏堝垹闄ょ粦瀹氬叧绯�
+                    listCode.add(poleLightemitEntitie.getLightemitControlCode());
                     poleBindingService.unBindPole(poleLightemitEntitie.getLightemitControlCode());
                 }
             }
         }
         //鍒犻櫎璁惧
         boolean b = removeByIds(ledIds);
+
+        /**
+         * 鐔欐睕led鍒犻櫎鏃ュ織璁板綍寮�濮�
+         */
+        List<String> nameList = new ArrayList<>();
+        for (PoleLightemitEntity poleLightemitEntitie : poleLightemitEntities) {
+            nameList.add(poleLightemitEntitie.getLightemitName());
+        }
+
+        String content = "{鍒犻櫎鐔欐睕LED鐨勮澶囦俊鎭細" + nameList.toString() + " }";
+        StoreOperationRecordsUtils.storeOperationData(listCode, null, "鐔欐睕LED鍒犻櫎", content);
+        /**
+         * 鐔欐睕led鍒犻櫎鏃ュ織璁板綍缁撴潫
+         */
         return b;
         // poleStreetlightLightemitService.saveStreetlightLightemit(poleLightemit.getLightemitId(),poleLightemit.getStreetlightId());
     }

--
Gitblit v1.9.3