From 5fa4c1db3141099be4ca176cdf2f3ec10f46c141 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 09 Mar 2022 11:36:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev_
---
screen-api/src/main/java/com/moral/api/websocket/SingleDeviceServer.java | 5 ++++-
screen-api/src/main/java/com/moral/api/kafka/consumer/SecondDataConsumer.java | 21 ++++++++-------------
2 files changed, 12 insertions(+), 14 deletions(-)
diff --git a/screen-api/src/main/java/com/moral/api/kafka/consumer/SecondDataConsumer.java b/screen-api/src/main/java/com/moral/api/kafka/consumer/SecondDataConsumer.java
index 729dcbf..2544cad 100644
--- a/screen-api/src/main/java/com/moral/api/kafka/consumer/SecondDataConsumer.java
+++ b/screen-api/src/main/java/com/moral/api/kafka/consumer/SecondDataConsumer.java
@@ -4,6 +4,7 @@
import com.moral.api.entity.Device;
import com.moral.api.entity.Sensor;
import com.moral.api.entity.UnitConversion;
+import com.moral.api.utils.AdjustDataUtils;
import com.moral.api.utils.UnitConvertUtils;
import com.moral.api.websocket.SingleDeviceServer;
import lombok.extern.slf4j.Slf4j;
@@ -46,6 +47,11 @@
continue;
//������������������
Device device = socket.getDeviceAlarmInfo();
+ Map<String, Object> adjustFormula = socket.getAdjustFormula();
+ Map<String, Object> regionAqi = socket.getRegionAqi();
+ //������������
+ if(adjustFormula!=null&®ionAqi!=null)
+ message = AdjustDataUtils.adjust(message,adjustFormula,regionAqi);
//������������������������
Map<String, Object> resultMessgae = new HashMap<>();
//������������
@@ -56,24 +62,13 @@
String showUnitKey = sensor.getShowUnitKey();
String unitKey = sensor.getUnitKey();
String unit = sensor.getUnit();
- //���������������������������������������������
Object value = message.get(code);
- //������������������������������������������������
- /*if(value==null) ���������
+ if(value==null)
continue;
- Double sourceDataD = Double.valueOf(String.valueOf(value));*/
- //��������������������������������������������� start
- Double sourceDataD = null;
- if (value != null) {
- sourceDataD = Double.valueOf(String.valueOf(value));
- }else{
- sourceDataD = 5.00d;
- }
- //��������������������������������������������� end
+ Double sourceDataD = Double.valueOf(String.valueOf(value));
BigDecimal bg = new BigDecimal(sourceDataD);
bg = bg.setScale(2, BigDecimal.ROUND_FLOOR);
String sourceData = bg.toString();
- //������������
//������������
if (!unitKey.equals(showUnitKey)) {//������������������������������������������������������������
String formula = sensor.getFormula();
diff --git a/screen-api/src/main/java/com/moral/api/websocket/SingleDeviceServer.java b/screen-api/src/main/java/com/moral/api/websocket/SingleDeviceServer.java
index fa6fd33..d8e7cc7 100644
--- a/screen-api/src/main/java/com/moral/api/websocket/SingleDeviceServer.java
+++ b/screen-api/src/main/java/com/moral/api/websocket/SingleDeviceServer.java
@@ -45,19 +45,22 @@
private Map<String, Object> regionAqi;
+ private Map<String,Object> adjustFormula;
+
@OnOpen
public void onOpen(Session session, @PathParam("mac") String mac) throws Exception {
this.session = session;
this.mac = mac;
this.deviceAlarmInfo = (Device) redisTemplate.opsForHash().get(RedisConstants.DEVICE_INFO, mac);
this.unitConversions = redisTemplate.opsForList().range(RedisConstants.UNIT_CONVERSION, 0, -1);
+ this.adjustFormula = redisTemplate.opsForHash().entries("adjust_"+mac);
//���������������������������AQI������������������
Map<String, Object> deviceInfo = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.DEVICE, mac);
Map<String, Object> monitorPointMap = (Map<String, Object>) deviceInfo.get("monitorPoint");
String areaCode = String.valueOf(monitorPointMap.get("areaCode"));
String cityCode = String.valueOf(monitorPointMap.get("cityCode"));
try {
- this.regionAqi = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, areaCode);
+ this.regionAqi = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.CITY_AQI, areaCode);
if (ObjectUtils.isEmpty(this.regionAqi))
this.regionAqi = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, cityCode);
} catch (Exception e) {
--
Gitblit v1.8.0