From 0a30812acaa26ebe654340f7e749a6801b63b194 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 21 十月 2022 16:32:36 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataNongGengService.java |   93 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 86 insertions(+), 7 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataNongGengService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataNongGengService.java
index 407ba53..d0bde78 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataNongGengService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataNongGengService.java
@@ -1,18 +1,22 @@
 package com.sandu.ximon.admin.service;
 
+import cn.hutool.core.collection.CollUtil;
+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.inner.report.A5AtmosphereHeartbeatReportInnerFrame;
 import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereNewHeartbeatReportInnerFrame;
 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.domain.AirData;
+import com.sandu.ximon.dao.bo.AirDataNongGengBo;
 import com.sandu.ximon.dao.domain.AirDataNongGeng;
-import com.sandu.ximon.dao.domain.AirEquipment;
 import com.sandu.ximon.dao.domain.AirEquipmentNongGeng;
 import com.sandu.ximon.dao.mapper.AirDataNongGengMapper;
 import lombok.AllArgsConstructor;
-import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
+
+import java.util.List;
 
 /**
  * 澶ф皵鏁版嵁锛屽啘鑰曠‖浠�
@@ -33,7 +37,45 @@
     public boolean saveReportData(String deviceName, A5AtmosphereNewHeartbeatReportInnerFrame.HeartBeatDataPackage heartBeatDataPackage) {
 
         AirDataNongGeng airDataNongGeng = new AirDataNongGeng();
-        BeanUtils.copyProperties(heartBeatDataPackage, airDataNongGeng);
+        //("鍣0")
+        airDataNongGeng.setNoise(heartBeatDataPackage.getNoise() == null ? null : heartBeatDataPackage.getNoise() + "dB");
+        //("纭寲姘�")
+        airDataNongGeng.setHydrogenSulfide(heartBeatDataPackage.getHydrogenSulfide() == null ? null : heartBeatDataPackage.getHydrogenSulfide() + "");
+        //("SO2 娴撳害")
+        airDataNongGeng.setSo2(heartBeatDataPackage.getSo2() == null ? null : heartBeatDataPackage.getSo2() + "ppb");
+        //("NO2 娴撳害")
+        airDataNongGeng.setNo2(heartBeatDataPackage.getNo2() == null ? null : heartBeatDataPackage.getNo2() + "ppb");
+        //("CO 娴撳害")
+        airDataNongGeng.setCo(heartBeatDataPackage.getCo() == null ? null : heartBeatDataPackage.getCo() + "ppb");
+        //("O3 娴撳害")
+        airDataNongGeng.setO3(heartBeatDataPackage.getO3() == null ? null : heartBeatDataPackage.getO3() + "ppb");
+        //("PM2.5 娴撳害")
+        airDataNongGeng.setPm2point5(heartBeatDataPackage.getPm2point5() == null ? null : heartBeatDataPackage.getPm2point5() + "ug/m鲁");
+        //("PM10 娴撳害")
+        airDataNongGeng.setPm10(heartBeatDataPackage.getPm10() == null ? null : heartBeatDataPackage.getPm10() + "ug/m鲁");
+        //("绌烘皵娓╁害")
+        airDataNongGeng.setAirTemperature(heartBeatDataPackage.getAirTemperature() == null ? null : heartBeatDataPackage.getAirTemperature() + "鈩�");
+        //("绌烘皵婀垮害")
+        airDataNongGeng.setAirHumidity(heartBeatDataPackage.getAirHumidity() == null ? null : heartBeatDataPackage.getAirHumidity() + "%");
+        //("澶ф皵鍘嬪己")
+        airDataNongGeng.setAirPressure(heartBeatDataPackage.getAirPressure() == null ? null : heartBeatDataPackage.getAirPressure() + "hPa");
+        //("椋庨��")
+        airDataNongGeng.setWindSpeed(heartBeatDataPackage.getWindSpeed() == null ? null : heartBeatDataPackage.getWindSpeed() + "m/s");
+        //("椋庡悜")
+        airDataNongGeng.setWindDirection(heartBeatDataPackage.getWindDirection() == null ? null : heartBeatDataPackage.getWindDirection() + "掳");
+        //("10 鍒嗛挓闆ㄩ噺")
+        airDataNongGeng.setTenRainfallMin(heartBeatDataPackage.getTenRainfallMin() == null ? null : heartBeatDataPackage.getTenRainfallMin() + "mm");
+        //("杈愬皠")
+        airDataNongGeng.setRadiation(heartBeatDataPackage.getRadiation() == null ? null : heartBeatDataPackage.getRadiation() + "0W/銕�");
+        //("鍏夌収")
+        airDataNongGeng.setIllumination(heartBeatDataPackage.getIllumination() == null ? null : heartBeatDataPackage.getIllumination() + "Klux");
+        //绱鎸囨暟
+        airDataNongGeng.setUltraviolet(heartBeatDataPackage.getUltraviolet() == null ? null : heartBeatDataPackage.getUltraviolet() + "");
+        //CO2
+        airDataNongGeng.setCo2(heartBeatDataPackage.getCo2() == null ? null : heartBeatDataPackage.getCo2() + "0ppm");
+        //璐熸哀绂诲瓙
+        airDataNongGeng.setO2(heartBeatDataPackage.getO2() == null ? null : heartBeatDataPackage.getO2() + "涓�");
+
         airDataNongGeng.setMac(deviceName);
 
         //灏嗚澶囦俊鎭坊鍔犲埌澶ф皵璁惧琛�
@@ -43,9 +85,46 @@
         airEquipmentNongGeng.setCreateTime(airDataNongGeng.getCreateTime());
         airEquipmentNongGengService.addAirEquipment(airEquipmentNongGeng);
 
-//        //瀛樼紦瀛�
-//        RedisUtils.getBean().set(AtmoFunctionCode.AIR_HEARTBEAT.getCode() + deviceName, heartBeatDataPackage, 300L);
+        //瀛樼紦瀛�
+        RedisUtils.getBean().set(AtmoFunctionCode.AIR_HEARTBEAT_NONG_GENG.getCode() + deviceName, heartBeatDataPackage);
+        RedisUtils.getBean().set(AtmoFunctionCode.AIR_HEARTBEAT_NONG_GENG_STATE.getCode() + deviceName, heartBeatDataPackage, 300L);
 
         return save(airDataNongGeng);
     }
+
+
+    /**
+     * 鏌ヨ澶ф皵鏁版嵁(妯$硦鏌ヨ)
+     */
+    public List<AirDataNongGengBo> listAirDataByKeyword(BaseConditionVO baseConditionVO, String keyword, String type) {
+        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        List<Long> listAirId;
+        if (SecurityUtils.getClientId() == null) {
+            listAirId = baseMapper.listAirId(keyword, null, type);
+        } else {
+            listAirId = baseMapper.listAirId(keyword, SecurityUtils.getUserId(), type);
+        }
+        if (CollUtil.isEmpty(listAirId)) {
+            return CollUtil.newArrayList();
+        }
+        List<AirDataNongGengBo> airDataBos = baseMapper.listAirDataByIds(listAirId);
+        return airDataBos;
+
+    }
+
+    /**
+     * 璁惧鍘嗗彶鏁版嵁
+     *
+     * @param baseConditionVO
+     * @param mac
+     * @return
+     */
+    public List<AirDataNongGengBo> historyData(BaseConditionVO baseConditionVO, String mac) {
+        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        if (mac == null || mac.isEmpty()) {
+            throw new BusinessException("mac涓嶈兘涓虹┖");
+        }
+        List<AirDataNongGengBo> bos = baseMapper.historyData(mac);
+        return bos;
+    }
 }

--
Gitblit v1.9.3