cvt算法
This commit is contained in:
@@ -2,12 +2,12 @@ package com.njcn.algorithm.serviceimpl.line;
|
||||
|
||||
import com.njcn.algorithm.pojo.bo.CalculatedParam;
|
||||
import com.njcn.algorithm.service.line.IDataVCvtService;
|
||||
import com.njcn.dataProcess.api.DataVCvtFeignClient;
|
||||
import com.njcn.dataProcess.api.DataVFeignClient;
|
||||
import com.njcn.dataProcess.api.DataHarmRateVCvtFeignClient;
|
||||
import com.njcn.dataProcess.api.DataHarmRateVFeignClient;
|
||||
import com.njcn.dataProcess.constant.InfluxDBTableConstant;
|
||||
import com.njcn.dataProcess.param.LineCountEvaluateParam;
|
||||
import com.njcn.dataProcess.po.influx.DataVCvt;
|
||||
import com.njcn.dataProcess.pojo.dto.DataVCvtDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmRateVCvtDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmRateVDto;
|
||||
import com.njcn.dataProcess.util.TimeUtils;
|
||||
import com.njcn.device.pq.api.CvtRelationFeignClient;
|
||||
import com.njcn.device.pq.pojo.dto.CvtHarmonicCorrectionFactorsDTO;
|
||||
@@ -38,9 +38,10 @@ public class DataVCvtServiceImpl implements IDataVCvtService {
|
||||
@Resource
|
||||
private CvtRelationFeignClient cvtRelationFeignClient;
|
||||
@Resource
|
||||
private DataVCvtFeignClient dataVCvtFeignClient;
|
||||
private DataHarmRateVCvtFeignClient dataHarmRateVCvtFeignClient;
|
||||
@Resource
|
||||
private DataVFeignClient dataVFeignClient;
|
||||
private DataHarmRateVFeignClient dataHarmRateVFeignClient;
|
||||
|
||||
@Override
|
||||
public void dataVCvtHandler(CalculatedParam calculatedParam) {
|
||||
LineCountEvaluateParam lineParam = new LineCountEvaluateParam();
|
||||
@@ -51,23 +52,30 @@ public class DataVCvtServiceImpl implements IDataVCvtService {
|
||||
lineCountEvaluateParam.setLineId(calculatedParam.getIdList());
|
||||
lineCountEvaluateParam.setEndTime(calculatedParam.getDataDate()+ InfluxDBTableConstant.END_TIME);
|
||||
lineCountEvaluateParam.setStartTime(calculatedParam.getDataDate()+ InfluxDBTableConstant.START_TIME);
|
||||
List<DataVCvtDto> data = dataVCvtFeignClient.getRawData(lineCountEvaluateParam).getData();
|
||||
Map<String, List<DataVCvtDto>> collect = data.stream().collect(Collectors.groupingBy(DataVCvtDto::getLineId));
|
||||
List<DataVCvtDto> result = new ArrayList<>();
|
||||
|
||||
List<DataHarmRateVCvtDto> data = dataHarmRateVCvtFeignClient.getRawData(lineCountEvaluateParam).getData();
|
||||
|
||||
Map<String, List<DataHarmRateVCvtDto>> collect = data.stream().collect(Collectors.groupingBy(DataHarmRateVCvtDto::getLineId));
|
||||
List<DataHarmRateVDto> result = new ArrayList<>();
|
||||
collect.forEach((k,v)->{
|
||||
CvtHarmonicCorrectionFactorsDTO cvtHarmonicCorrectionFactorsDTO = cvtRelationFeignClient.queryByLineId(k).getData();
|
||||
if(Objects.nonNull(cvtHarmonicCorrectionFactorsDTO)&&
|
||||
StringUtils.isNotEmpty(cvtHarmonicCorrectionFactorsDTO.getId())){
|
||||
v = cvtChange(v,cvtHarmonicCorrectionFactorsDTO);
|
||||
}
|
||||
List<DataHarmRateVDto> dataVCvtDtoList = v.stream().map(temp -> {
|
||||
DataHarmRateVDto dataHarmRateVDto = new DataHarmRateVDto();
|
||||
BeanUtils.copyProperties(temp, dataHarmRateVDto);
|
||||
return dataHarmRateVDto;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
result.addAll(v);
|
||||
result.addAll(dataVCvtDtoList);
|
||||
});
|
||||
dataVFeignClient.batchInsertionCvtDTO(result);
|
||||
dataHarmRateVFeignClient.addList(result);
|
||||
|
||||
}
|
||||
|
||||
private List<DataVCvtDto> cvtChange(List<DataVCvtDto> v, CvtHarmonicCorrectionFactorsDTO cvtHarmonicCorrectionFactorsDTO) {
|
||||
private List<DataHarmRateVCvtDto> cvtChange(List<DataHarmRateVCvtDto> v, CvtHarmonicCorrectionFactorsDTO cvtHarmonicCorrectionFactorsDTO) {
|
||||
v.stream().forEach(temp->{
|
||||
//目前知道的只有v2到v50乘以系数
|
||||
// temp.setLineId();
|
||||
|
||||
Reference in New Issue
Block a user