Browse Source

111状态解析完善

master
review512jwy@163.com 3 weeks ago
parent
commit
70df8a91e9
  1. 29
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/common/CommonOpt.java
  2. 5
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataAccumulateServiceImpl.java
  3. 5
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataBaStatusServiceImpl.java
  4. 5
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataMeasureServiceImpl.java

29
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/common/CommonOpt.java

@ -15,12 +15,9 @@ import java.util.stream.Collectors;
import com.dongjian.dashboard.back.common.Constants;
import com.dongjian.dashboard.back.common.response.ResponseCode;
import com.dongjian.dashboard.back.common.response.SimpleDataResponse;
import com.dongjian.dashboard.back.dao.ex.BasicUserMapperExt;
import com.dongjian.dashboard.back.dao.ex.DeviceRawdataRealtimeMapperExt;
import com.dongjian.dashboard.back.dao.ex.UserBuildingRelationMapperExt;
import com.dongjian.dashboard.back.dao.ex.*;
import com.dongjian.dashboard.back.dto.device.LineDataSearchParams;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtime;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtimeExample;
import com.dongjian.dashboard.back.model.*;
import com.dongjian.dashboard.back.util.DESUtil;
import com.dongjian.dashboard.back.vo.building.BindedBuildingVO;
import com.dongjian.dashboard.back.vo.company.AuroraInfo;
@ -35,8 +32,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import com.dongjian.dashboard.back.dao.ex.BasicCompanyMapperExt;
import com.dongjian.dashboard.back.model.BasicCompany;
import com.dongjian.dashboard.back.util.CommonUtil;
/**
@ -62,6 +57,8 @@ public class CommonOpt {
private UserBuildingRelationMapperExt userBuildingRelationMapperExt;
@Autowired
private DeviceRawdataRealtimeMapperExt deviceRawdataRealtimeMapperExt;
@Autowired
private DeviceInfoMapperExt deviceInfoMapperExt;
/**
@ -475,6 +472,24 @@ public class CommonOpt {
));
}
public Map<String, DeviceInfo> queryDeviceInfo111Map(List<String> deviceIdList111) {
if (CollectionUtils.isEmpty(deviceIdList111)) {
return Collections.emptyMap();
}
DeviceInfoExample example = new DeviceInfoExample();
example.createCriteria().andDeviceIdIn(deviceIdList111).andFlagEqualTo(0);
return deviceInfoMapperExt
.selectByExampleWithBLOBs(example)
.stream()
.collect(Collectors.toMap(
DeviceInfo::getDeviceId,
Function.identity(),
(a, b) -> b
));
}
public Map<String, DeviceRawdataRealtime> queryRealtime111Map(List<String> deviceIdList111) {
if (CollectionUtils.isEmpty(deviceIdList111)) {
return Collections.emptyMap();

5
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataAccumulateServiceImpl.java

@ -19,6 +19,7 @@ import com.dongjian.dashboard.back.dao.ex.DeviceRawdataRealtimeMapperExt;
import com.dongjian.dashboard.back.dao.ex.FavoritedDeviceMapperExt;
import com.dongjian.dashboard.back.dto.data.AccumulateDataSearchParam;
import com.dongjian.dashboard.back.dto.device.LineDataSearchParams;
import com.dongjian.dashboard.back.model.DeviceInfo;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtime;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtimeExample;
import com.dongjian.dashboard.back.service.DeviceDataAccumulateService;
@ -109,6 +110,7 @@ public class DeviceDataAccumulateServiceImpl implements DeviceDataAccumulateServ
.stream()
.toList();
Map<String, DeviceRawdataRealtime> realtime111Map = commonOpt.queryRealtime111Map(deviceIdList_111);
Map<String, DeviceInfo> deviceInfo111Map = commonOpt.queryDeviceInfo111Map(deviceIdList_111);
LocalDateTime now = LocalDateTime.now(ZoneId.of("Asia/Tokyo"));
LocalDate today = now.toLocalDate();
@ -135,7 +137,8 @@ public class DeviceDataAccumulateServiceImpl implements DeviceDataAccumulateServ
//处理111状态映射
DeviceRawdataRealtime realtime111 = realtime111Map.get(deviceId85To111Map.get(deviceId));
data.setStatus111(commonOpt.mapStatus111(objectMapper, data.getDataMapping(), realtime111));
String dataMapping111 = deviceInfo111Map.get(deviceId85To111Map.get(deviceId)).getDataMapping();
data.setStatus111(commonOpt.mapStatus111(objectMapper, dataMapping111, realtime111));
// favorited 判断
data.setCollected(favoritedDeviceIds.contains(deviceId) ? 1 : 0);

5
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataBaStatusServiceImpl.java

@ -8,6 +8,7 @@ import com.dongjian.dashboard.back.dao.ex.DeviceRawdataRealtimeMapperExt;
import com.dongjian.dashboard.back.dao.ex.FavoritedDeviceMapperExt;
import com.dongjian.dashboard.back.dto.data.BaStatusDataSearchParam;
import com.dongjian.dashboard.back.easyexcel.SecondsToHMSConverter;
import com.dongjian.dashboard.back.model.DeviceInfo;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtime;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtimeExample;
import com.dongjian.dashboard.back.service.DeviceDataBaStatusService;
@ -102,6 +103,7 @@ public class DeviceDataBaStatusServiceImpl implements DeviceDataBaStatusService
.stream()
.toList();
Map<String, DeviceRawdataRealtime> realtime111Map = commonOpt.queryRealtime111Map(deviceIdList_111);
Map<String, DeviceInfo> deviceInfo111Map = commonOpt.queryDeviceInfo111Map(deviceIdList_111);
// 查询 favorited_device 表中所有设备的 device_id
List<String> favoritedDeviceIds = favoritedDeviceMapperExt.getFavoritedDeviceIds();
@ -112,7 +114,8 @@ public class DeviceDataBaStatusServiceImpl implements DeviceDataBaStatusService
//处理111状态映射
DeviceRawdataRealtime realtime111 = realtime111Map.get(deviceId85To111Map.get(deviceId));
data.setStatus111(commonOpt.mapStatus111(objectMapper, data.getDataMapping(), realtime111));
String dataMapping111 = deviceInfo111Map.get(deviceId85To111Map.get(deviceId)).getDataMapping();
data.setStatus111(commonOpt.mapStatus111(objectMapper, dataMapping111, realtime111));
// 判断设备是否在 favorited_device 表中
data.setCollected(favoritedDeviceIds.contains(deviceId) ? 1 : 0);

5
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataMeasureServiceImpl.java

@ -12,6 +12,7 @@ import com.dongjian.dashboard.back.dao.ex.FavoritedDeviceMapperExt;
import com.dongjian.dashboard.back.dto.data.MeasureDataSearchParam;
import com.dongjian.dashboard.back.dto.device.LineDataSearchParams;
import com.dongjian.dashboard.back.model.DashboardRealtimeMeasure;
import com.dongjian.dashboard.back.model.DeviceInfo;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtime;
import com.dongjian.dashboard.back.model.DeviceRawdataRealtimeExample;
import com.dongjian.dashboard.back.service.DeviceDataMeasureService;
@ -113,6 +114,7 @@ public class DeviceDataMeasureServiceImpl implements DeviceDataMeasureService {
.stream()
.toList();
Map<String, DeviceRawdataRealtime> realtime111Map = commonOpt.queryRealtime111Map(deviceIdList_111);
Map<String, DeviceInfo> deviceInfo111Map = commonOpt.queryDeviceInfo111Map(deviceIdList_111);
ZoneId tokyoZone = ZoneId.of("Asia/Tokyo");
LocalDate tokyoToday = LocalDate.now(tokyoZone);
@ -177,7 +179,8 @@ public class DeviceDataMeasureServiceImpl implements DeviceDataMeasureService {
//处理111状态映射
DeviceRawdataRealtime realtime111 = realtime111Map.get(deviceId85To111Map.get(deviceId));
data.setStatus111(commonOpt.mapStatus111(objectMapper, data.getDataMapping(), realtime111));
String dataMapping111 = deviceInfo111Map.get(deviceId85To111Map.get(deviceId)).getDataMapping();
data.setStatus111(commonOpt.mapStatus111(objectMapper, dataMapping111, realtime111));
// 收藏状态
data.setCollected(favoritedDeviceIds.contains(deviceId) ? 1 : 0);

Loading…
Cancel
Save