累计水量修改

This commit is contained in:
wyw 2024-08-16 14:11:22 +08:00
parent e9e1b07054
commit c1f1a12a73

View File

@ -10,6 +10,7 @@ import com.fastbee.common.core.page.TableDataInfo;
import com.fastbee.common.model.vo.TreeItemVo;
import com.fastbee.common.model.vo.iot.GisDeviceListVo;
import com.fastbee.common.utils.DateUtils;
import com.fastbee.common.utils.DevParamsUtils;
import com.fastbee.common.utils.SecurityUtils;
import com.fastbee.common.utils.StringUtils;
import com.fastbee.data.service.gis.IGisDeviceService;
@ -411,16 +412,41 @@ public class GisDeviceServiceImpl implements IGisDeviceService {
}
maWatereleRecords.sort(Comparator.comparing(MaWatereleRecord::getCreateTime));
ArrayList<Object> sumFlow = new ArrayList<>();
ArrayList<Object> sumFlowTime = new ArrayList<>();
ArrayList<Object> sumEle = new ArrayList<>();
ArrayList<Object> time = new ArrayList<>();
for (MaWatereleRecord record : maWatereleRecords) {
time.add(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, record.getCreateTime()));
sumFlow.add(record.getSumflow());
// sumFlow.add(record.getSumflow());
sumEle.add(record.getSumele());
}
DateTime dateTime = DateUtil.date(new Date());
Map<String, Object> devParams = DevParamsUtils.getDevParams(device.getDevParams());
if(devParams.containsKey("liuliangIds")){
Device liuliangDevice = iDeviceService.selectDeviceByDeviceId(Long.parseLong(devParams.get("liuliangIds").toString()));
if(liuliangDevice != null){
List<DeviceLog> deviceLogs = logService.selectDeviceLogList(new DeviceLog() {{
setSerialNumber(liuliangDevice.getSerialNumber());
setBeginTime(DateUtil.beginOfDay(DateUtil.offsetDay(dateTime, -1)).toString());
setEndTime(DateUtil.endOfDay(dateTime).toString());
}});
Map<String, List<DeviceLog>> liuliangCollect = deviceLogs.stream().sorted(Comparator
.comparing(DeviceLog::getCreateTime, Comparator
.nullsFirst(Comparator.naturalOrder()))).collect(Collectors.groupingBy(t -> t.getIdentity()));
List<DeviceLog> deviceLogList = liuliangCollect.get("三菱FX2N_1_sumFlow");
if(deviceLogList != null && deviceLogList.size() > 0){
for (DeviceLog deviceLog : deviceLogList) {
sumFlow.add(deviceLog.getLogValue());
sumFlowTime.add(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,deviceLog.getCreateTime()));
}
}
}
}
Map<String, Object> rMap = new HashMap<>();
rMap.put("time", time);
rMap.put("sumFlow", sumFlow);
rMap.put("sumFlowTime", sumFlowTime);
rMap.put("sumEle", sumEle);
return rMap;
}