1.污染值算法迁移
2.增加暂态信息补招
This commit is contained in:
@@ -40,4 +40,7 @@ public interface DataHarmRateVFeignClient {
|
||||
@PostMapping("/addInfluxDbList")
|
||||
HttpResult<String> addInfluxDbList(@RequestBody List<DataHarmDto> list);
|
||||
|
||||
//按时间分组获取原始数据
|
||||
@PostMapping("/getGroupByTimeHarmRateV")
|
||||
HttpResult<List<DataHarmDto>> getGroupByTimeHarmRateV(@RequestBody LineCountEvaluateParam lineParam);
|
||||
}
|
||||
|
||||
@@ -1,18 +1,12 @@
|
||||
package com.njcn.dataProcess.api;
|
||||
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.constant.OperateType;
|
||||
import com.njcn.common.pojo.constant.ServerInfo;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.dataProcess.api.fallback.DataIFeignClientFallbackFactory;
|
||||
import com.njcn.dataProcess.dto.DataIDTO;
|
||||
import com.njcn.dataProcess.param.LineCountEvaluateParam;
|
||||
import com.njcn.dataProcess.pojo.dto.CommonMinuteDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataIDto;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@@ -44,4 +38,7 @@ public interface DataIFeignClient {
|
||||
|
||||
@PostMapping("/addInfluxDbList")
|
||||
HttpResult<String> addInfluxDbList(@RequestBody List<DataIDto> dataIList);
|
||||
|
||||
@PostMapping("/getGroupByTimeDataI")
|
||||
HttpResult<List<DataIDto>> getGroupByTimeDataI(@RequestBody LineCountEvaluateParam lineParam);
|
||||
}
|
||||
|
||||
@@ -63,4 +63,9 @@ public interface DataVFeignClient {
|
||||
//获取原始数据
|
||||
@PostMapping("/getDataV")
|
||||
HttpResult<List<DataVDto>> getDataV(@RequestBody LineCountEvaluateParam lineParam);
|
||||
|
||||
|
||||
//按时间分组获取原始数据
|
||||
@PostMapping("/getGroupByTimeDataV")
|
||||
HttpResult<List<DataVDto>> getGroupByTimeDataV(@RequestBody LineCountEvaluateParam lineParam);
|
||||
}
|
||||
|
||||
@@ -80,6 +80,12 @@ public class DataHarmRateVFeignClientFallbackFactory implements FallbackFactory<
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<List<DataHarmDto>> getGroupByTimeHarmRateV(LineCountEvaluateParam lineParam) {
|
||||
log.error("{}异常,降级处理,异常为:{}","dataHarmRateV按时间分组获取原始数据",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,6 +76,12 @@ public class DataIFeignClientFallbackFactory implements FallbackFactory<DataIFei
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<List<DataIDto>> getGroupByTimeDataI(LineCountEvaluateParam lineParam) {
|
||||
log.error("{}异常,降级处理,异常为:{}","dataI按时间分组获取原始数据",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -110,6 +110,12 @@ public class DataVFeignClientFallbackFactory implements FallbackFactory<DataVFei
|
||||
log.error("{}异常,降级处理,异常为:{}","查询数据DataV",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<List<DataVDto>> getGroupByTimeDataV(LineCountEvaluateParam lineParam) {
|
||||
log.error("{}异常,降级处理,异常为:{}","DataV按时间分组获取原始数据",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,10 +10,7 @@ import com.njcn.dataProcess.annotation.InsertBean;
|
||||
import com.njcn.dataProcess.annotation.QueryBean;
|
||||
import com.njcn.dataProcess.dto.DataHarmrateVDTO;
|
||||
import com.njcn.dataProcess.param.LineCountEvaluateParam;
|
||||
import com.njcn.dataProcess.pojo.dto.CommonMinuteDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmRateIDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmRateVDto;
|
||||
import com.njcn.dataProcess.pojo.dto.*;
|
||||
import com.njcn.dataProcess.service.IDataHarmRateV;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
@@ -111,4 +108,12 @@ public class DataHarmRateVController extends BaseController {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, "", methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getGroupByTimeHarmRateV")
|
||||
@ApiOperation("按时间分组获取原始数据")
|
||||
public HttpResult<List<DataHarmDto>> getGroupByTimeHarmRateV(@RequestBody LineCountEvaluateParam lineParam) {
|
||||
String methodDescribe = getMethodDescribe("getGroupByTimeHarmRateV");
|
||||
List<DataHarmDto> dataV = dataHarmRateVQuery.getGroupByTimeHarmRateV(lineParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, dataV, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.njcn.dataProcess.annotation.QueryBean;
|
||||
import com.njcn.dataProcess.dto.DataIDTO;
|
||||
import com.njcn.dataProcess.param.LineCountEvaluateParam;
|
||||
import com.njcn.dataProcess.pojo.dto.CommonMinuteDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataIDto;
|
||||
import com.njcn.dataProcess.service.IDataI;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
@@ -101,4 +102,12 @@ public class DataIController extends BaseController {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, dataIDtoList, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getGroupByTimeDataI")
|
||||
@ApiOperation("按时间分组获取原始数据")
|
||||
public HttpResult<List<DataIDto>> getGroupByTimeDataI(@RequestBody LineCountEvaluateParam lineParam) {
|
||||
String methodDescribe = getMethodDescribe("getGroupByTimeDataI");
|
||||
List<DataIDto> dataV = dataIQuery.getGroupByTimeDataI(lineParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, dataV, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,7 +63,6 @@ public class DataVController extends BaseController {
|
||||
@ApiOperation("批量插入")
|
||||
public HttpResult<String> batchInsertion(@RequestBody List<DataVDTO> dataVDTOList) {
|
||||
String methodDescribe = getMethodDescribe("batchInsertion");
|
||||
|
||||
dataVInsert.batchInsertion(dataVDTOList);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
@@ -73,7 +72,6 @@ public class DataVController extends BaseController {
|
||||
@ApiOperation("批量插入cvtDto")
|
||||
public HttpResult<String> batchInsertionCvtDTO(@RequestBody List<DataVCvtDto> cvtDTOList) {
|
||||
String methodDescribe = getMethodDescribe("batchInsertion");
|
||||
|
||||
dataVInsert.batchInsertionCvtDTO(cvtDTOList);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
@@ -83,7 +81,6 @@ public class DataVController extends BaseController {
|
||||
@ApiOperation("获取监测点数据时间点(补招使用)")
|
||||
public HttpResult<List<LocalDateTime>> monitoringTime(@RequestParam("lineId") String lineId,@RequestParam("localData") String localData) {
|
||||
String methodDescribe = getMethodDescribe("monitoringTime");
|
||||
|
||||
List<LocalDateTime> localDateTimeList = dataVQuery.monitoringTime(lineId,localData);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, localDateTimeList, methodDescribe);
|
||||
}
|
||||
@@ -160,6 +157,18 @@ public class DataVController extends BaseController {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, dataV, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getGroupByTimeDataV")
|
||||
@ApiOperation("按时间分组获取原始数据")
|
||||
public HttpResult<List<DataVDto>> getGroupByTimeDataV(@RequestBody LineCountEvaluateParam lineParam) {
|
||||
String methodDescribe = getMethodDescribe("getGroupByTimeDataV");
|
||||
List<DataVDto> dataV = dataVQuery.getGroupByTimeDataV(lineParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, dataV, methodDescribe);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@GetMapping("/memoryTest")
|
||||
@ApiOperation("n内存测试")
|
||||
|
||||
@@ -42,4 +42,5 @@ IDataHarmRateV extends IMppService<RStatDataHarmRateVD> {
|
||||
|
||||
void addInfluxDbList(List<DataHarmDto> dataVList);
|
||||
|
||||
List<DataHarmDto> getGroupByTimeHarmRateV(LineCountEvaluateParam lineParam);
|
||||
}
|
||||
|
||||
@@ -49,4 +49,10 @@ public interface IDataI extends IMppService<RStatDataID> {
|
||||
*/
|
||||
List<DataIDto> getDataI(LineCountEvaluateParam lineParam);
|
||||
|
||||
/**
|
||||
* 分组获取电流信息
|
||||
* @param lineParam
|
||||
* @return
|
||||
*/
|
||||
List<DataIDto> getGroupByTimeDataI(LineCountEvaluateParam lineParam);
|
||||
}
|
||||
|
||||
@@ -79,4 +79,6 @@ public interface IDataV extends IMppService<RStatDataVD> {
|
||||
* @Date: 2025/3/20 13:42
|
||||
*/
|
||||
List<DataVDto> getDataV(LineCountEvaluateParam lineParam);
|
||||
|
||||
List<DataVDto> getGroupByTimeDataV(LineCountEvaluateParam lineParam);
|
||||
}
|
||||
|
||||
@@ -4,14 +4,17 @@ import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.common.utils.HarmonicTimesUtil;
|
||||
import com.njcn.dataProcess.constant.InfluxDBTableConstant;
|
||||
import com.njcn.dataProcess.dao.imapper.DataHarmRateVMapper;
|
||||
import com.njcn.dataProcess.dao.relation.mapper.RStatDataHarmRateVRelationMapper;
|
||||
import com.njcn.dataProcess.dto.DataHarmrateVDTO;
|
||||
import com.njcn.dataProcess.param.LineCountEvaluateParam;
|
||||
import com.njcn.dataProcess.po.influx.DataHarmrateV;
|
||||
import com.njcn.dataProcess.po.influx.DataV;
|
||||
import com.njcn.dataProcess.pojo.dto.CommonMinuteDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmRateVDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataVDto;
|
||||
import com.njcn.dataProcess.pojo.po.RStatDataHarmRateVD;
|
||||
import com.njcn.dataProcess.service.IDataHarmRateV;
|
||||
import com.njcn.dataProcess.util.TimeUtils;
|
||||
@@ -206,6 +209,25 @@ public class InfluxdbDataHarmRateVImpl extends MppServiceImpl<RStatDataHarmRateV
|
||||
dataHarmRateVMapper.insertBatch(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataHarmDto> getGroupByTimeHarmRateV(LineCountEvaluateParam lineParam) {
|
||||
InfluxQueryWrapper harmRateVQueryWrapper = new InfluxQueryWrapper(DataHarmrateV.class);
|
||||
harmRateVQueryWrapper.maxSamePrefixAndSuffix(InfluxDbSqlConstant.V, "", HarmonicTimesUtil.harmonicTimesList(2, 50, 1));
|
||||
harmRateVQueryWrapper.regular(DataV::getLineId, lineParam.getLineId())
|
||||
.eq(DataHarmrateV::getValueType, InfluxDbSqlConstant.CP95)
|
||||
.ne(DataHarmrateV::getPhasicType, InfluxDBTableConstant.PHASE_TYPE_T)
|
||||
.groupBy("time(" + lineParam.getValueType().get(0) + "m)")
|
||||
.between(DataHarmrateV::getTime, lineParam.getStartTime(), lineParam.getEndTime());
|
||||
List<DataHarmrateV> list = dataHarmRateVMapper.selectByQueryWrapper(harmRateVQueryWrapper);
|
||||
List<DataHarmDto> result = new ArrayList<>();
|
||||
list.forEach(item -> {
|
||||
DataHarmDto dto = new DataHarmDto();
|
||||
BeanUtils.copyProperties(item, dto);
|
||||
result.add(dto);
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 按监测点集合、时间条件获取分钟数据
|
||||
* timeMap参数来判断是否进行数据处理 timeMap为空则不进行数据处理
|
||||
|
||||
@@ -4,13 +4,16 @@ import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.common.utils.HarmonicTimesUtil;
|
||||
import com.njcn.dataProcess.constant.InfluxDBTableConstant;
|
||||
import com.njcn.dataProcess.dao.imapper.DataIMapper;
|
||||
import com.njcn.dataProcess.dao.relation.mapper.RStatDataIRelationMapper;
|
||||
import com.njcn.dataProcess.dto.DataIDTO;
|
||||
import com.njcn.dataProcess.param.LineCountEvaluateParam;
|
||||
import com.njcn.dataProcess.po.influx.DataHarmrateV;
|
||||
import com.njcn.dataProcess.po.influx.DataI;
|
||||
import com.njcn.dataProcess.po.influx.DataV;
|
||||
import com.njcn.dataProcess.pojo.dto.CommonMinuteDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataHarmDto;
|
||||
import com.njcn.dataProcess.pojo.dto.DataIDto;
|
||||
import com.njcn.dataProcess.pojo.po.RStatDataID;
|
||||
import com.njcn.dataProcess.service.IDataI;
|
||||
@@ -201,6 +204,25 @@ public class InfluxdbDataIImpl extends MppServiceImpl<RStatDataIRelationMapper,
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataIDto> getGroupByTimeDataI(LineCountEvaluateParam lineParam) {
|
||||
InfluxQueryWrapper harmRateVQueryWrapper = new InfluxQueryWrapper(DataHarmrateV.class);
|
||||
harmRateVQueryWrapper.maxSamePrefixAndSuffix(InfluxDbSqlConstant.I, "", HarmonicTimesUtil.harmonicTimesList(2, 50, 1));
|
||||
harmRateVQueryWrapper.regular(DataV::getLineId, lineParam.getLineId())
|
||||
.eq(DataHarmrateV::getValueType, InfluxDbSqlConstant.CP95)
|
||||
.ne(DataHarmrateV::getPhasicType, InfluxDBTableConstant.PHASE_TYPE_T)
|
||||
.groupBy("time(" + lineParam.getValueType().get(0) + "m)")
|
||||
.between(DataHarmrateV::getTime, lineParam.getStartTime(), lineParam.getEndTime());
|
||||
List<DataI> list = dataIMapper.selectByQueryWrapper(harmRateVQueryWrapper);
|
||||
List<DataIDto> result = new ArrayList<>();
|
||||
list.forEach(item -> {
|
||||
DataIDto dto = new DataIDto();
|
||||
BeanUtils.copyProperties(item, dto);
|
||||
result.add(dto);
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 按监测点集合、时间条件获取dataI分钟数据
|
||||
* timeMap参数来判断是否进行数据处理 timeMap为空则不进行数据处理
|
||||
|
||||
@@ -382,6 +382,25 @@ public class InfluxdbDataVImpl extends MppServiceImpl<RStatDataVRelationMapper,
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataVDto> getGroupByTimeDataV(LineCountEvaluateParam lineParam) {
|
||||
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
|
||||
influxQueryWrapper.regular(DataV::getLineId, lineParam.getLineId())
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.CP95)
|
||||
.ne(DataV::getPhasicType, InfluxDBTableConstant.PHASE_TYPE_T)
|
||||
.max(DataV::getVThd)
|
||||
.groupBy("time(" + lineParam.getValueType().get(0) + "m)")
|
||||
.between(DataV::getTime, lineParam.getStartTime(), lineParam.getEndTime());
|
||||
List<DataV> list = dataVMapper.selectByQueryWrapper(influxQueryWrapper);
|
||||
List<DataVDto> result = new ArrayList<>();
|
||||
list.forEach(item -> {
|
||||
DataVDto dto = new DataVDto();
|
||||
BeanUtils.copyProperties(item, dto);
|
||||
result.add(dto);
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 按监测点集合、时间条件获取dataV分钟数据
|
||||
* timeMap参数来判断是否进行数据出来 timeMap为空则不进行数据处理
|
||||
|
||||
@@ -128,6 +128,11 @@ public class RelationDataHarmRateVImpl extends MppServiceImpl<RStatDataHarmRateV
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataHarmDto> getGroupByTimeHarmRateV(LineCountEvaluateParam lineParam) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
private List<DataHarmDto> quality(List<DataHarmDto> list, LineCountEvaluateParam lineParam) {
|
||||
List<DataHarmDto> result = new ArrayList<>();
|
||||
Map<String, List<DataHarmDto>> lineMap = list.stream().collect(Collectors.groupingBy(DataHarmDto::getLineId));
|
||||
|
||||
@@ -130,6 +130,11 @@ public class RelationDataIImpl extends MppServiceImpl<RStatDataIRelationMapper,
|
||||
return quality(result, lineParam);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataIDto> getGroupByTimeDataI(LineCountEvaluateParam lineParam) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
private List<DataIDto> quality(List<DataIDto> list, LineCountEvaluateParam lineParam) {
|
||||
List<DataIDto> result = new ArrayList<>();
|
||||
Map<String, List<DataIDto>> lineMap = list.stream().collect(Collectors.groupingBy(DataIDto::getLineId));
|
||||
|
||||
@@ -162,6 +162,11 @@ public class RelationDataVImpl extends MppServiceImpl<RStatDataVRelationMapper,
|
||||
return quality(info, lineParam);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataVDto> getGroupByTimeDataV(LineCountEvaluateParam lineParam) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
private List<DataVDto> quality(List<DataVDto> list, LineCountEvaluateParam lineParam) {
|
||||
List<DataVDto> result = new ArrayList<>();
|
||||
Map<String, List<DataVDto>> lineMap = list.stream().collect(Collectors.groupingBy(DataVDto::getLineId));
|
||||
|
||||
Reference in New Issue
Block a user