From ae2fc9a4f29e6d9d0b95f63585b058ab7c60c5be Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期一, 16 五月 2022 18:16:16 +0800
Subject: [PATCH] fix

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java |   54 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 49 insertions(+), 5 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 9f03fab..5622190 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
@@ -4,6 +4,7 @@
 import com.google.gson.Gson;
 import com.sandu.common.execption.BusinessException;
 import com.sandu.common.service.impl.BaseServiceImpl;
+import com.sandu.common.util.SpringContextHolder;
 import com.sandu.ximon.admin.config.RealtimeServerBean;
 import com.sandu.ximon.admin.entity.*;
 import com.sandu.ximon.admin.param.PoleBindingParam;
@@ -11,8 +12,10 @@
 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.vo.EquipmentInfomation;
 import com.sandu.ximon.dao.domain.Pole;
 import com.sandu.ximon.dao.domain.PoleLightemitEntity;
+import com.sandu.ximon.dao.enums.PoleBindingEnums;
 import com.sandu.ximon.dao.mapper.PoleLightemitEntityMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -68,16 +71,25 @@
         } else {
             poleLightemitEntityList = poleLightemitDao.listLed(keyword, SecurityUtils.getUserId());
         }
-        if (isOnLine) {
-            return ledOnline(poleLightemitEntityList);
-        } else {
-            ledOnlineCheck(poleLightemitEntityList);
-            return poleLightemitEntityList;
+
+        List<PoleLightemitEntity> temp = new ArrayList<>();
+        for (PoleLightemitEntity poleLightemitEntity : poleLightemitEntityList) {
+            //鏌ヨ璁惧鍦ㄧ嚎鐘舵��
+            boolean onLine = lightemitUtils.getLedOnLine(poleLightemitEntity.getLightemitControlCode());
+            //鏌ヨ灞忓箷鐨勫紑鍚姸鎬�
+            String isOpen = lightemitUtils.getIsScreenOpen(poleLightemitEntity.getLightemitControlCode());
+            poleLightemitEntity.setIsOpen(String.valueOf(isOpen));
+            poleLightemitEntity.setOnLine(onLine);
+            if (!isOnLine || onLine) {
+                temp.add(poleLightemitEntity);
+            }
         }
+        return temp;
     }
 
     /**
      * 鍙栧嚭鍦ㄧ嚎鐨勭啓璁�
+     *
      * @param list
      * @return
      */
@@ -102,6 +114,7 @@
 
     /**
      * 璁剧疆鍦ㄧ嚎鐘舵��
+     *
      * @param list
      */
     public void ledOnlineCheck(List<PoleLightemitEntity> list) {
@@ -134,6 +147,32 @@
         return xiXun;
     }
 
+    /**
+     * 棣栭〉鐏潌缁戝畾淇℃伅
+     */
+    public EquipmentInfomation getLedByLightControlCodeInfo(String lightControlCode) {
+        EquipmentInfomation equipmentInfo = new EquipmentInfomation();
+        equipmentInfo.setEquipmentType("鐔欒LED");
+        if (lightControlCode == null || lightControlCode.trim().length() == 0) {
+            return equipmentInfo;
+        }
+
+        PoleLightemitEntity xiXun = getOne(Wrappers.lambdaQuery(PoleLightemitEntity.class).eq(PoleLightemitEntity::getLightemitControlCode, lightControlCode));
+        if (xiXun != null) {
+            equipmentInfo.setEquipmentCreateTime(xiXun.getCreateTime());
+            equipmentInfo.setEquipmentMac(xiXun.getLightemitControlCode());
+            equipmentInfo.setEquipmentName(xiXun.getLightemitName());
+        }
+        boolean isScreenOpen = lightemitUtils.getLedOnLine(xiXun.getLightemitControlCode());
+        if (isScreenOpen) {
+            equipmentInfo.setEquipmentState("鍦ㄧ嚎");
+        } else {
+            equipmentInfo.setEquipmentState("绂荤嚎");
+        }
+
+        return equipmentInfo;
+    }
+
 
     public void savePoleLightemit(PoleLightemitEntity poleLightemit) {
         boolean save = this.save(poleLightemit);
@@ -155,6 +194,11 @@
         if (byId == null) {
             throw new BusinessException("鏈壘鍒癓ED灞�");
         }
+
+        boolean belong = SpringContextHolder.getBean(PoleBindingService.class).isBelong(byId.getLightemitControlCode(), PoleBindingEnums.XIXUN);
+        if (!belong) {
+            throw new BusinessException("璇ヨ澶囦笉灞炰簬鎮�,涓嶈兘淇敼璁惧淇℃伅");
+        }
         poleLightemit.setLightemitId(ledId);
         boolean b = this.updateById(poleLightemit);
         // 缁戝畾鐏潌

--
Gitblit v1.9.3