From c8ce26aac0004e249a0cef35fe15b2ddb280ad25 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期三, 27 四月 2022 15:51:10 +0800
Subject: [PATCH] 大气数据推送到LED

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3ChargingService.java |   74 ++++++++++++++++++++++++++----------
 1 files changed, 53 insertions(+), 21 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3ChargingService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3ChargingService.java
index 8b1fd16..f5ed65b 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3ChargingService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3ChargingService.java
@@ -19,6 +19,7 @@
 import com.sandu.ximon.admin.param.C3ChargingAddParam;
 import com.sandu.ximon.admin.param.C3ChargingParam;
 import com.sandu.ximon.admin.param.PoleBindingParam;
+import com.sandu.ximon.admin.security.SecurityUtils;
 import com.sandu.ximon.admin.utils.LogUtils;
 import com.sandu.ximon.admin.utils.RedisUtils;
 import com.sandu.ximon.dao.bo.C3ChargingBo;
@@ -56,7 +57,7 @@
      * @return 鏄惁鎴愬姛
      */
     public boolean updateReportState(String deviceName, String c3Mac, String statusBit, String deviceTemperature) {
-        C3mCharging one = getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getPoleDevicesCode, deviceName));
+        C3mCharging one = getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getMcuUdid, c3Mac));
         if (one != null) {
 //            one.setStatusBit(Integer.valueOf(statusBit));
             one.setDeviceTemperature(deviceTemperature);
@@ -95,15 +96,6 @@
                 c3mChargingChargeService.initCharge((c3mCharging1.getC3Id()).intValue());
             }
 
-            //娣诲姞缁戝畾鍏崇郴
-            Pole pole = poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getDeviceCode, deviceName));
-            if(pole != null){
-                PoleBindingParam poleBindingParam = new PoleBindingParam();
-                poleBindingParam.setDeviceType(2);
-                poleBindingParam.setDeviceCode(mcuUdid);
-                bindingService.bindPole(pole.getId(), poleBindingParam);
-            }
-
         } else {
             //灏嗚澶囦俊鎭坊鍔犲埌鍏呯數妗╄澶囪〃
             one.setPoleDevicesCode(deviceName);
@@ -116,6 +108,28 @@
                 c3mChargingChargeService.initCharge((c3mCharging1.getC3Id()).intValue());
             }
         }
+//        /**
+//         * 娣诲姞缁戝畾鍏崇郴寮�濮�
+//         */
+//        Pole pole = poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getDeviceCode, deviceName));
+//        if (pole == null) {
+//            Pole pole1 = new Pole();
+//            pole1.setDeviceCode(deviceName);
+//            pole1.setPoleName(deviceName);
+//            pole1.setPoleCode(poleService.generatePoleCode());
+//            poleService.save(pole1);
+//        }
+//
+//        Long poleId = poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getDeviceCode, deviceName)).getId();
+//        PoleBindingParam poleBindingParam = new PoleBindingParam();
+//        poleBindingParam.setDeviceType(2);
+//        poleBindingParam.setDeviceCode(mcuUdid);
+//        bindingService.bindPole(poleId, poleBindingParam);
+
+        /**
+         * 娣诲姞缁戝畾鍏崇郴缁撴潫
+         */
+
         //鍚屾鏃堕棿鎴�
         String date = new SimpleDateFormat("yyMMddHHmmss").format(new Date());
         String s = SetCalendar(c3Mac, Integer.parseInt(date.substring(0, 2)), Integer.parseInt(date.substring(2, 4)),
@@ -170,7 +184,9 @@
      * @return
      */
     public List<C3ChargingBo> getC3ChargingListByKeyword(BaseConditionVO baseConditionVO, C3ChargingParam c3ChargingParam) {
-        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        if (baseConditionVO != null) {
+            PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        }
         if (c3ChargingParam == null) {
             c3ChargingParam = new C3ChargingParam();
         }
@@ -180,12 +196,22 @@
             c3ChargingParam.setKeyword(c3ChargingParam.getKeyword().trim());
         }
 
-        List<C3ChargingBo> c3ChargingBoList = c3mChargingMapper.listC3mChargingDto(c3ChargingParam.getKeyword());
+        List<C3ChargingBo> c3ChargingBoList;
+        if (SecurityUtils.getClientId() == null) {
+            c3ChargingBoList = c3mChargingMapper.listC3mChargingDto(c3ChargingParam.getKeyword(), null);
+        } else {
+            c3ChargingBoList = c3mChargingMapper.listC3mChargingDto(c3ChargingParam.getKeyword(), SecurityUtils.getUserId());
+        }
         for (C3ChargingBo one : c3ChargingBoList) {
             String s = RedisUtils.getBean().get(C3mRedisConstant.C3_STATUS.getCode() + one.getC3Mac());
-            if(s != null){
-                one.setStatusBit(1);
-            }else{
+            if (s != null) {
+                try {
+                    A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage beatDataPackage = JSON.parseObject(s, A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage.class);
+                    one.setStatusBit((Integer.valueOf(beatDataPackage.getStatusBit())));
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+            } else {
                 one.setStatusBit(0);
             }
 
@@ -195,14 +221,20 @@
 
     /**
      * 鏌ヨ鍏呯數妗�
+     *
      * @return
      */
-    public C3mCharging getByC3Mac(String c3Mac){
-        C3mCharging one = getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getC3Mac, c3Mac));
+    public C3mCharging getByC3Mac(String udid) {
+        C3mCharging one = getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getMcuUdid, udid));
         String s = RedisUtils.getBean().get(C3mRedisConstant.C3_STATUS.getCode() + one.getC3Mac());
-        if(s != null){
-            one.setStatusBit(1);
-        }else{
+        if (s != null) {
+            try {
+                A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage beatDataPackage = JSON.parseObject(s, A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage.class);
+                one.setStatusBit((Integer.valueOf(beatDataPackage.getStatusBit())));
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        } else {
             one.setStatusBit(0);
         }
         return one;
@@ -775,7 +807,7 @@
         if (one == null) {
             throw new BusinessException("鏈壘鍒扮粦瀹氬叧绯�");
         }
-        return getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getC3Mac, one.getDeviceCode()));
+        return getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getMcuUdid, one.getDeviceCode()));
     }
 
 

--
Gitblit v1.9.3