From abef71a4699135dd5007d0e6fcc610dac0370ff3 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期四, 24 三月 2022 17:01:48 +0800
Subject: [PATCH] 灯杆倾斜

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java |   59 ++++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 44 insertions(+), 15 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 56c5b03..080201f 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
@@ -2,7 +2,9 @@
 
 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.*;
@@ -10,16 +12,20 @@
 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.mainboard.MainBoardInvokeSyncService;
+import com.sandu.ximon.admin.param.LightPoleHeelingListParam;
 import com.sandu.ximon.dao.domain.LightPoleHeeling;
 import com.sandu.ximon.dao.mapper.LightPoleHeelingMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.util.List;
 
 @Service
 @AllArgsConstructor
 public class LightPoleHeelingService extends BaseServiceImpl<LightPoleHeelingMapper, LightPoleHeeling> {
+    private LightPoleHeelingMapper lightPoleHeelingMapper;
+
     /**
      * 鏌ヨ鍏ㄩ儴鐏潌鍊句晶鍛婅
      */
@@ -33,22 +39,14 @@
     /**
      * 妯$硦鏌ヨ
      */
-    public List<LightPoleHeeling> listLightPoleHeelingByKeyword(String keyword) {
-
-        LambdaQueryWrapper<LightPoleHeeling> wrapper = Wrappers.lambdaQuery(LightPoleHeeling.class);
-        if (keyword != null) {
-            wrapper.like(LightPoleHeeling::getLightPoleName, keyword).or(
-                    lambdaQueryWrapper -> {
-                        lambdaQueryWrapper.like(LightPoleHeeling::getLightPoleId, keyword);
-                    }
-            ).or(
-                    lambdaQueryWrapper -> {
-                        lambdaQueryWrapper.like(LightPoleHeeling::getWarningNumber, keyword);
-                    }
-            );
+    public List<LightPoleHeeling> listLightPoleHeelingByKeyword(BaseConditionVO baseConditionVO, LightPoleHeelingListParam lightPoleHeelingListParam) {
+        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        if (lightPoleHeelingListParam == null) {
+            lightPoleHeelingListParam = new LightPoleHeelingListParam();
         }
-        List<LightPoleHeeling> forHelpList = list(wrapper);
-        return forHelpList;
+        List<LightPoleHeeling> lightPoleHeelings
+                = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword(), lightPoleHeelingListParam.getProcessingState());
+        return lightPoleHeelings;
     }
 
     /**
@@ -68,7 +66,12 @@
 
         A5LightPoleHeelingHeartbeatReportInnerFrame heartbeatReportInnerFrame
                 = new A5LightPoleHeelingHeartbeatReportInnerFrame().transformFrame(commonFrame.getPayload());
+
         if (heartbeatReportInnerFrame.isValidate()) {
+
+            //鐏潌鍊炬枩蹇冭烦鍖呬繚瀛樻暟鎹簱
+            saveLightPoleHeelingHeartbeat(deviceName, heartbeatReportInnerFrame.getHeartBeatDataPackage());
+
             return heartbeatReportInnerFrame.getHeartBeatDataPackage();
         } else {
             throw new BusinessException("鏁版嵁鏍¢獙閿欒锛岃閲嶆柊璇锋眰");
@@ -176,4 +179,30 @@
             throw new BusinessException("鏁版嵁鏍¢獙閿欒锛岃閲嶆柊璇锋眰");
         }
     }
+
+    /**
+     * 淇濆瓨蹇冭烦鍖呮暟鎹�
+     *
+     * @param deviceName
+     * @param heartBeatDataPackage
+     * @return
+     */
+    public boolean saveLightPoleHeelingHeartbeat(String deviceName, A5LightPoleHeelingHeartbeatReportInnerFrame.HeartBeatDataPackage heartBeatDataPackage) {
+
+        LightPoleHeeling lightPoleHeeling = new LightPoleHeeling();
+        lightPoleHeeling.setMac(deviceName);
+        lightPoleHeeling.setTheXAxis(heartBeatDataPackage.getTheXAxis());
+        lightPoleHeeling.setTheYAxis(heartBeatDataPackage.getTheYAxis());
+        lightPoleHeeling.setTheZAxis(heartBeatDataPackage.getTheZAxis());
+        if (Math.abs(heartBeatDataPackage.getTheXAxis()) >= 10 || Math.abs(heartBeatDataPackage.getTheYAxis()) >= 10) {
+            lightPoleHeeling.setWarningLevel("涓�绾ц鍛�");
+        } else if ((Math.abs(heartBeatDataPackage.getTheXAxis()) >= 5 && Math.abs(heartBeatDataPackage.getTheXAxis()) < 10)
+                || (Math.abs(heartBeatDataPackage.getTheYAxis()) >= 5 && Math.abs(heartBeatDataPackage.getTheYAxis()) < 10)) {
+            lightPoleHeeling.setWarningLevel("浜岀骇璀﹀憡");
+        } else {
+            lightPoleHeeling.setWarningLevel("姝e父");
+        }
+
+        return save(lightPoleHeeling);
+    }
 }

--
Gitblit v1.9.3