From dda268997ca8f8a364f7c19b45d7a43a50a98efe Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 25 十月 2022 18:00:11 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java |   63 +++++++++++++++++++++++++++----
 1 files changed, 55 insertions(+), 8 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java
index d147868..19b713c 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java
@@ -1,22 +1,26 @@
 package com.sandu.ximon.admin.service;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.PageHelper;
 import com.sandu.common.execption.BusinessException;
 import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.service.impl.BaseServiceImpl;
 import com.sandu.ximon.admin.manager.iot.frame.A5Frame;
-import com.sandu.ximon.admin.manager.iot.frame.inner.report.*;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5LightPoleHeelingHeartbeatReportInnerFrame;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5LightPoleHeelingOperationReportInnerFrame;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5LightPoleHeelingQueryReportInnerFrame;
 import com.sandu.ximon.admin.manager.iot.frame.inner.request.*;
 import com.sandu.ximon.admin.manager.iot.rrpc.dto.CommonFrame;
 import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5OrderEnum;
+import com.sandu.ximon.admin.manager.iot.rrpc.enums.LightPoleHeelingEnum;
 import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService;
 import com.sandu.ximon.admin.param.LightPoleHeelingListParam;
-import com.sandu.ximon.dao.domain.Light;
+import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.RedisUtils;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
+import com.sandu.ximon.admin.vo.EquipmentInfomation;
 import com.sandu.ximon.dao.domain.LightPoleHeeling;
 import com.sandu.ximon.dao.domain.LightPoleHeelingEquipment;
-import com.sandu.ximon.dao.domain.PoleBinding;
 import com.sandu.ximon.dao.mapper.LightPoleHeelingMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
@@ -33,7 +37,9 @@
      * 妯$硦鏌ヨ
      */
     public List<LightPoleHeeling> listLightPoleHeelingByKeyword(BaseConditionVO baseConditionVO, LightPoleHeelingListParam lightPoleHeelingListParam) {
-        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        if (baseConditionVO != null) {
+            PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        }
         if (lightPoleHeelingListParam == null) {
             lightPoleHeelingListParam = new LightPoleHeelingListParam();
         }
@@ -43,10 +49,42 @@
             lightPoleHeelingListParam.setKeyword(lightPoleHeelingListParam.getKeyword().trim());
         }
 
-        List<LightPoleHeeling> lightPoleHeelings
-                = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword(), lightPoleHeelingListParam.getProcessingState());
+        List<LightPoleHeeling> lightPoleHeelings;
+        if (SecurityUtils.getClientId() == null) {
+            lightPoleHeelings = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword()
+                    , lightPoleHeelingListParam.getProcessingState(), null);
+        } else {
+            lightPoleHeelings = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword()
+                    , lightPoleHeelingListParam.getProcessingState(), SecurityUtils.getUserId());
+        }
 
         return lightPoleHeelings;
+    }
+
+    /**
+     * 鏍规嵁Mac鑾峰彇鏈�鏂版暟鎹�
+     */
+    public EquipmentInfomation getLightPoleHeelingByMac(String mac) {
+        EquipmentInfomation equipmentInfo = new EquipmentInfomation();
+        equipmentInfo.setEquipmentType("鏉嗕綋鍊炬祴");
+        if (mac == null || mac.trim().length() == 0) {
+            return equipmentInfo;
+        }
+
+        LightPoleHeeling one = getOne(Wrappers.lambdaQuery(LightPoleHeeling.class).eq(LightPoleHeeling::getMac, mac));
+        if (one != null) {
+            equipmentInfo.setEquipmentCreateTime(one.getCreateTime());
+            equipmentInfo.setEquipmentMac(one.getMac());
+
+        }
+        //瀛樺偍璁惧鐘舵�佸埌缂撳瓨
+        String s = RedisUtils.getBean().get(LightPoleHeelingEnum.LIGHT_POLE_HEELING_STATE.getCode() + mac);
+        if (s == null) {
+            equipmentInfo.setEquipmentState("绂荤嚎");
+        } else {
+            equipmentInfo.setEquipmentState("鍦ㄧ嚎");
+        }
+        return equipmentInfo;
     }
 
     /**
@@ -61,6 +99,7 @@
         System.out.println(a5Frame + "            -----a5Frame");
 
         CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceName, a5Frame);
+        StoreOperationRecordsUtils.storeInnerFrameData(deviceName, "鏉嗕綋鍊炬枩-蹇冭烦鍖�", a5Frame, commonFrame);
         System.out.println(commonFrame + "            -----commonFrame");
 
 
@@ -91,6 +130,7 @@
         System.out.println(a5Frame + "            -----a5Frame");
 
         CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceName, a5Frame);
+        StoreOperationRecordsUtils.storeInnerFrameData(deviceName, "鏉嗕綋鍊炬枩-鏌ヨ蹇冭烦鍖呴棿闅旀椂闂�", a5Frame, commonFrame);
         System.out.println(commonFrame + "            -----commonFrame");
 
 
@@ -115,6 +155,7 @@
         System.out.println(a5Frame + "            -----a5Frame");
 
         CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceName, a5Frame);
+        StoreOperationRecordsUtils.storeInnerFrameData(deviceName, "鏉嗕綋鍊炬枩-杞噸鍚�", a5Frame, commonFrame);
         System.out.println(commonFrame + "            -----commonFrame");
 
 
@@ -145,6 +186,7 @@
         System.out.println(a5Frame + "            -----a5Frame");
 
         CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(devicesName, a5Frame);
+        StoreOperationRecordsUtils.storeInnerFrameData(devicesName, "鏉嗕綋鍊炬枩-璁剧疆蹇冭烦鍖呴棿闅旀椂闂�", a5Frame, commonFrame);
         System.out.println(commonFrame + "            -----commonFrame");
 
         A5LightPoleHeelingOperationReportInnerFrame operationReportInnerFrame
@@ -169,6 +211,8 @@
         System.out.println(a5Frame + "            -----a5Frame");
 
         CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(devicesName, a5Frame);
+        StoreOperationRecordsUtils.storeInnerFrameData(devicesName, "鏉嗕綋鍊炬枩-璁剧疆浼犳劅鍣ㄤ负鍒濆鐘舵��", a5Frame, commonFrame);
+
         System.out.println(commonFrame + "            -----commonFrame");
 
         A5LightPoleHeelingOperationReportInnerFrame operationReportInnerFrame
@@ -202,6 +246,10 @@
         } else {
             lightPoleHeeling.setWarningLevel(0);//姝e父
         }
+
+        //瀛樺偍璁惧鐘舵�佸埌缂撳瓨
+        RedisUtils.getBean().set(LightPoleHeelingEnum.LIGHT_POLE_HEELING_STATE.getCode() + deviceName
+                , heartBeatDataPackage, 300L);
         /**
          * 灏嗙伅鏉嗗�炬枩纭欢娣诲姞鍒扮‖浠惰〃
          */
@@ -209,7 +257,6 @@
         if (one == null) {
             LightPoleHeelingEquipment equipment = new LightPoleHeelingEquipment();
             equipment.setMac(deviceName);
-            lightPoleHeelingEquipmentService.save(equipment);
         }
 
         return save(lightPoleHeeling);

--
Gitblit v1.9.3