zbj//1.稳态指标超标占比(负荷类型)
This commit is contained in:
@@ -14,4 +14,7 @@ import java.util.List;
|
||||
public interface LargeScreenService {
|
||||
|
||||
List<HomeostasisAreaVO> getHomeostasisArea(LargeScreenParam largeScreenParam);
|
||||
|
||||
List<HomeostasisAreaVO> getHomeostasisLoad(LargeScreenParam largeScreenParam);
|
||||
|
||||
}
|
||||
|
||||
@@ -62,21 +62,77 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
||||
|
||||
List<Map<String, Object>> homeostasisArea = largeScreenMapper.getHomeostasisArea(indexIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
|
||||
for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) {
|
||||
float f = 0.0f;
|
||||
for (int i = 0; i < generalDeviceDTOList.size(); i++) {
|
||||
for (Map<String, Object> map : homeostasisArea) {
|
||||
if (Objects.equals(generalDeviceDTO.getIndex(), map.get("id"))) {
|
||||
if (Objects.equals(generalDeviceDTOList.get(i).getIndex(), map.get("id"))) {
|
||||
HomeostasisAreaVO homeostasisAreaVO = new HomeostasisAreaVO();
|
||||
homeostasisAreaVO.setName(generalDeviceDTO.getName());
|
||||
homeostasisAreaVO.setAvg(map.get("avg").toString());
|
||||
homeostasisAreaVO.setName(generalDeviceDTOList.get(i).getName());
|
||||
f = Float.parseFloat(map.get("avg").toString()) * 100;
|
||||
homeostasisAreaVO.setAvg(String.valueOf(f));
|
||||
result.add(homeostasisAreaVO);
|
||||
} else {
|
||||
HomeostasisAreaVO homeostasisAreaVO = new HomeostasisAreaVO();
|
||||
homeostasisAreaVO.setName(generalDeviceDTO.getName());
|
||||
homeostasisAreaVO.setAvg("0");
|
||||
result.add(homeostasisAreaVO);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
List<String> collect = result.stream().map(HomeostasisAreaVO::getName).collect(Collectors.toList());
|
||||
for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) {
|
||||
if (!collect.contains(generalDeviceDTO.getName())) {
|
||||
HomeostasisAreaVO homeostasisAreaVO = new HomeostasisAreaVO();
|
||||
homeostasisAreaVO.setName(generalDeviceDTO.getName());
|
||||
homeostasisAreaVO.setAvg("0");
|
||||
result.add(homeostasisAreaVO);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 稳态指标超标占比(负荷类型)
|
||||
*/
|
||||
@Override
|
||||
public List<HomeostasisAreaVO> getHomeostasisLoad(LargeScreenParam largeScreenParam) {
|
||||
//创建返回VO
|
||||
List<HomeostasisAreaVO> result = new ArrayList<>();
|
||||
|
||||
DeviceInfoParam.BusinessParam deviceInfoParam = new DeviceInfoParam.BusinessParam();
|
||||
//部门索引
|
||||
deviceInfoParam.setDeptIndex(largeScreenParam.getDeptIndex());
|
||||
//统计类型
|
||||
SimpleDTO simpleDTO = new SimpleDTO();
|
||||
simpleDTO.setCode(String.valueOf(StatisticsEnum.LOAD_TYPE));
|
||||
deviceInfoParam.setStatisticalType(simpleDTO);
|
||||
//添加时间
|
||||
deviceInfoParam.setSearchBeginTime(largeScreenParam.getSearchBeginTime());
|
||||
deviceInfoParam.setSearchEndTime(largeScreenParam.getSearchEndTime());
|
||||
|
||||
// 获取所有数据
|
||||
List<GeneralDeviceDTO> generalDeviceDTOList = generalDeviceInfoClient.getPracticalAllDeviceInfo(deviceInfoParam).getData();
|
||||
//部门id集合
|
||||
List<String> indexIds = generalDeviceDTOList.stream().map(GeneralDeviceDTO::getIndex).collect(Collectors.toList());
|
||||
|
||||
List<Map<String, Object>> homeostasisArea = largeScreenMapper.getHomeostasisLoad(indexIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
float f = 0.0f;
|
||||
for (int i = 0; i < generalDeviceDTOList.size(); i++) {
|
||||
for (Map<String, Object> map : homeostasisArea) {
|
||||
if (Objects.equals(generalDeviceDTOList.get(i).getIndex(), map.get("id"))) {
|
||||
HomeostasisAreaVO homeostasisAreaVO = new HomeostasisAreaVO();
|
||||
homeostasisAreaVO.setName(generalDeviceDTOList.get(i).getName());
|
||||
f = Float.parseFloat(map.get("avg").toString()) * 100;
|
||||
homeostasisAreaVO.setAvg(String.valueOf(f));
|
||||
result.add(homeostasisAreaVO);
|
||||
}
|
||||
}
|
||||
}
|
||||
List<String> collect = result.stream().map(HomeostasisAreaVO::getName).collect(Collectors.toList());
|
||||
for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) {
|
||||
if (!collect.contains(generalDeviceDTO.getName())) {
|
||||
HomeostasisAreaVO homeostasisAreaVO = new HomeostasisAreaVO();
|
||||
homeostasisAreaVO.setName(generalDeviceDTO.getName());
|
||||
homeostasisAreaVO.setAvg("0");
|
||||
result.add(homeostasisAreaVO);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user