暂降事件查询

This commit is contained in:
huangzj
2023-08-31 11:42:08 +08:00
parent a01a3e2a12
commit b9af2a4e85
3 changed files with 28 additions and 17 deletions

View File

@@ -2,7 +2,9 @@ package com.njcn.csharmonic.service.impl;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.csdevice.api.CsLineFeignClient;
import com.njcn.csdevice.api.EquipmentFeignClient;
import com.njcn.csdevice.enums.AlgorithmResponseEnum;
import com.njcn.csdevice.pojo.dto.CsEquipmentDeliveryDTO;
import com.njcn.csdevice.pojo.po.CsLinePO;
import com.njcn.csharmonic.pojo.vo.TemperatureVO;
import com.njcn.csharmonic.service.TemperatureService;
@@ -15,10 +17,12 @@ import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* Description:
@@ -33,8 +37,11 @@ public class TemperatureServiceImpl implements TemperatureService {
private final CommonService commonService;
private final CsLineFeignClient csLineFeignClient;
private final DicDataFeignClient dicDataFeignClient;
private final EquipmentFeignClient equipmentFeignClient;
@Override
public List<StatisticalDataDTO> queryTemperature(String devId) {
List<CsEquipmentDeliveryDTO> data1 = equipmentFeignClient.queryDeviceById(Stream.of(devId).collect(Collectors.toList())).getData();
Integer moduleNumber = data1.get(0).getModuleNumber();
List<CsLinePO> csLinePOList = csLineFeignClient.queryLineByDevId(devId).getData();
Optional.ofNullable(csLinePOList).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR));
DictData data = dicDataFeignClient.getDicDataByCode(DicDataEnum.OUTPUT_SIDE.getCode()).getData();
@@ -43,6 +50,14 @@ public class TemperatureServiceImpl implements TemperatureService {
throw new BusinessException("不存在输出侧监测点,无温度信息");
}
List<StatisticalDataDTO> topTemperature = commonService.getTopTemperature(collect.get(0).getLineId(), "apf_data", "Apf_Temp_Env");
return topTemperature;
List<StatisticalDataDTO> result = new ArrayList<>();
for(int i = 0; i <moduleNumber; i++){
StatisticalDataDTO statisticalData = new StatisticalDataDTO();
int finalI = i;
StatisticalDataDTO statisticalDataDTO = topTemperature.stream().filter(tem -> Objects.equals(tem.getClDid(), finalI + "")).findFirst().orElse(new StatisticalDataDTO());
statisticalDataDTO.setClDid(finalI+"");
result.add(statisticalDataDTO);
}
return result;
}
}