Commit bb5d81b0 authored by ZWT's avatar ZWT

feat(零碳): 长庆演示系统新增功能

1.修改第三方日累计数据推送表表结构,增加日累计储能放电量字段,同时修改代码对应实体及mapper文件,修改相关接口增加储能日累计放电量接收逻辑;
2.修改首页井场收益分析模块接口,修改获取储能累计放电量逻辑;
3.设计并创建井口日用电趋势表,生成对应实体类及mapper文件;
4.统计分析模块,新增本月累计节电经济效益查询接口,添加线上接口文档并完成接口冒烟测试;
5.统计分析模块,新增本月累计减碳量查询接口,添加线上接口文档并完成接口冒烟测试;
6.统计分析模块,新增光伏发电趋势查询接口,添加线上接口文档并完成接口冒烟测试;
7.统计分析模块,新增月度总览查询接口,添加线上接口文档并完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 3b8f1851
...@@ -10,7 +10,6 @@ import cn.hutool.core.util.NumberUtil; ...@@ -10,7 +10,6 @@ import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.commons.lang3.StringUtils;
import pps.cloud.base.service.IBasePowerLineCloudService; import pps.cloud.base.service.IBasePowerLineCloudService;
import pps.cloud.base.service.IBasePriceStrategyCloudService; import pps.cloud.base.service.IBasePriceStrategyCloudService;
import pps.cloud.base.service.IBaseWellheadCloudService; import pps.cloud.base.service.IBaseWellheadCloudService;
...@@ -93,7 +92,7 @@ public class SpaceOptimizeBaseService { ...@@ -93,7 +92,7 @@ public class SpaceOptimizeBaseService {
.orElse(output.getCreateTime())); .orElse(output.getCreateTime()));
} }
//设置市电峰谷策略 //设置市电峰谷策略
if (StringUtils.equals(String.valueOf(BusinessConstant.ONE), Optional.ofNullable(detailEnt.getGridTypeKey()) if (CharSequenceUtil.equals(String.valueOf(BusinessConstant.ONE), Optional.ofNullable(detailEnt.getGridTypeKey())
.orElse(String.valueOf(BusinessConstant.ZERO)))) { .orElse(String.valueOf(BusinessConstant.ZERO)))) {
output.setStrategyDetailList(ServiceUtil.getStrategyDetailList(context, output.setStrategyDetailList(ServiceUtil.getStrategyDetailList(context,
GetBasePriceStrategyDetailInput.builder() GetBasePriceStrategyDetailInput.builder()
...@@ -1059,7 +1058,7 @@ public class SpaceOptimizeBaseService { ...@@ -1059,7 +1058,7 @@ public class SpaceOptimizeBaseService {
// } else { // } else {
// while (iterator.hasNext()) { // while (iterator.hasNext()) {
// DynamicQueryStoragePredictedPowerOutput storagePredicted = iterator.next(); // DynamicQueryStoragePredictedPowerOutput storagePredicted = iterator.next();
// if (StringUtils.equals(hourTime, storagePredicted.getHourTime()) && StringUtils.equals(minTime, storagePredicted.getMinTime())) { // if (CharSequenceUtil.equals(hourTime, storagePredicted.getHourTime()) && CharSequenceUtil.equals(minTime, storagePredicted.getMinTime())) {
// //计算储能可供电时长:(储能剩余容量*放电深度*放电效率)/额定放电功率 // //计算储能可供电时长:(储能剩余容量*放电深度*放电效率)/额定放电功率
// avg.setPowerDuration( // avg.setPowerDuration(
// storagePredicted.getPower() // storagePredicted.getPower()
...@@ -1117,7 +1116,7 @@ public class SpaceOptimizeBaseService { ...@@ -1117,7 +1116,7 @@ public class SpaceOptimizeBaseService {
// if (createTime.compareTo(openTime) >= 0 && createTime.compareTo(closeTime) < 0) { // if (createTime.compareTo(openTime) >= 0 && createTime.compareTo(closeTime) < 0) {
// String endString = createTime.offsetNew(DateField.MINUTE, 15).toString(BusinessConstant.MINUTES_FORMAT); // String endString = createTime.offsetNew(DateField.MINUTE, 15).toString(BusinessConstant.MINUTES_FORMAT);
// String startString = createTime.toString(BusinessConstant.MINUTES_FORMAT); // String startString = createTime.toString(BusinessConstant.MINUTES_FORMAT);
// if (StringUtils.equals(endString, BusinessConstant.START_OF_DAY_TIME)) { // if (CharSequenceUtil.equals(endString, BusinessConstant.START_OF_DAY_TIME)) {
// endString = BusinessConstant.END_OF_DAY_TIME; // endString = BusinessConstant.END_OF_DAY_TIME;
// } // }
// //电量满足跳过 // //电量满足跳过
...@@ -1130,7 +1129,7 @@ public class SpaceOptimizeBaseService { ...@@ -1130,7 +1129,7 @@ public class SpaceOptimizeBaseService {
// int powerDuration = avg.getPowerDuration(); // int powerDuration = avg.getPowerDuration();
// powerDuration = Math.min(powerDuration, 15); // powerDuration = Math.min(powerDuration, 15);
// String offset = createTime.offsetNew(DateField.MINUTE, powerDuration).toString(BusinessConstant.MINUTES_FORMAT); // String offset = createTime.offsetNew(DateField.MINUTE, powerDuration).toString(BusinessConstant.MINUTES_FORMAT);
// if (StringUtils.equals(offset, BusinessConstant.START_OF_DAY_TIME)) { // if (CharSequenceUtil.equals(offset, BusinessConstant.START_OF_DAY_TIME)) {
// offset = BusinessConstant.END_OF_DAY_TIME; // offset = BusinessConstant.END_OF_DAY_TIME;
// } // }
// if (0 != powerDuration) { // if (0 != powerDuration) {
...@@ -1154,7 +1153,7 @@ public class SpaceOptimizeBaseService { ...@@ -1154,7 +1153,7 @@ public class SpaceOptimizeBaseService {
// List<SpaceOptimizeDurationDTO> finallyList = new ArrayList<>(durationDTOList.size()); // List<SpaceOptimizeDurationDTO> finallyList = new ArrayList<>(durationDTOList.size());
// List<SpaceOptimizeDurationDTO> offList = new ArrayList<>(durationDTOList.size()); // List<SpaceOptimizeDurationDTO> offList = new ArrayList<>(durationDTOList.size());
// for (SpaceOptimizeDurationDTO durationDTO : durationDTOList) { // for (SpaceOptimizeDurationDTO durationDTO : durationDTOList) {
// if (StringUtils.equals(periodId, durationDTO.getPeriodId())) { // if (CharSequenceUtil.equals(periodId, durationDTO.getPeriodId())) {
// offList.add(durationDTO); // offList.add(durationDTO);
// } else { // } else {
// finallyList.add(durationDTO); // finallyList.add(durationDTO);
...@@ -1177,14 +1176,14 @@ public class SpaceOptimizeBaseService { ...@@ -1177,14 +1176,14 @@ public class SpaceOptimizeBaseService {
// for (int i = 1; i < size; i++) { // for (int i = 1; i < size; i++) {
// SpaceOptimizeDurationDTO end = temporarilyList.get(temporarilyList.size() - 1); // SpaceOptimizeDurationDTO end = temporarilyList.get(temporarilyList.size() - 1);
// SpaceOptimizeDurationDTO durationDTO = list.get(i); // SpaceOptimizeDurationDTO durationDTO = list.get(i);
// boolean equals = StringUtils.equals(end.getGenerationTypeKey(), durationDTO.getGenerationTypeKey()); // boolean equals = CharSequenceUtil.equals(end.getGenerationTypeKey(), durationDTO.getGenerationTypeKey());
// //判断类型和时间段 // //判断类型和时间段
// if (!equals) { // if (!equals) {
// SpaceOptimizeDurationDTO begin = temporarilyList.get(0); // SpaceOptimizeDurationDTO begin = temporarilyList.get(0);
// begin.setCloseWellTime(end.getCloseWellTime()); // begin.setCloseWellTime(end.getCloseWellTime());
// finallyList.add(begin); // finallyList.add(begin);
// temporarilyList = new ArrayList<>(12); // temporarilyList = new ArrayList<>(12);
// } else if (!StringUtils.equals(end.getCloseWellTime(), durationDTO.getOpenWellTime()) && !StringUtils.equals(end.getId(), durationDTO.getId())) { // } else if (!CharSequenceUtil.equals(end.getCloseWellTime(), durationDTO.getOpenWellTime()) && !CharSequenceUtil.equals(end.getId(), durationDTO.getId())) {
// SpaceOptimizeDurationDTO begin = temporarilyList.get(0); // SpaceOptimizeDurationDTO begin = temporarilyList.get(0);
// begin.setCloseWellTime(end.getCloseWellTime()); // begin.setCloseWellTime(end.getCloseWellTime());
// finallyList.add(begin); // finallyList.add(begin);
...@@ -1952,7 +1951,7 @@ public class SpaceOptimizeBaseService { ...@@ -1952,7 +1951,7 @@ public class SpaceOptimizeBaseService {
BusinessConstant.ONE, optimizeDate); BusinessConstant.ONE, optimizeDate);
break; break;
default: default:
if (StringUtils.equals(wellhead.getRunTypeKey(), BusinessConstant.CONTINUOUS_PUMPING_WELL)) { if (CharSequenceUtil.equals(wellhead.getRunTypeKey(), BusinessConstant.CONTINUOUS_PUMPING_WELL)) {
this.createDuration(unOptimizeDurationList, recordId, periodId, wellheadId, BusinessConstant.ONE, BusinessConstant.START_OF_DAY_TIME, BusinessConstant.END_OF_DAY_TIME, null, this.createDuration(unOptimizeDurationList, recordId, periodId, wellheadId, BusinessConstant.ONE, BusinessConstant.START_OF_DAY_TIME, BusinessConstant.END_OF_DAY_TIME, null,
BusinessConstant.ONE, optimizeDate); BusinessConstant.ONE, optimizeDate);
this.createDuration(durationDTOList, recordId, periodId, wellheadId, BusinessConstant.ZERO, BusinessConstant.START_OF_DAY_TIME, BusinessConstant.END_OF_DAY_TIME, null, this.createDuration(durationDTOList, recordId, periodId, wellheadId, BusinessConstant.ZERO, BusinessConstant.START_OF_DAY_TIME, BusinessConstant.END_OF_DAY_TIME, null,
...@@ -1991,7 +1990,7 @@ public class SpaceOptimizeBaseService { ...@@ -1991,7 +1990,7 @@ public class SpaceOptimizeBaseService {
*/ */
private BigDecimal getWellheadTotalPower(List<SpaceInstitutionWellheadView> spaceWellheadList, String detailId) { private BigDecimal getWellheadTotalPower(List<SpaceInstitutionWellheadView> spaceWellheadList, String detailId) {
return spaceWellheadList.stream() return spaceWellheadList.stream()
.filter(w -> StringUtils.equals(detailId, w.getInstitutionId())) .filter(w -> CharSequenceUtil.equals(detailId, w.getInstitutionId()))
.map(SpaceInstitutionWellheadView::getServiceRating) .map(SpaceInstitutionWellheadView::getServiceRating)
.reduce(BigDecimal.ZERO, BigDecimal::add); .reduce(BigDecimal.ZERO, BigDecimal::add);
} }
...@@ -2007,9 +2006,9 @@ public class SpaceOptimizeBaseService { ...@@ -2007,9 +2006,9 @@ public class SpaceOptimizeBaseService {
return spaceWellheadList.stream() return spaceWellheadList.stream()
.sorted(Comparator.comparing(SpaceInstitutionWellheadView::getStartSeq)) .sorted(Comparator.comparing(SpaceInstitutionWellheadView::getStartSeq))
.collect( .collect(
Collectors.partitioningBy(w -> StringUtils.equals(detailId, w.getInstitutionId()) && Collectors.partitioningBy(w -> CharSequenceUtil.equals(detailId, w.getInstitutionId()) &&
StringUtils.equals(BusinessConstant.INTERVAL_PUMPING_WELL, w.getRunTypeKey()) && CharSequenceUtil.equals(BusinessConstant.INTERVAL_PUMPING_WELL, w.getRunTypeKey()) &&
StringUtils.equals("0", w.getIntervalTypeKey()) CharSequenceUtil.equals("0", w.getIntervalTypeKey())
) )
); );
} }
...@@ -2139,7 +2138,7 @@ public class SpaceOptimizeBaseService { ...@@ -2139,7 +2138,7 @@ public class SpaceOptimizeBaseService {
spaceWellheadList.forEach(s -> { spaceWellheadList.forEach(s -> {
s.setServiceRating( s.setServiceRating(
wellheadOutputList.stream() wellheadOutputList.stream()
.filter(w -> StringUtils.equals(s.getWellheadId(), w.getId())) .filter(w -> CharSequenceUtil.equals(s.getWellheadId(), w.getId()))
.findAny() .findAny()
.map(DynamicQueryBaseWellheadOutput::getServiceRating) .map(DynamicQueryBaseWellheadOutput::getServiceRating)
.orElse(BigDecimal.ZERO) .orElse(BigDecimal.ZERO)
......
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