From 68a49e074e779e1960f827ff02d69d3b73fa9165 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Thu, 15 Jul 2021 09:13:11 +0800
Subject: [PATCH] web端小时aqi,因子月均值
---
screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java | 84 ++++++++++++++++++++++++++++++++++--------
1 files changed, 68 insertions(+), 16 deletions(-)
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
index 8e0b503..953468c 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
@@ -3,15 +3,14 @@
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.moral.api.entity.ManageRole;
-import com.moral.api.entity.Sensor;
-import com.moral.api.entity.SysDictData;
-import com.moral.api.entity.VersionSensorUnit;
+import com.moral.api.entity.*;
+import com.moral.api.mapper.OrganizationUnitAlarmMapper;
import com.moral.api.mapper.SensorMapper;
import com.moral.api.mapper.SysDictDataMapper;
import com.moral.api.mapper.VersionSensorUnitMapper;
import com.moral.api.service.SensorService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.api.util.CacheUtils;
import com.moral.api.util.LogUtils;
import com.moral.constant.Constants;
import com.moral.constant.RedisConstants;
@@ -52,6 +51,9 @@
@Autowired(required = false)
private SysDictDataMapper sysDictDataMapper;
+
+ @Autowired(required = false)
+ private OrganizationUnitAlarmMapper organizationUnitAlarmMapper;
@Autowired
LogUtils logUtils;
@@ -131,6 +133,16 @@
return resultMap;
}
sensorMapper.updateSensor(updateSensorMap);
+ if (!ObjectUtils.isEmpty(updateSensorMap.get("code"))&&!oldSensor.getCode().equals(updateSensorMap.get("code"))){
+ QueryWrapper<OrganizationUnitAlarm> wrapper_OUA = new QueryWrapper<>();
+ wrapper_OUA.eq("is_delete",Constants.NOT_DELETE);
+ wrapper_OUA.eq("sensor_code",oldSensor.getCode());
+ OrganizationUnitAlarm organizationUnitAlarm = new OrganizationUnitAlarm();
+ organizationUnitAlarm.setSensorCode(updateSensorMap.get("code").toString());
+ organizationUnitAlarmMapper.update(organizationUnitAlarm,wrapper_OUA);
+ //������deviceInfo������
+ CacheUtils.refreshDeviceAlarmInfo();
+ }
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String content = "������������:"+oldSensor.getName()+";";
for (Object key:updateSensorMap.keySet()) {
@@ -138,12 +150,12 @@
content = content+"���������:"+oldSensor.getName()+"->"+updateSensorMap.get(key)+";";
}
if (key.toString().equals("code")&&updateSensorMap.get(key)!=null){
- QueryWrapper<VersionSensorUnit> wrapper_Version = new QueryWrapper<>();
+ /*QueryWrapper<VersionSensorUnit> wrapper_Version = new QueryWrapper<>();
wrapper_Version.eq("sensor_code",oldSensor.getCode());
wrapper_Version.eq("is_delete","0");
VersionSensorUnit versionSensorUnit = new VersionSensorUnit();
versionSensorUnit.setSensorCode(updateSensorMap.get(key).toString());
- versionSensorUnitMapper.update(versionSensorUnit,wrapper_Version);
+ versionSensorUnitMapper.update(versionSensorUnit,wrapper_Version);*/
content = content+"������:"+oldSensor.getCode()+"->"+updateSensorMap.get(key)+";";
}
if (key.toString().equals("desc")&&updateSensorMap.get(key)!=null){
@@ -179,9 +191,9 @@
if (!ObjectUtils.isEmpty(map.get("orderType"))){
String orderType = map.get("orderType").toString();
if (orderType.equals(Constants.ORDER_DESC)){
- wrapper.orderByDesc("create_time");
+ wrapper.orderByDesc("update_time");
}else {
- wrapper.orderByAsc("create_time");
+ wrapper.orderByAsc("update_time");
}
}
Page resultPage = sensorMapper.selectPage(page,wrapper);
@@ -218,6 +230,36 @@
}
@Override
+ public Map<String, Object> getAllSensorWithoutPage() {
+ Map<String,Object> resultMap = new HashMap<>();
+ QueryWrapper<Sensor> wrapper = new QueryWrapper();
+ wrapper.eq("is_delete",0);
+ List<Sensor> sensors = sensorMapper.selectList(wrapper);
+ SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ List<Map<String,Object>> sensorList = new ArrayList<>();
+ for (Sensor sensor:sensors) {
+ Map sensorMap = JSON.parseObject(JSON.toJSONString(sensor),Map.class);
+ String createTime = SDF.format(sensor.getCreateTime());
+ String updateTime = SDF.format(sensor.getUpdateTime());
+ sensorMap.put("createTime",createTime);
+ sensorMap.put("updateTime",updateTime);
+ sensorMap.put("key",sensor.getId());
+ if (sensor.getDefaultUnitKey()!=null&&sensor.getDefaultUnitKey()!=""){
+ QueryWrapper<SysDictData> wrapper_VSU = new QueryWrapper();
+ wrapper_VSU.eq("is_delete",0);
+ wrapper_VSU.eq("dataKey",sensor.getDefaultUnitKey());
+ wrapper_VSU.eq("dict_type_id",14);
+ if (!ObjectUtils.isEmpty(sysDictDataMapper.selectOne(wrapper_VSU))&&!ObjectUtils.isEmpty(sysDictDataMapper.selectOne(wrapper_VSU).getDataValue())){
+ sensorMap.put("default_unit_key",sysDictDataMapper.selectOne(wrapper_VSU).getDataValue());
+ }
+ }
+ sensorList.add(sensorMap);
+ }
+ resultMap.put("sensors",sensorList);
+ return resultMap;
+ }
+
+ @Override
@Transactional
public Map<String, Object> deleteSensor(Map map) {
Map<String,Object> resultMap = new HashMap<>();
@@ -239,6 +281,14 @@
VersionSensorUnit versionSensorUnit = new VersionSensorUnit();
versionSensorUnit.setIsDelete(Constants.DELETE);
versionSensorUnitMapper.update(versionSensorUnit,wrapper_Version);
+ if (!ObjectUtils.isEmpty(sensor.getCode())&&!sensor.getCode().equals("")){
+ QueryWrapper<OrganizationUnitAlarm> wrapper_OUA = new QueryWrapper<>();
+ wrapper_OUA.eq("is_delete",Constants.NOT_DELETE);
+ wrapper_OUA.eq("sensor_code",sensor.getCode());
+ OrganizationUnitAlarm organizationUnitAlarm = new OrganizationUnitAlarm();
+ organizationUnitAlarm.setIsDelete(Constants.DELETE);
+ organizationUnitAlarmMapper.update(organizationUnitAlarm,wrapper_OUA);
+ }
//������������������
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String content = "������������:"+sensor.getName()+";";
@@ -264,9 +314,9 @@
int totleNum = sensorMapper.selectCount(wrapper);
String orderType = map.get("orderType").toString();
if (orderType.equals(Constants.ORDER_ASC)){
- wrapper.orderByAsc("create_time");
+ wrapper.orderByAsc("update_time");
}else {
- wrapper.orderByDesc("create_time");
+ wrapper.orderByDesc("update_time");
}
Page resultPage = sensorMapper.selectPage(page,wrapper);
List<Sensor> sensors = resultPage.getRecords();
@@ -279,7 +329,7 @@
sensorMap.put("createTime",createTime);
sensorMap.put("updateTime",updateTime);
sensorMap.put("key",sensor.getId());
- if (sensor.getDefaultUnitKey()!=null&&sensor.getDefaultUnitKey()!=""){
+ if (sensor.getDefaultUnitKey()!=null&&!sensor.getDefaultUnitKey().equals("")){
QueryWrapper<SysDictData> wrapper_VSU = new QueryWrapper();
wrapper_VSU.eq("is_delete",0);
wrapper_VSU.eq("dataKey",sensor.getDefaultUnitKey());
@@ -299,6 +349,7 @@
return resultMap;
}
+ @Override
public Map<String,Sensor> getAllSensorFromCache(){
Map<String,Sensor> sensors = redisTemplate.opsForHash().entries(RedisConstants.SENSOR_KEY);
if(ObjectUtils.isEmpty(sensors))
@@ -306,6 +357,12 @@
//������������
refreshCache(sensors);
return sensors;
+ }
+
+ @Override
+ public void refreshCache(){
+ Map<String, Sensor> sensors = getAllSensorFromDB();
+ refreshCache(sensors);
}
private Map<String,Sensor> getAllSensorFromDB(){
@@ -317,11 +374,6 @@
result.put(sensor.getCode(),sensor);
}
return result;
- }
-
- private void refreshCache(){
- Map<String, Sensor> sensors = getAllSensorFromDB();
- refreshCache(sensors);
}
private void refreshCache(Map<String,Sensor> sensors){
--
Gitblit v1.8.0