Commit 1be79880 authored by ZWT's avatar ZWT

feat(吉林演示): 松原

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

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 785a9daf
...@@ -1850,7 +1850,10 @@ public class SpaceOptimizeBaseService { ...@@ -1850,7 +1850,10 @@ public class SpaceOptimizeBaseService {
DateTime firstStartTime = null; DateTime firstStartTime = null;
//井口累积运行总功率 //井口累积运行总功率
BigDecimal totalOperatingPower = BigDecimal.ZERO; BigDecimal totalOperatingPower = BigDecimal.ZERO;
//临时间开
List<SpaceOptimizeDurationDTO> newDurationDTOList;
for (int w = 0, wellheadSize = wellheadViewList.size(); w < wellheadSize; w++) { for (int w = 0, wellheadSize = wellheadViewList.size(); w < wellheadSize; w++) {
newDurationDTOList = new ArrayList<>(12);
SpaceInstitutionWellheadView wellhead = wellheadViewList.get(w); SpaceInstitutionWellheadView wellhead = wellheadViewList.get(w);
String wellheadId = wellhead.getWellheadId(); String wellheadId = wellhead.getWellheadId();
String recordId = this.createOptimizeWellhead(wellheadDTOList, periodId, wellheadId, wellhead.getWellNumber(), wellhead.getStartSeq(), optimizeDate, BusinessConstant.ONE); String recordId = this.createOptimizeWellhead(wellheadDTOList, periodId, wellheadId, wellhead.getWellNumber(), wellhead.getStartSeq(), optimizeDate, BusinessConstant.ONE);
...@@ -1904,21 +1907,21 @@ public class SpaceOptimizeBaseService { ...@@ -1904,21 +1907,21 @@ public class SpaceOptimizeBaseService {
int startDuration = (int) startTime.between(endTime, DateUnit.MINUTE); int startDuration = (int) startTime.between(endTime, DateUnit.MINUTE);
DateTime endTimeOptimize = startTimeOptimize.offsetNew(DateField.MINUTE, startDuration); DateTime endTimeOptimize = startTimeOptimize.offsetNew(DateField.MINUTE, startDuration);
if (startTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) < 0 && endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) > 0) { if (startTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) < 0 && endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) > 0) {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME, startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME,
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
BusinessConstant.START_OF_DAY_TIME, endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.START_OF_DAY_TIME, endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT),
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
} else if (endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) == 0) { } else if (endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) == 0) {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME, startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME,
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
} else { } else {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT),
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
...@@ -1960,21 +1963,21 @@ public class SpaceOptimizeBaseService { ...@@ -1960,21 +1963,21 @@ public class SpaceOptimizeBaseService {
} }
//记录 //记录
if (startTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) < 0 && endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) > 0) { if (startTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) < 0 && endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) > 0) {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME, startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME,
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
BusinessConstant.START_OF_DAY_TIME, endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.START_OF_DAY_TIME, endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT),
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
} else if (endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) == 0) { } else if (endTimeOptimize.compareTo(BusinessConstant.DATE_FLAG) == 0) {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME, startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME,
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
} else { } else {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), startTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT), endTimeOptimize.toString(BusinessConstant.MINUTES_FORMAT),
BusinessConstant.ZERO, optimizeDate BusinessConstant.ZERO, optimizeDate
); );
...@@ -1988,27 +1991,46 @@ public class SpaceOptimizeBaseService { ...@@ -1988,27 +1991,46 @@ public class SpaceOptimizeBaseService {
DateTime startOffset = DateUtil.offsetMinute(startTime, between); DateTime startOffset = DateUtil.offsetMinute(startTime, between);
DateTime endOffset = DateUtil.offsetMinute(endTime, between); DateTime endOffset = DateUtil.offsetMinute(endTime, between);
if (startOffset.compareTo(BusinessConstant.DATE_FLAG) < 0 && endOffset.compareTo(BusinessConstant.DATE_FLAG) > 0) { if (startOffset.compareTo(BusinessConstant.DATE_FLAG) < 0 && endOffset.compareTo(BusinessConstant.DATE_FLAG) > 0) {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startOffset.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME, startOffset.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME,
BusinessConstant.ONE, optimizeDate BusinessConstant.ONE, optimizeDate
); );
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
BusinessConstant.START_OF_DAY_TIME, endOffset.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.START_OF_DAY_TIME, endOffset.toString(BusinessConstant.MINUTES_FORMAT),
BusinessConstant.ONE, optimizeDate BusinessConstant.ONE, optimizeDate
); );
} else if (endOffset.compareTo(BusinessConstant.DATE_FLAG) == 0) { } else if (endOffset.compareTo(BusinessConstant.DATE_FLAG) == 0) {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startOffset.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME, startOffset.toString(BusinessConstant.MINUTES_FORMAT), BusinessConstant.END_OF_DAY_TIME,
BusinessConstant.ONE, optimizeDate BusinessConstant.ONE, optimizeDate
); );
} else { } else {
this.createOptimizeDuration(durationDTOList, periodId, recordId, wellheadId, null, this.createOptimizeDuration(newDurationDTOList, periodId, recordId, wellheadId, null,
startOffset.toString(BusinessConstant.MINUTES_FORMAT), endOffset.toString(BusinessConstant.MINUTES_FORMAT), startOffset.toString(BusinessConstant.MINUTES_FORMAT), endOffset.toString(BusinessConstant.MINUTES_FORMAT),
BusinessConstant.ONE, optimizeDate BusinessConstant.ONE, optimizeDate
); );
} }
} }
} }
//数据处理
if (CollUtil.isNotEmpty(newDurationDTOList)) {
newDurationDTOList.sort(Comparator.comparing(SpaceOptimizeDurationDTO::getOpenWellTime));
List<SpaceOptimizeDurationDTO> tempDurationDTOList = new ArrayList<>(newDurationDTOList.size());
tempDurationDTOList.add(newDurationDTOList.get(0));
for (int i = 1; i < newDurationDTOList.size(); i++) {
SpaceOptimizeDurationDTO nowOne = newDurationDTOList.get(i);
SpaceOptimizeDurationDTO lastOne = tempDurationDTOList.get(tempDurationDTOList.size() - 1);
if (CharSequenceUtil.equals(lastOne.getCloseWellTime(), nowOne.getOpenWellTime())) {
lastOne.setCloseWellTime(nowOne.getCloseWellTime());
} else {
tempDurationDTOList.add(nowOne);
}
}
//保存结果
for (SpaceOptimizeDurationDTO dto : tempDurationDTOList) {
durationDTOList.add(dto);
}
}
} }
} }
......
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