修改提交

This commit is contained in:
huangzj
2023-08-30 15:54:00 +08:00
parent 997193fb5f
commit 20c563a342
7 changed files with 152 additions and 2 deletions

View File

@@ -0,0 +1,17 @@
package com.njcn.csharmonic.service;
import com.njcn.csharmonic.pojo.vo.TemperatureVO;
import com.njcn.influx.pojo.dto.StatisticalDataDTO;
import java.util.List;
/**
* Description:
* Date: 2023/8/30 8:46【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface TemperatureService {
List<StatisticalDataDTO> queryTemperature(String devId);
}

View File

@@ -0,0 +1,48 @@
package com.njcn.csharmonic.service.impl;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.csdevice.api.CsLineFeignClient;
import com.njcn.csdevice.enums.AlgorithmResponseEnum;
import com.njcn.csdevice.pojo.po.CsLinePO;
import com.njcn.csharmonic.pojo.vo.TemperatureVO;
import com.njcn.csharmonic.service.TemperatureService;
import com.njcn.influx.pojo.dto.StatisticalDataDTO;
import com.njcn.influx.service.CommonService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* Description:
* Date: 2023/8/30 9:05【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class TemperatureServiceImpl implements TemperatureService {
private final CommonService commonService;
private final CsLineFeignClient csLineFeignClient;
private final DicDataFeignClient dicDataFeignClient;
@Override
public List<StatisticalDataDTO> queryTemperature(String devId) {
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();
List<CsLinePO> collect = csLinePOList.stream().filter(temp -> Objects.equals(temp.getPosition(), data.getId())).collect(Collectors.toList());
if(CollectionUtils.isEmpty(collect)){
throw new BusinessException("不存在输出侧监测点,无温度信息");
}
List<StatisticalDataDTO> topTemperature = commonService.getTopTemperature(collect.get(0).getLineId(), "apf_data", "Apf_Temp_Env");
return topTemperature;
}
}