From bfce748e37a753c729e15dd233600379f504d019 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期四, 28 四月 2022 13:59:28 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java |   66 +++++++++++++++++++++++---------
 1 files changed, 47 insertions(+), 19 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java
index 2343341..3d8661d 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java
@@ -1,13 +1,16 @@
 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.dao.domain.AirData;
+import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5AtmosphereReportEnum;
+import com.sandu.ximon.admin.manager.iot.rrpc.enums.AtmoFunctionCode;
+import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.RedisUtils;
+import com.sandu.ximon.dao.bo.AirEquipmentBo;
 import com.sandu.ximon.dao.domain.AirEquipment;
-import com.sandu.ximon.dao.domain.Monitor;
-import com.sandu.ximon.dao.mapper.AirDataMapper;
 import com.sandu.ximon.dao.mapper.AirEquipmentMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
@@ -18,27 +21,39 @@
 @AllArgsConstructor
 public class AirEquipmentService extends BaseServiceImpl<AirEquipmentMapper, AirEquipment> {
 
-    /**
-     * 鏌ヨ鍏ㄩ儴澶ф皵璁惧鏁版嵁
-     */
-    public List<AirEquipment> listAirEquipment() {
-        LambdaQueryWrapper<AirEquipment> wrapper = Wrappers.lambdaQuery(AirEquipment.class);
-        List<AirEquipment> list = list(wrapper);
+    private final AirEquipmentMapper airEquipmentMapper;
 
-        return list;
-    }
 
     /**
      * 妯$硦鏌ヨ
      */
-    public List<AirEquipment> listAirEquipmentByKeyword(String keyword) {
-
-        LambdaQueryWrapper<AirEquipment> wrapper = Wrappers.lambdaQuery(AirEquipment.class);
-        if(keyword != null){
-            wrapper.like(AirEquipment::getBelongTo,keyword);
+    public List<AirEquipmentBo> listAirEquipmentByKeyword(BaseConditionVO baseConditionVO, String keyword) {
+        if (baseConditionVO != null) {
+            PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
         }
-        List<AirEquipment> airDataList = list(wrapper);
-        return airDataList;
+        List<AirEquipmentBo> airEquipmentBos;
+        if (SecurityUtils.getClientId() == null) {
+            airEquipmentBos = airEquipmentMapper.listAirEquipmentByIds(keyword, null);
+        } else {
+            airEquipmentBos = airEquipmentMapper.listAirEquipmentByIds(keyword, SecurityUtils.getUserId());
+        }
+
+        return airEquipmentBos;
+    }
+
+    /**
+     * 娣诲姞澶ф皵璁惧鏁版嵁
+     *
+     * @return
+     */
+    public void addAirEquipment(AirEquipment airEquipment) {
+        AirEquipment one = getOne(Wrappers.lambdaQuery(AirEquipment.class).eq(AirEquipment::getMac, airEquipment.getMac()));
+//        //瀛樺偍璁惧鐘舵�佸埌缂撳瓨
+//        RedisUtils.getBean().set(AtmoFunctionCode.AIR_EQUIPMENT_STATE.getCode() + airEquipment.getMac()
+//                , 1, 300L);
+        if (one == null) {
+            save(airEquipment);
+        }
     }
 
     /**
@@ -54,4 +69,17 @@
         }
         return removeById(Id);
     }
+
+    /**
+     * 鏍规嵁Mac澶ф皵璁惧鏁版嵁璇︽儏
+     */
+    public AirEquipment getAirEquipment(String mac) {
+        AirEquipment one = getOne(Wrappers.lambdaQuery(AirEquipment.class).eq(AirEquipment::getMac, mac));
+        if (RedisUtils.getBean().get(AtmoFunctionCode.AIR_HEARTBEAT_STATE.getCode() + mac) != null) {
+            one.setState(1);
+        } else {
+            one.setState(0);
+        }
+        return one;
+    }
 }

--
Gitblit v1.9.3