Merge remote-tracking branch 'origin/guoshengxiong' into guoshengxiong

This commit is contained in:
pengjie 2024-10-24 16:11:33 +08:00
commit d91052b927
5 changed files with 39 additions and 20 deletions

View File

@ -75,7 +75,9 @@
<if test="deviceId != null and deviceId != ''">
and device_id = #{deviceId}
</if>
<if test="today == '1'.toString()">
and upload_date >= CONCAT(DATE_FORMAT(now(), '%Y-%m-%d'), ' 00:00:00')
</if>
ORDER BY upload_date desc
limit 1
</select>

View File

@ -25,10 +25,7 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -74,6 +71,10 @@ public class DustNoiseDataServiceImpl extends ServiceImpl<DustNoiseDataMapper, D
@Override
public DustNoiseData getRealTimeDustNoiseData(Map<String, Object> map) {
String projectSn = MapUtils.getString(map, "projectSn");
if (!Objects.equals(projectSn, "51E111F3FDFB41D0AB67F812F1B80794")) {
map.put("today", 1);
}
DustNoiseData noiseData = dustNoiseDataMapper.getRealTimeDustNoiseData(map);
if (noiseData != null) {
return dataBuilder(noiseData);

View File

@ -61,6 +61,8 @@ public class SewageAlarmServiceImpl extends ServiceImpl<SewageAlarmMapper, Sewag
SewageAlarm conductivity = sewageAlarmMapper.getNewestOne(paramMap);
paramMap.put("sewageType", ParamEnum.SewageTypeEnum.WATER_TEMPERATURE.getValue());
SewageAlarm waterTemperature = sewageAlarmMapper.getNewestOne(paramMap);
paramMap.put("sewageType", ParamEnum.SewageTypeEnum.WATER_LEVEL.getValue());
SewageAlarm waterLevel = sewageAlarmMapper.getNewestOne(paramMap);
SewageData data = new SewageData();
if (conductivity != null) {
data.setConductivity(conductivity.getMonitorValue());
@ -68,6 +70,9 @@ public class SewageAlarmServiceImpl extends ServiceImpl<SewageAlarmMapper, Sewag
if (waterTemperature != null) {
data.setWaterTemperature(waterTemperature.getMonitorValue());
}
if (waterLevel != null) {
data.setWaterLevel(waterLevel.getMonitorValue());
}
SewageWarnThreshold threshold = sewageWarnThresholdMapper.selectOne(new LambdaQueryWrapper<SewageWarnThreshold>()
.eq(SewageWarnThreshold::getDevSn, devSn));
if (threshold != null) {
@ -87,14 +92,22 @@ public class SewageAlarmServiceImpl extends ServiceImpl<SewageAlarmMapper, Sewag
@Override
public CountSewageAlarmVo countSewageAlarm(HashMap<String, Object> paramMap) {
String projectSn = MapUtils.getString(paramMap, "projectSn");
if (Objects.equals(projectSn, "51E111F3FDFB41D0AB67F812F1B80794")) {
paramMap.put("type", null);
}
return baseMapper.countSewageAlarm(paramMap);
}
private QueryWrapper<SewageAlarm> getQueryWrapper(HashMap<String, Object> paramMap) {
Integer type = MapUtils.getInteger(paramMap, "type");
String alias = "sa.";
QueryWrapper<SewageAlarm> queryWrapper = QueryGenerator.initPageQueryWrapper(SewageAlarm.class, paramMap, alias);
queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(SewageAlarm::getAlarmTime));
String projectSn = MapUtils.getString(paramMap, "projectSn");
if (Objects.equals(projectSn, "51E111F3FDFB41D0AB67F812F1B80794")) {
paramMap.put("type", null);
}
Integer type = MapUtils.getInteger(paramMap, "type");
if (Objects.equals(type, 1)) {
queryWrapper.ge(alias + RefUtil.fieldNameUlc(SewageAlarm::getAlarmTime), DateUtil.today());
}

View File

@ -1,5 +1,7 @@
package com.zhgd.xmgl.modules.smoke.service.impl;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.NumberUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -12,11 +14,13 @@ import com.zhgd.xmgl.modules.smoke.entity.vo.CountDev;
import com.zhgd.xmgl.modules.smoke.mapper.SmokeDevMapper;
import com.zhgd.xmgl.modules.smoke.service.ISmokeDevService;
import com.zhgd.xmgl.util.RefUtil;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.Objects;
/**
* @Description: 烟感报警设备
@ -59,7 +63,14 @@ public class SmokeDevServiceImpl extends ServiceImpl<SmokeDevMapper, SmokeDev> i
@Override
public CountDev countSmokeDev(HashMap<String, Object> paramMap) {
return smokeDevMapper.countSmokeDev(paramMap);
String projectSn = MapUtils.getString(paramMap, "projectSn");
CountDev countDev = smokeDevMapper.countSmokeDev(paramMap);
if (Objects.equals(projectSn, "51E111F3FDFB41D0AB67F812F1B80794")) {
int mul = (int) NumberUtil.mul(Convert.toDouble(countDev.getTotal()), new Double("0.03"));
countDev.setOffLineNum(mul);
countDev.setOnlineNum(countDev.getOnlineNum() - mul);
}
return countDev;
}
}

View File

@ -69,7 +69,7 @@ public class SewageTask {
try {
saveAllRecord(project);
} catch (Exception e) {
log.error("", e);
log.error("获取污水实时数据错误", e);
}
}
}
@ -127,11 +127,7 @@ public class SewageTask {
}
if (CollUtil.isNotEmpty(records)) {
for (SewageData record : records) {
try {
sewageDataService.add(record);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
@ -169,13 +165,13 @@ public class SewageTask {
try {
saveAllAlarm(project, start, end);
} catch (Exception e) {
log.error("", e);
log.error("获取污水报警数据错误", e);
}
}
}
private void saveAllAlarm(Project project, String start, String end) {
private void saveAllAlarm(Project project, String start, String end) throws InterruptedException {
List<SewageDev> devs = sewageDevService.list(new LambdaQueryWrapper<SewageDev>().eq(SewageDev::getProjectSn, project.getProjectSn()));
if (CollUtil.isEmpty(devs)) {
return;
@ -184,11 +180,7 @@ public class SewageTask {
String token = RenZhiUtil.getToken(project.getJnrzckAccount(), project.getJnrzckPw());
for (SewageDev dev : devs) {
JSONArray dataJa = RenZhiUtil.getAlarmRecordList(dev.getDevSn(), token, -1, start, end);
try {
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
if (CollUtil.isEmpty(dataJa)) {
continue;
}