Commit 14e7bcca authored by ZWT's avatar ZWT

feat(能源管理系统): 测试问题修复

1.修改间开制度管理-长期/中短期/短期间开优化定时任务,修改代码结构,处理部分未优化数据无法初始化问题;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 85ed15de
...@@ -136,15 +136,18 @@ public class SpaceOptimizeBaseService { ...@@ -136,15 +136,18 @@ public class SpaceOptimizeBaseService {
SpaceInstitutionDetailEnt detail, int monthNum, String periodId, SpaceInstitutionDetailEnt detail, int monthNum, String periodId,
DynamicQueryPlantPredictedPowerInput plantPowerInput) { DynamicQueryPlantPredictedPowerInput plantPowerInput) {
//获取当前制度对应的光伏预测数据列表 //获取当前制度对应的光伏预测数据列表
Map<String, List<SpaceInstitutionDurationEnt>> durationMap = this.getDurationMap(context, detail.getId());
List<DynamicQueryPlantPredictedPowerOutput> avgPowerList = this.getAveragePowerGenerationListByPlantIds(context, plantPowerInput); List<DynamicQueryPlantPredictedPowerOutput> avgPowerList = this.getAveragePowerGenerationListByPlantIds(context, plantPowerInput);
if (CollUtil.isEmpty(avgPowerList)) { if (CollUtil.isEmpty(avgPowerList)) {
//没有预测数据都不优化
this.setUnOptimizeWellheadConfig(durationDTOList, unOptimizeDurationList, wellheadDTOList,
spaceWellheadList, durationMap, periodId);
return; return;
} }
//取光伏出力峰值 //取光伏出力峰值
BigDecimal powerMax = this.getPowerMax(avgPowerList); BigDecimal powerMax = this.getPowerMax(avgPowerList);
//取当前制度下井口的总功率 //取当前制度下井口的总功率
BigDecimal wellheadTotalPower = this.getWellheadTotalPower(spaceWellheadList, detail.getId()); BigDecimal wellheadTotalPower = this.getWellheadTotalPower(spaceWellheadList, detail.getId());
Map<String, List<SpaceInstitutionDurationEnt>> durationMap = this.getDurationMap(context, detail.getId());
//根据类型过滤井口:大间开,连抽井不优化 //根据类型过滤井口:大间开,连抽井不优化
Map<Boolean, List<SpaceInstitutionWellheadView>> wellheadViewMap = this.getWellheadViewList(spaceWellheadList, detail.getId()); Map<Boolean, List<SpaceInstitutionWellheadView>> wellheadViewMap = this.getWellheadViewList(spaceWellheadList, detail.getId());
//保存不需要优化的井口 //保存不需要优化的井口
...@@ -204,15 +207,18 @@ public class SpaceOptimizeBaseService { ...@@ -204,15 +207,18 @@ public class SpaceOptimizeBaseService {
List<SpaceOptimizeDurationDTO> unOptimizeDurationList, List<SpaceInstitutionWellheadView> spaceWellheadList, List<SpaceOptimizeDurationDTO> unOptimizeDurationList, List<SpaceInstitutionWellheadView> spaceWellheadList,
Map<String, List<DynamicQueryBasePowerLineStorageViewOutput>> storageAvgMap, SpaceInstitutionDetailEnt detail, String periodId, Map<String, List<DynamicQueryBasePowerLineStorageViewOutput>> storageAvgMap, SpaceInstitutionDetailEnt detail, String periodId,
DynamicQueryStoragePredictedPowerInput input, DynamicQueryPlantPredictedPowerInput plantPowerInput) { DynamicQueryStoragePredictedPowerInput input, DynamicQueryPlantPredictedPowerInput plantPowerInput) {
//获取井口间开时间段
Map<String, List<SpaceInstitutionDurationEnt>> durationMap = this.getDurationMap(context, detail.getId());
//获取当前制度对应的光伏预测数据列表 //获取当前制度对应的光伏预测数据列表
List<DynamicQueryPlantPredictedPowerOutput> avgPowerList = this.getAveragePowerGenerationListByPlantIds(context, plantPowerInput); List<DynamicQueryPlantPredictedPowerOutput> avgPowerList = this.getAveragePowerGenerationListByPlantIds(context, plantPowerInput);
if (CollUtil.isEmpty(avgPowerList)) { if (CollUtil.isEmpty(avgPowerList)) {
//没有预测数据都不优化
this.setUnOptimizeWellheadConfig(durationDTOList, unOptimizeDurationList, wellheadDTOList,
spaceWellheadList, durationMap, periodId);
return; return;
} }
//根据类型过滤井口:大间开,连抽井不优化 //根据类型过滤井口:大间开,连抽井不优化
Map<Boolean, List<SpaceInstitutionWellheadView>> wellheadViewMap = this.getWellheadViewList(spaceWellheadList, detail.getId()); Map<Boolean, List<SpaceInstitutionWellheadView>> wellheadViewMap = this.getWellheadViewList(spaceWellheadList, detail.getId());
//获取井口间开时间段
Map<String, List<SpaceInstitutionDurationEnt>> durationMap = this.getDurationMap(context, detail.getId());
//保存不需要优化的井口 //保存不需要优化的井口
this.setUnOptimizeWellheadConfig(durationDTOList, unOptimizeDurationList, wellheadDTOList, this.setUnOptimizeWellheadConfig(durationDTOList, unOptimizeDurationList, wellheadDTOList,
wellheadViewMap.get(false), durationMap, periodId); wellheadViewMap.get(false), durationMap, periodId);
......
...@@ -84,11 +84,13 @@ public class SpaceOptimizeShortCloudServiceImpl extends SpaceOptimizeBaseService ...@@ -84,11 +84,13 @@ public class SpaceOptimizeShortCloudServiceImpl extends SpaceOptimizeBaseService
.eq(SpaceInstitutionDurationEnt::getInstitutionId, detailId) .eq(SpaceInstitutionDurationEnt::getInstitutionId, detailId)
.in(SpaceInstitutionDurationEnt::getWellheadId, wellheadIdList) .in(SpaceInstitutionDurationEnt::getWellheadId, wellheadIdList)
); );
Map<String, List<SpaceInstitutionDurationEnt>> durationListMap;
if (CollUtil.isEmpty(durationEntList)) { if (CollUtil.isEmpty(durationEntList)) {
continue; durationListMap = new HashMap<>(0);
}else {
durationListMap = durationEntList.stream()
.collect(Collectors.groupingBy(SpaceInstitutionDurationEnt::getWellheadId));
} }
Map<String, List<SpaceInstitutionDurationEnt>> durationListMap = durationEntList.stream()
.collect(Collectors.groupingBy(SpaceInstitutionDurationEnt::getWellheadId));
//按类型拆分井口 //按类型拆分井口
Map<Boolean, List<SpaceInstitutionWellheadEnt>> interval = wellheadEntList.stream() Map<Boolean, List<SpaceInstitutionWellheadEnt>> interval = wellheadEntList.stream()
.sorted(Comparator.comparing(SpaceInstitutionWellheadEnt::getStartSeq)) .sorted(Comparator.comparing(SpaceInstitutionWellheadEnt::getStartSeq))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment