Commit cd839ea4 authored by caotao's avatar caotao

1.大屏监盘全国、区域发电量top5接口调整。

parent 53167628
...@@ -58,15 +58,24 @@ public interface MonitorService { ...@@ -58,15 +58,24 @@ public interface MonitorService {
/** /**
* @Description 根据areaCode获取全国发电量趋势 * @Description 根据areaCode获取全国发电量趋势
* @param areaCode * @param areaCode 区域code
* @return SeriesData * @return SeriesData
*/ */
SeriesData getSeriesDataqy(String areaCode); SeriesData getSeriesDataqy(String areaCode);
/** /**
* @Descripiton 根据入参动态获取社会贡献 * @Descripiton 根据入参动态获取社会贡献
* @param areaCode * @param areaCode 区域code
* @return * @return
*/ */
Page<HashMap<String, String>> socialContribution(String areaCode); Page<HashMap<String, String>> socialContribution(String areaCode);
/**
* @Description 根据入参动态获取发电量排名
* @param day 参数类型用于判断是日发电小时数、月发电小时数、年发电小时数
* @param type 类型 风电或者光伏
* @param areaCode 区域code
* @return
*/
Page<Map<String, Object>> stationRanking(String day,String type,String areaCode );
} }
package com.yeejoin.amos.boot.module.jxiop.biz.service.impl; package com.yeejoin.amos.boot.module.jxiop.biz.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
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 com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jxiop.api.Enum.StationType; import com.yeejoin.amos.boot.module.jxiop.api.Enum.StationType;
import com.yeejoin.amos.boot.module.jxiop.api.dto.BuDunGenDto; import com.yeejoin.amos.boot.module.jxiop.api.dto.*;
import com.yeejoin.amos.boot.module.jxiop.api.dto.BudunDayGenTrendDto;
import com.yeejoin.amos.boot.module.jxiop.api.dto.BudunMonthTrendDto;
import com.yeejoin.amos.boot.module.jxiop.api.dto.BundunCompleteDto;
import com.yeejoin.amos.boot.module.jxiop.api.entity.MapRegion; import com.yeejoin.amos.boot.module.jxiop.api.entity.MapRegion;
import com.yeejoin.amos.boot.module.jxiop.api.entity.Region; import com.yeejoin.amos.boot.module.jxiop.api.entity.Region;
import com.yeejoin.amos.boot.module.jxiop.api.entity.StationBasic; import com.yeejoin.amos.boot.module.jxiop.api.entity.StationBasic;
...@@ -310,14 +308,14 @@ public class MonitorServiceImpl implements MonitorService { ...@@ -310,14 +308,14 @@ public class MonitorServiceImpl implements MonitorService {
MapRegion mapRegion = mapRegionMapper.selectOne(new QueryWrapper<MapRegion>().eq("areaCode", areaCode)); MapRegion mapRegion = mapRegionMapper.selectOne(new QueryWrapper<MapRegion>().eq("areaCode", areaCode));
String areaName = ""; String areaName = "";
if (!ObjectUtils.isEmpty(mapRegion) && !ObjectUtils.isEmpty(mapRegion.getName()) && !mapRegion.getName().contains(Constants.areaChinese)) { if (!ObjectUtils.isEmpty(mapRegion) && !ObjectUtils.isEmpty(mapRegion.getName()) && !mapRegion.getName().contains(Constants.areaChinese)) {
areaName = mapRegion.getName()+Constants.areaChinese; areaName = mapRegion.getName() + Constants.areaChinese;
} }
String requestUrl = Constants.BASE_URL+"?"+Constants.get_area_item_url; String requestUrl = Constants.BASE_URL + "?" + Constants.get_area_item_url;
if(areaCode!=null){ if (areaCode != null) {
requestUrl =requestUrl+"&areaName="+areaName; requestUrl = requestUrl + "&areaName=" + areaName;
} }
List<BuDunGenDto> buDunGenDtos=httpRequestUtil.getResPonse(requestUrl,Constants.REQUEST_GET,"",Constants.resovleRule_data,BuDunGenDto.class); List<BuDunGenDto> buDunGenDtos = httpRequestUtil.getResPonse(requestUrl, Constants.REQUEST_GET, "", Constants.resovleRule_data, BuDunGenDto.class);
if(buDunGenDtos.size()>0){ if (buDunGenDtos.size() > 0) {
totalAnnual = buDunGenDtos.get(0).getYear(); totalAnnual = buDunGenDtos.get(0).getYear();
} }
Page<HashMap<String, String>> page3 = new Page<>(1, 10); Page<HashMap<String, String>> page3 = new Page<>(1, 10);
...@@ -341,4 +339,50 @@ public class MonitorServiceImpl implements MonitorService { ...@@ -341,4 +339,50 @@ public class MonitorServiceImpl implements MonitorService {
page3.setRecords(list3); page3.setRecords(list3);
return page3; return page3;
} }
@Override
public Page<Map<String, Object>> stationRanking(String day, String type, String areaCode) {
String areaName = "";
String requestUrl = Constants.BASE_URL + "?" + Constants.get_hours_num_top + "&topValue=5&tabValue=" + day;
if (areaCode != null) {
MapRegion mapRegion = mapRegionMapper.selectOne(new QueryWrapper<MapRegion>().eq("areaCode", areaCode));
if (!ObjectUtils.isEmpty(mapRegion) && !ObjectUtils.isEmpty(mapRegion.getName()) && !mapRegion.getName().contains(Constants.areaChinese)) {
areaName = mapRegion.getName() + Constants.areaChinese;
}
requestUrl = requestUrl + "&areaName=" + areaName;
}
List<BuDunPvFanDto> buDunPvFanDtos = httpRequestUtil.getResPonse(requestUrl, Constants.REQUEST_GET, "", Constants.resovleRule_data, BuDunPvFanDto.class);
List<BudunStationValueDto> pvList = new ArrayList<>();
List<BudunStationValueDto> fanList = new ArrayList<>();
if (buDunPvFanDtos.size() > 0) {
BuDunPvFanDto buDunPvFanDto = buDunPvFanDtos.get(0);
pvList = buDunPvFanDtos.get(0).getPv();
fanList = buDunPvFanDtos.get(0).getFan();
}
List<Map<String, Object>> dayDataFan = new ArrayList<>();
List<Map<String, Object>> dayDataPV = new ArrayList<>();
fanList.stream().forEach(fan ->{
Map<String, Object> dayMap = new HashMap<>();
dayMap.put("name", fan.getStation_name());
dayMap.put("value",fan.getValue());
dayDataFan.add(dayMap);
});
pvList.stream().forEach(pv ->{
Map<String, Object> dayMap = new HashMap<>();
dayMap.put("name", pv.getStation_name());
dayMap.put("value",pv.getValue());
dayDataPV.add(dayMap);
});
Page<Map<String, Object>> socialContributionDtoPage = new Page<Map<String, Object>>();
socialContributionDtoPage.setCurrent(1);
socialContributionDtoPage.setTotal(100);
if ("gf".equals(type)) {
socialContributionDtoPage.setRecords(dayDataPV);
} else {
socialContributionDtoPage.setRecords(dayDataFan);
}
return socialContributionDtoPage;
}
} }
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