Commit 12867671 authored by ZWT's avatar ZWT

feat(吉林演示): 松原

1.修改部分第三方数据处理定时任务,修改系统来源,将固定来源按环境区分改为动态获取;
2.修改统计分析-间开效果评价新页面累节电能接口,暂时无法获取电费信息,将电费信息默认做随机数处理;
3.修改统计分析-能耗分析新页面峰谷能耗对比分析接口,暂时无法获取电费信息,将电费信息默认做随机数处理;
4.吉林首页井场用能分析模块开放井场用能分析双坐标轴接口,备用;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 6bcc4980
......@@ -338,6 +338,73 @@ public class HomePageService {
return XListResult.success(outputs);
}
/**
* 井场用能分析
*
* @param context 上下文
* @param input 输入
* @return {@link XSingleResult }<{@link GetPowerAnalyseTrendOutput }>
*/
@XText("首页模块--井场用能分析")
@XApiGet
public XSingleResult<GetPowerAnalyseTrendOutput> getPowerAnalyseTrend(XContext context, GetStationViewInput input) {
String stationId = input.getStationId();
//查组织下所有井
List<DynamicQueryBaseWellheadOutput> wellList = this.getWellList(context, stationId);
//查组织下所有电站
List<GetBasePhotovoltaicPlantCloudOutput> plantList = this.getPlantList(context, stationId, null);
//查前七日用能分析
DateTime endTime = DateUtil.beginOfDay(DateUtil.date());
DateTime startTime = DateUtil.offsetDay(endTime, -7);
ThirdWellAvgActivePowerViewMapper mapper = context.getBean(ThirdWellAvgActivePowerViewMapper.class);
ThirdActivePowerViewMapper dailyUpdateMapper = context.getBean(ThirdActivePowerViewMapper.class);
//当前配置
String oilFieldCode = ServiceUtil.getOilFieldCode(context);
//用电功率
List<ThirdWellAvgActivePowerView> avgList = mapper.selectPowerConsumptionHour(ThirdWellAvgActivePowerView.builder()
.wellNumbers(wellList.stream()
.map(DynamicQueryBaseWellheadOutput::getWellNumber)
.collect(Collectors.toList()))
.startTime(startTime)
.endTime(endTime)
.systemSource(oilFieldCode)
.build());
//发电功率
List<ThirdActivePowerView> powerList = dailyUpdateMapper.selectGeneratedPowerHour(ThirdActivePowerView.builder()
.stationNames(plantList.stream()
.map(GetBasePhotovoltaicPlantCloudOutput::getStationName)
.collect(Collectors.toList()))
.startTime(startTime)
.endTime(endTime)
.systemSource(oilFieldCode)
.build());
//封装
GetPowerAnalyseTrendOutput output = new GetPowerAnalyseTrendOutput();
if (CollUtil.isNotEmpty(avgList)) {
List<GetPowerConsumptionTrendOutput> consumptionList = new ArrayList<>(avgList.size());
for (ThirdWellAvgActivePowerView view : avgList) {
consumptionList.add(
new GetPowerConsumptionTrendOutput(DateUtil.format(view.getInputTime(), BusinessConstant.DATE_FORMAT_HOUR), view.getAvgActivePower())
);
}
output.setConsumptionList(consumptionList);
} else {
output.setConsumptionList(Collections.emptyList());
}
if (CollUtil.isNotEmpty(powerList)) {
List<GetPowerGenerationTrendOutput> generationList = new ArrayList<>(powerList.size());
for (ThirdActivePowerView view : powerList) {
generationList.add(
new GetPowerGenerationTrendOutput(DateUtil.format(view.getCreateDate(), BusinessConstant.DATE_FORMAT_HOUR), view.getPhotovoltaicPower())
);
}
output.setGenerationList(generationList);
} else {
output.setGenerationList(Collections.emptyList());
}
return XSingleResult.success(output);
}
/**
* 累积用电
*
......
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