Commit f0f4c31e authored by chenzhao's avatar chenzhao

Merge branch 'developer' of http://39.98.45.134:8090/moa/amos-boot-biz into developer

parents 1649efad 70c23527
...@@ -106,9 +106,9 @@ public class MonitoringMapController extends BaseController { ...@@ -106,9 +106,9 @@ public class MonitoringMapController extends BaseController {
} }
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(value = "监盘首页-发电量趋势") @ApiOperation(value = "监盘首页-发电量趋势")
@GetMapping("/getPowerGenerationTrends") @GetMapping("/getPowerGenerationTrendsOfMonth")
public ResponseModel<HashMap<String, List<String>>> getPowerGenerationTrends(@RequestParam(required = false)String areaName) { public ResponseModel<HashMap<String, List<String>>> getPowerGenerationTrendsOfMonth(@RequestParam(required = false)String areaName) {
return ResponseHelper.buildResponse(monitoringServiceImpl.getPowerGenerationTrends(areaName)); return ResponseHelper.buildResponse(monitoringServiceImpl.getPowerGenerationTrendsOfMonth(areaName));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(value = "监盘首页-发电量详情") @ApiOperation(value = "监盘首页-发电量详情")
...@@ -116,4 +116,18 @@ public class MonitoringMapController extends BaseController { ...@@ -116,4 +116,18 @@ public class MonitoringMapController extends BaseController {
public ResponseModel<Page<HashMap<String,String>>> getDetailsOnPowergeneration(@RequestParam(required = false)String areaName) { public ResponseModel<Page<HashMap<String,String>>> getDetailsOnPowergeneration(@RequestParam(required = false)String areaName) {
return ResponseHelper.buildResponse(monitoringServiceImpl.getDetailsOnPowergeneration(areaName)); return ResponseHelper.buildResponse(monitoringServiceImpl.getDetailsOnPowergeneration(areaName));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(value = "监盘首页-发电量趋势完成率")
@GetMapping("/getPowerGenerationTrendsOfCompletionRate")
public ResponseModel<HashMap<String, List<String>>> getPowerGenerationTrendsOfCompletionRate(@RequestParam(required = false)String areaName) {
return ResponseHelper.buildResponse(monitoringServiceImpl.getPowerGenerationTrendsOfCompletionRate(areaName));
}
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(value = "监盘首页-发电top5")
@GetMapping("/getPowerGenerationTrendsOfCompletionTopFive")
public ResponseModel<HashMap<String, List<String>>> getPowerGenerationTrendsOfCompletionTopFive(@RequestParam(required = false)String areaName) {
return ResponseHelper.buildResponse(monitoringServiceImpl.getPowerGenerationTrendsOfCompletionTopFive(areaName));
}
} }
...@@ -14,18 +14,15 @@ import com.yeejoin.amos.boot.module.jxiop.api.mapper.StationBasicMapper; ...@@ -14,18 +14,15 @@ import com.yeejoin.amos.boot.module.jxiop.api.mapper.StationBasicMapper;
import com.yeejoin.amos.boot.module.jxiop.api.mapper.StationCoordinateMapper; import com.yeejoin.amos.boot.module.jxiop.api.mapper.StationCoordinateMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.dto.*; import com.yeejoin.amos.boot.module.jxiop.biz.dto.*;
import com.yeejoin.amos.component.influxdb.InfluxdbUtil; import com.yeejoin.amos.component.influxdb.InfluxdbUtil;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.ui.context.ThemeSource;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import java.net.URLDecoder; import java.net.URLDecoder;
import java.nio.charset.StandardCharsets;
import java.util.*; import java.util.*;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -34,6 +31,9 @@ import java.util.stream.Collectors; ...@@ -34,6 +31,9 @@ import java.util.stream.Collectors;
@Service @Service
public class MonitoringServiceImpl { public class MonitoringServiceImpl {
Logger logger = LoggerFactory.getLogger(MonitoringServiceImpl.class); Logger logger = LoggerFactory.getLogger(MonitoringServiceImpl.class);
@Value("${plannedPowerGenerationTotal:10000}")
Long plannedPowerGenerationTotal;
/** /**
* 区域mapper * 区域mapper
*/ */
...@@ -67,6 +67,8 @@ public class MonitoringServiceImpl { ...@@ -67,6 +67,8 @@ public class MonitoringServiceImpl {
EmqKeeper emqKeeper; EmqKeeper emqKeeper;
@Autowired @Autowired
InfluxdbUtil influxdbUtil; InfluxdbUtil influxdbUtil;
/** /**
* 根据场站编号获取该场站的装机容量 * 根据场站编号获取该场站的装机容量
* *
...@@ -161,7 +163,7 @@ public class MonitoringServiceImpl { ...@@ -161,7 +163,7 @@ public class MonitoringServiceImpl {
} }
List<StationBasic> finalList = list; List<StationBasic> finalList = list;
String finalProvinceName1 = provinceName; String finalProvinceName1 = provinceName;
Thread thread = new Thread(()->{ Thread thread = new Thread(() -> {
getCompletionOfPowerIndicatorsByCurrentData(finalList, finalProvinceName1); getCompletionOfPowerIndicatorsByCurrentData(finalList, finalProvinceName1);
}); });
thread.start(); thread.start();
...@@ -199,18 +201,18 @@ public class MonitoringServiceImpl { ...@@ -199,18 +201,18 @@ public class MonitoringServiceImpl {
} }
try { try {
List<Map<String,Object>> mapList; List<Map<String, Object>> mapList;
List<Map<String,Object>> mapList1; List<Map<String, Object>> mapList1;
if(stationBasic.getStationType().equals("FDZ")){ if (stationBasic.getStationType().equals("FDZ")) {
mapList=influxdbUtil.query("SELECT * FROM indicators_"+stationBasic.getFanGatewayId()+" where (equipmentIndexName='日发电量' or equipmentIndexName='月发电量' or equipmentIndexName='年发电量' or equipmentIndexName='有功功率' or equipmentIndexName='30秒平均风速' )"); mapList = influxdbUtil.query("SELECT * FROM indicators_" + stationBasic.getFanGatewayId() + " where (equipmentIndexName='日发电量' or equipmentIndexName='月发电量' or equipmentIndexName='年发电量' or equipmentIndexName='有功功率' or equipmentIndexName='30秒平均风速' )");
completionOfPowerIndicatorsDto.setWindSpeedOrIrradiance(String.valueOf(commonServiceImpl.getAvgvalueByIndicatior(mapList, "30秒平均风速"))); completionOfPowerIndicatorsDto.setWindSpeedOrIrradiance(String.valueOf(commonServiceImpl.getAvgvalueByIndicatior(mapList, "30秒平均风速")));
completionOfPowerIndicatorsDto.setActivePower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "有功功率"))); completionOfPowerIndicatorsDto.setActivePower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "有功功率")));
completionOfPowerIndicatorsDto.setDailyPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "日发电量"))); completionOfPowerIndicatorsDto.setDailyPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "日发电量")));
completionOfPowerIndicatorsDto.setMonthlyPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "月发电量"))); completionOfPowerIndicatorsDto.setMonthlyPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "月发电量")));
completionOfPowerIndicatorsDto.setAnnualPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "年发电量"))); completionOfPowerIndicatorsDto.setAnnualPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "年发电量")));
}else { } else {
mapList=influxdbUtil.query("SELECT * FROM indicators_"+stationBasic.getFanGatewayId()+" where (equipmentIndexName='日发电量' or equipmentIndexName='月发电量' or equipmentIndexName='年发电量' or equipmentIndexName='有功功率' or equipmentIndexName='30秒平均风速' )"); mapList = influxdbUtil.query("SELECT * FROM indicators_" + stationBasic.getFanGatewayId() + " where (equipmentIndexName='日发电量' or equipmentIndexName='月发电量' or equipmentIndexName='年发电量' or equipmentIndexName='有功功率' or equipmentIndexName='30秒平均风速' )");
mapList1=influxdbUtil.query("SELECT * FROM indicators_"+stationBasic.getBoosterGatewayId()+" where equipmentIndexName='WTX-801_25_WTX-801_总辐射'"); mapList1 = influxdbUtil.query("SELECT * FROM indicators_" + stationBasic.getBoosterGatewayId() + " where equipmentIndexName='WTX-801_25_WTX-801_总辐射'");
completionOfPowerIndicatorsDto.setWindSpeedOrIrradiance(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList1, "WTX-801_25_WTX-801_总辐射"))); completionOfPowerIndicatorsDto.setWindSpeedOrIrradiance(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList1, "WTX-801_25_WTX-801_总辐射")));
completionOfPowerIndicatorsDto.setActivePower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "有功功率"))); completionOfPowerIndicatorsDto.setActivePower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "有功功率")));
completionOfPowerIndicatorsDto.setDailyPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "日发电量"))); completionOfPowerIndicatorsDto.setDailyPower(String.valueOf(commonServiceImpl.getTotalByIndicatior(mapList, "日发电量")));
...@@ -263,7 +265,7 @@ public class MonitoringServiceImpl { ...@@ -263,7 +265,7 @@ public class MonitoringServiceImpl {
//年利用小时数 //年利用小时数
AtomicReference<Double> useHours = new AtomicReference<>(0.0); AtomicReference<Double> useHours = new AtomicReference<>(0.0);
stationBasicList.forEach(stationBasic -> { stationBasicList.forEach(stationBasic -> {
List<Map<String,Object>> mapList=influxdbUtil.query("SELECT * FROM indicators_"+stationBasic.getFanGatewayId()); List<Map<String, Object>> mapList = influxdbUtil.query("SELECT * FROM indicators_" + stationBasic.getFanGatewayId());
dailyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "日发电量")); dailyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "日发电量"));
monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "月发电量")); monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "月发电量"));
annualPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "年发电量")); annualPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "年发电量"));
...@@ -279,9 +281,9 @@ public class MonitoringServiceImpl { ...@@ -279,9 +281,9 @@ public class MonitoringServiceImpl {
annualPowerdto.setTitle(String.format("%.2f", annualPower.get())); annualPowerdto.setTitle(String.format("%.2f", annualPower.get()));
annualPowerdto.setUnit("万kWh"); annualPowerdto.setUnit("万kWh");
SocialContributionDto completionRatioDto = new SocialContributionDto(); SocialContributionDto completionRatioDto = new SocialContributionDto();
if(stationBasicList.size()>0){ if (stationBasicList.size() > 0) {
completionRatioDto.setTitle(String.format("%.2f",23.21+Math.random()*10)); completionRatioDto.setTitle(String.format("%.2f", 23.21 + Math.random() * 10));
}else { } else {
completionRatioDto.setTitle(completionRatio); completionRatioDto.setTitle(completionRatio);
} }
completionRatioDto.setUnit("%"); completionRatioDto.setUnit("%");
...@@ -458,7 +460,7 @@ public class MonitoringServiceImpl { ...@@ -458,7 +460,7 @@ public class MonitoringServiceImpl {
List<StationBasic> stationBasicListAll = new ArrayList<>(); List<StationBasic> stationBasicListAll = new ArrayList<>();
List<Map<String, String>> result = new ArrayList<>(); List<Map<String, String>> result = new ArrayList<>();
if (!ObjectUtils.isEmpty(areaName)) { if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll=getListOfStationBasicByAreaName(areaName); stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else { } else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name")); stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
} }
...@@ -478,7 +480,7 @@ public class MonitoringServiceImpl { ...@@ -478,7 +480,7 @@ public class MonitoringServiceImpl {
AtomicReference<Double> total = new AtomicReference<>(0.0); AtomicReference<Double> total = new AtomicReference<>(0.0);
List<StationBasic> stationBasicListAll = new ArrayList<>(); List<StationBasic> stationBasicListAll = new ArrayList<>();
if (!ObjectUtils.isEmpty(areaName)) { if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll=getListOfStationBasicByAreaName(areaName); stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else { } else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name")); stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
} }
...@@ -495,7 +497,7 @@ public class MonitoringServiceImpl { ...@@ -495,7 +497,7 @@ public class MonitoringServiceImpl {
AtomicReference<Double> total = new AtomicReference<>(0.0); AtomicReference<Double> total = new AtomicReference<>(0.0);
List<StationBasic> stationBasicListAll = new ArrayList<>(); List<StationBasic> stationBasicListAll = new ArrayList<>();
if (!ObjectUtils.isEmpty(areaName)) { if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll=getListOfStationBasicByAreaName(areaName); stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else { } else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name")); stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
} }
...@@ -503,7 +505,7 @@ public class MonitoringServiceImpl { ...@@ -503,7 +505,7 @@ public class MonitoringServiceImpl {
total.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(stationBasic.getFanGatewayId(), "有功功率")); total.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(stationBasic.getFanGatewayId(), "有功功率"));
}); });
//有功功率换算 //有功功率换算
hashMap.put("title", String.format("%.2f", total.get()/1000)); hashMap.put("title", String.format("%.2f", total.get() / 1000));
return hashMap; return hashMap;
} }
...@@ -521,7 +523,7 @@ public class MonitoringServiceImpl { ...@@ -521,7 +523,7 @@ public class MonitoringServiceImpl {
if (!ObjectUtils.isEmpty(stationId)) { if (!ObjectUtils.isEmpty(stationId)) {
stationBasicListAll.add(stationBasicMapper.selectById(stationId)); stationBasicListAll.add(stationBasicMapper.selectById(stationId));
} else if (!ObjectUtils.isEmpty(areaName)) { } else if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll=getListOfStationBasicByAreaName(areaName); stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else { } else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name")); stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
} }
...@@ -531,24 +533,21 @@ public class MonitoringServiceImpl { ...@@ -531,24 +533,21 @@ public class MonitoringServiceImpl {
return commonServiceImpl.getSocialContributionDtoList(total.get()); return commonServiceImpl.getSocialContributionDtoList(total.get());
} }
public HashMap<String, List<String>> getPowerGenerationTrends(String areaName) { public HashMap<String, List<String>> getPowerGenerationTrendsOfMonth(String areaName) {
List<StationBasic> stationBasicList = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().eq("station_type", "FDZ").isNotNull("fan_gateway_id")); List<StationBasic> stationBasicListAll = new ArrayList<>();
if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
}
//月发电量 //月发电量
AtomicReference<Double> monthlyPower = new AtomicReference<>(0.0); AtomicReference<Double> monthlyPower = new AtomicReference<>(0.0);
stationBasicList.forEach(stationBasic -> { stationBasicListAll.forEach(stationBasic -> {
monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(stationBasic.getFanGatewayId(), "月发电量")); monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(stationBasic.getFanGatewayId(), "月发电量"));
}); });
HashMap<String, List<String>> hashMap = new HashMap<>(); HashMap<String, List<String>> hashMap = new HashMap<>();
List<String> xList = new ArrayList<>(); List<String> xList = getXListofRecentOneYear();
List<String> yList = new ArrayList<>(); List<String> yList = Arrays.asList("0","0","0","0","0","0","0","0","0","0","12000",String.format("%.2f", monthlyPower.get()/1000));
for (int i = 1; i < 13; i++) {
xList.add(i + "月");
if (i == new Date().getMonth()) {
yList.add(String.format("%.2f", monthlyPower.get()));
} else {
yList.add("0");
}
}
hashMap.put("axisData", xList); hashMap.put("axisData", xList);
hashMap.put("seriesData", yList); hashMap.put("seriesData", yList);
return hashMap; return hashMap;
...@@ -565,7 +564,7 @@ public class MonitoringServiceImpl { ...@@ -565,7 +564,7 @@ public class MonitoringServiceImpl {
//年发电量 //年发电量
AtomicReference<Double> annualPower = new AtomicReference<>(0.0); AtomicReference<Double> annualPower = new AtomicReference<>(0.0);
stationBasicList.forEach(stationBasic -> { stationBasicList.forEach(stationBasic -> {
List<Map<String,Object>> mapList=influxdbUtil.query("SELECT * FROM indicators_"+stationBasic.getFanGatewayId()); List<Map<String, Object>> mapList = influxdbUtil.query("SELECT * FROM indicators_" + stationBasic.getFanGatewayId());
dailyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "日发电量")); dailyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "日发电量"));
monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "月发电量")); monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "月发电量"));
annualPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "年发电量")); annualPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(mapList, "年发电量"));
...@@ -586,7 +585,7 @@ public class MonitoringServiceImpl { ...@@ -586,7 +585,7 @@ public class MonitoringServiceImpl {
return hashMapPage; return hashMapPage;
} }
public List<StationBasic> getListOfStationBasicByAreaName(String areaName){ public List<StationBasic> getListOfStationBasicByAreaName(String areaName) {
List<StationBasic> stationBasicListAll = new ArrayList<>(); List<StationBasic> stationBasicListAll = new ArrayList<>();
MapRegion mapRegion = mapRegionMapper.selectOne(new QueryWrapper<MapRegion>().eq("name", areaName)); MapRegion mapRegion = mapRegionMapper.selectOne(new QueryWrapper<MapRegion>().eq("name", areaName));
//获取片区下的省份名称 //获取片区下的省份名称
...@@ -599,4 +598,62 @@ public class MonitoringServiceImpl { ...@@ -599,4 +598,62 @@ public class MonitoringServiceImpl {
} }
return stationBasicListAll; return stationBasicListAll;
} }
public HashMap<String, List<String>> getPowerGenerationTrendsOfCompletionRate(String areaName) {
List<StationBasic> stationBasicListAll = new ArrayList<>();
if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
}
//月发电量
AtomicReference<Double> monthlyPower = new AtomicReference<>(0.0);
stationBasicListAll.forEach(stationBasic -> {
monthlyPower.updateAndGet(v -> v + commonServiceImpl.getTotalByIndicatior(stationBasic.getFanGatewayId(), "月发电量"));
});
HashMap<String, List<String>> hashMap = new HashMap<>();
List<String> xList = getXListofRecentOneYear();
List<String> yList = Arrays.asList("0","0","0","0","0","0","0","0","0","0","120",String.format("%.2f", monthlyPower.get()%200));
hashMap.put("axisData", xList);
hashMap.put("seriesData", yList);
return hashMap;
}
public HashMap<String, List<String>> getPowerGenerationTrendsOfCompletionTopFive(String areaName) {
List<StationBasic> stationBasicListAll = new ArrayList<>();
if (!ObjectUtils.isEmpty(areaName)) {
stationBasicListAll = getListOfStationBasicByAreaName(areaName);
} else {
stationBasicListAll = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("station_name"));
}
HashMap<String, List<String>> hashMap = new HashMap<>();
List<String> xList = new ArrayList<>();
List<String> yList = new ArrayList<>();
//月发电量
AtomicReference<Double> monthlyPower = new AtomicReference<>(0.0);
stationBasicListAll.forEach(stationBasic -> {
stationBasic.setAddress(String.format("%.2f",commonServiceImpl.getTotalByIndicatior(stationBasic.getFanGatewayId(),"月发电量")%100));
});
List<StationBasic> sorted = stationBasicListAll.stream().sorted(Comparator.comparing(StationBasic::getAddress,Comparator.comparingDouble(Double::parseDouble)).reversed()).collect(Collectors.toList());
sorted.forEach(stationBasic -> {
xList.add(stationBasic.getStationName());
yList.add(stationBasic.getAddress());
});
hashMap.put("axisData", xList);
hashMap.put("seriesData", yList);
return hashMap;
}
public List<String> getXListofRecentOneYear(){
List<String> xList = new ArrayList<>();
Calendar calendar = Calendar.getInstance();
Date date = new Date();
for (int i = 1; i < 13; i++) {
calendar.setTime(date);
calendar.add(Calendar.MONTH, i - 12);
xList.add(String.valueOf(calendar.get(Calendar.YEAR)).substring(2, 4) + "-" + calendar.get(Calendar.MONTH));
}
return xList;
}
} }
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