Commit cc0e4bdd authored by ZWT's avatar ZWT

feat(吉林演示): 松原

1.开发间开优化结果统计功能,创建间开优化效果统计表,生成对应代码;
2.修改15天,10天,3天,1天间开优化功能,修改代码结构;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 927fa179
...@@ -1733,7 +1733,7 @@ public class SpaceOptimizeBaseService { ...@@ -1733,7 +1733,7 @@ public class SpaceOptimizeBaseService {
SpaceOptimizeEffectMapper mapper = context.getBean(SpaceOptimizeEffectMapper.class); SpaceOptimizeEffectMapper mapper = context.getBean(SpaceOptimizeEffectMapper.class);
List<SpaceOptimizeEffectEnt> effectList = mapper.selectList(new LambdaQueryWrapper<SpaceOptimizeEffectEnt>() List<SpaceOptimizeEffectEnt> effectList = mapper.selectList(new LambdaQueryWrapper<SpaceOptimizeEffectEnt>()
.select(SpaceOptimizeEffectEnt::getWellheadId, SpaceOptimizeEffectEnt::getGreenPowerRate, SpaceOptimizeEffectEnt::getPowerCost, .select(SpaceOptimizeEffectEnt::getWellheadId, SpaceOptimizeEffectEnt::getGreenPowerRate, SpaceOptimizeEffectEnt::getPowerCost,
SpaceOptimizeEffectEnt::getOptimalGreenPowerRate, SpaceOptimizeEffectEnt::getOptimalPowerCost, SpaceOptimizeEffectEnt::getOptimalGreenPowerRate, SpaceOptimizeEffectEnt::getOptimalPowerCost, SpaceOptimizeEffectEnt::getInstitutionResult,
SpaceOptimizeEffectEnt::getGreenPowerUpgrade, SpaceOptimizeEffectEnt::getCostDown, SpaceOptimizeEffectEnt::getOptimalResult) SpaceOptimizeEffectEnt::getGreenPowerUpgrade, SpaceOptimizeEffectEnt::getCostDown, SpaceOptimizeEffectEnt::getOptimalResult)
.eq(BaseModel::getIsDeleted, 1) .eq(BaseModel::getIsDeleted, 1)
.eq(SpaceOptimizeEffectEnt::getPeriodId, periodId) .eq(SpaceOptimizeEffectEnt::getPeriodId, periodId)
...@@ -1764,32 +1764,58 @@ public class SpaceOptimizeBaseService { ...@@ -1764,32 +1764,58 @@ public class SpaceOptimizeBaseService {
//封装 //封装
Map<Integer, List<SpaceOptimizeDateDuration>> listMap; Map<Integer, List<SpaceOptimizeDateDuration>> listMap;
SpaceOptimizeEffectEnt effect; SpaceOptimizeEffectEnt effect;
boolean isOptimal;
BigDecimal costDown;
String optimalResult;
BigDecimal optimalGreenPowerRate;
BigDecimal optimalPowerCost;
BigDecimal greenPowerUpgrade;
for (GetSpaceOptimizeWellheadOutput w : wellheadOutputs) { for (GetSpaceOptimizeWellheadOutput w : wellheadOutputs) {
//封装间开
if (collect.containsKey(w.getWellheadId())) {
listMap = collect.get(w.getWellheadId()).stream()
.collect(Collectors.groupingBy(SpaceOptimizeDateDuration::getIsOptimize));
//填充关井时间
w.setOptimizeList(ServiceUtil.getAllDateDuration(listMap.get(0)));
w.setInitializeList(ServiceUtil.getAllDateDuration(listMap.get(1)));
} else {
w.setOptimizeList(Collections.emptyList());
w.setInitializeList(Collections.emptyList());
}
//封装能耗分析 //封装能耗分析
if (effectMap.containsKey(w.getWellheadId())) { if (effectMap.containsKey(w.getWellheadId())) {
effect = effectMap.get(w.getWellheadId()); effect = effectMap.get(w.getWellheadId());
costDown = effect.getCostDown();
//降低成本大于等于0才优化
isOptimal = costDown.compareTo(BigDecimal.ZERO) >= 0;
if (isOptimal) {
optimalResult = effect.getOptimalResult();
optimalGreenPowerRate = effect.getOptimalGreenPowerRate();
optimalPowerCost = effect.getOptimalPowerCost();
greenPowerUpgrade = effect.getGreenPowerUpgrade();
} else {
optimalResult = effect.getInstitutionResult();
optimalGreenPowerRate = effect.getGreenPowerRate();
optimalPowerCost = effect.getPowerCost();
greenPowerUpgrade = BigDecimal.ZERO;
costDown = BigDecimal.ZERO;
}
w.setEffect(GetSpaceOptimizeEffectOutput.builder() w.setEffect(GetSpaceOptimizeEffectOutput.builder()
.optimalResult(effect.getOptimalResult()) .optimalResult(optimalResult)
.greenPowerRate(effect.getGreenPowerRate()) .greenPowerRate(effect.getGreenPowerRate())
.powerCost(effect.getPowerCost()) .powerCost(effect.getPowerCost())
.optimalGreenPowerRate(effect.getOptimalGreenPowerRate()) .optimalGreenPowerRate(optimalGreenPowerRate)
.optimalPowerCost(effect.getOptimalPowerCost()) .optimalPowerCost(optimalPowerCost)
.greenPowerUpgrade(effect.getGreenPowerUpgrade()) .greenPowerUpgrade(greenPowerUpgrade)
.costDown(effect.getCostDown()) .costDown(costDown)
.build()); .build());
} else { } else {
w.setEffect(new GetSpaceOptimizeEffectOutput()); w.setEffect(new GetSpaceOptimizeEffectOutput());
isOptimal = false;
}
//封装间开
if (collect.containsKey(w.getWellheadId())) {
listMap = collect.get(w.getWellheadId()).stream()
.collect(Collectors.groupingBy(SpaceOptimizeDateDuration::getIsOptimize));
//填充关井时间(降低成本大于等于0才优化)
if (isOptimal) {
w.setOptimizeList(ServiceUtil.getAllDateDuration(listMap.get(0)));
} else {
w.setOptimizeList(ServiceUtil.getAllDateDuration(listMap.get(1)));
}
w.setInitializeList(ServiceUtil.getAllDateDuration(listMap.get(1)));
} else {
w.setOptimizeList(Collections.emptyList());
w.setInitializeList(Collections.emptyList());
} }
} }
} }
......
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