增加监测项目单个设备最近数据

This commit is contained in:
zy 2025-11-26 19:09:39 +08:00
parent a0bad0f31e
commit cc23e0c2e3
2 changed files with 58 additions and 0 deletions

View File

@ -384,6 +384,7 @@ public class BigScreenController {
List<String> orientList = new ArrayList<>();
List<String> liveList = new ArrayList<>();
List<SurvDeviceDeploy> waterList = new ArrayList<>();
Map<String,SurvDeviceDeploy> map = new HashMap<>();
for (SurvDeviceDeploy survDeviceDeploy : survStationInfo.getDeviceList()) {
if(PollutionConstants.SOIL_SURV.equals(survDeviceDeploy.getDeployType())){//土壤设备
soilList.add(survDeviceDeploy.getDeployCode());
@ -399,6 +400,7 @@ public class BigScreenController {
//只保留摄像头的数据
// remainList.add(survDeviceDeploy);
}
map.put(survDeviceDeploy.getDeployCode(),survDeviceDeploy);
}
// if(PollutionConstants.SOIL_SURV.equals(survDeviceDeploy.getDeployType())){//土壤设备
@ -462,9 +464,14 @@ public class BigScreenController {
noent.setStationCode(survStationInfo.getStationCode());
noent.setSurvItem(PollutionEnum.dataWaterNo.getCode());
String deployId = map.get(transdataOrientwaterVo.getDeviceCode()).getId();
tpent.setValue(transdataOrientwaterVo.getDataWaterTp());
tpent.setDeployId(deployId);
tnent.setValue(transdataOrientwaterVo.getDataWaterTn());
tnent.setDeployId(deployId);
noent.setValue(transdataOrientwaterVo.getDataWaterNo());
noent.setDeployId(deployId);
tpList.add(tpent);
tnList.add(tnent);
noList.add(noent);
@ -525,10 +532,16 @@ public class BigScreenController {
codent.setStationCode(survStationInfo.getStationCode());
codent.setSurvItem(PollutionEnum.dataWaterCod.getCode());
String deployId = map.get(transdataLivestockwaterVo.getDeviceCode()).getId();
tpent.setValue(transdataLivestockwaterVo.getDataWaterTp());
tpent.setDeployId(deployId);
tnent.setValue(transdataLivestockwaterVo.getDataWaterTn());
tnent.setDeployId(deployId);
nhent.setValue(transdataLivestockwaterVo.getDataWaterNh());
nhent.setDeployId(deployId);
codent.setValue(transdataLivestockwaterVo.getDataWaterCod());
codent.setDeployId(deployId);
tpList.add(tpent);
tnList.add(tnent);
@ -549,6 +562,9 @@ public class BigScreenController {
if(IotConstants.Data_Types_All.equals(dataTypes) || IotConstants.Data_Types_Water.equals(dataTypes)) {
if (!waterList.isEmpty()) { //五常
List<CommonDataTrans> commonDataTrans = CommonUtils.transData(waterList.get(0), false, null, null, null, null).getTransData();
if(!commonDataTrans.isEmpty()){
commonDataTrans.forEach(item->item.setStationName(survStationInfo.getStationName()));
}
listFinal.addAll(commonDataTrans);
} else {
jsonObject.put("HisSurvData", new ArrayList<>());
@ -564,6 +580,47 @@ public class BigScreenController {
listFinal.sort(timeCompare);
jsonObject.put("HisSurvData", listFinal);
}
//补充土壤最新数据
List<String> deployTypes = new ArrayList<>();
deployTypes.add(PollutionConstants.SOIL_SURV);
deployTypes.add(PollutionConstants.AIR_SURV);
List<SurvDeviceDeploy> deploys = deployService.getDeviceListByStation(null,deployTypes);
List<String> soilIds = new ArrayList<>();
List<String> airIds = new ArrayList<>();
if(!deploys.isEmpty()){
for (SurvDeviceDeploy deploy : deploys) {
if(PollutionConstants.SOIL_SURV.equals(deploy.getDeployType())){//土壤设备
soilIds.add(deploy.getId());
}else if(PollutionConstants.AIR_SURV.equals(deploy.getDeployType())){//气象设备
airIds.add(deploy.getId());
}
}
}
List<CommonDataTrans> soilDataTrans = new ArrayList<>();
if(!soilIds.isEmpty()){
List<SurvTransdataSoil> soildsData = transdataSoilService.lambdaQuery()
.in(SurvTransdataSoil::getDeployId,soilIds)
.list();
for (SurvTransdataSoil datas : soildsData) {
List<CommonDataTrans> trans = CommonUtils.constructSoil(datas);
soilDataTrans.addAll(trans);
}
}
jsonObject.put("soilHisSurvData", soilDataTrans);
List<CommonDataTrans> airDataTrans = new ArrayList<>();
if(!airIds.isEmpty()){
List<SurvTransdataAir> airsData = transdataAirService.lambdaQuery()
.in(SurvTransdataAir::getDeployId,airIds)
.list();
for (SurvTransdataAir datas : airsData) {
List<CommonDataTrans> trans = CommonUtils.constructAir(datas);
airDataTrans.addAll(trans);
}
}
jsonObject.put("airHisSurvData", airDataTrans);
return Result.ok(jsonObject);
}

View File

@ -40,6 +40,7 @@
</resultMap>
<resultMap id="simpleResultMap" type="org.jeecg.common.vo.SurvTransdataOrientwaterVo">
<result property="dataWaterTp" column="DATA_WATER_TP" jdbcType="VARCHAR"/>
<result property="dataWaterTn" column="DATA_WATER_TN" jdbcType="VARCHAR"/>
<!-- <result property="dataWaterCod" column="DATA_WATER_COD" jdbcType="VARCHAR"/>-->