Commit 11cd929f authored by chenzhao's avatar chenzhao

修改代码

parent 541608fc
...@@ -991,10 +991,13 @@ public class MonitorFanIdxController extends BaseController { ...@@ -991,10 +991,13 @@ public class MonitorFanIdxController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "设备发电量 ") @ApiOperation(value = "设备发电量 ")
@GetMapping("/equipGeneratingCapacity") @GetMapping("/equipGeneratingCapacity")
public ResponseModel<ResultsData> equipGeneratingCapacity(@RequestParam(value = "current") int current, public IPage<Map<String,Object>> equipGeneratingCapacity(@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size, @RequestParam(value = "size") int size,
@RequestParam(value = "stationId") String stationId) { @RequestParam(value = "stationId") String stationId) {
Page<ESEquipments> result = new Page<ESEquipments>(current, size); Page<ESEquipments> result = new Page<ESEquipments>(current, size);
StationBasic stationBasic = stationBasicMapper.selectById(stationId);
String gatewayId = stationBasic.getFanGatewayId();
BoolQueryBuilder boolMustAll = QueryBuilders.boolQuery(); BoolQueryBuilder boolMustAll = QueryBuilders.boolQuery();
//警情状态 //警情状态
...@@ -1002,7 +1005,12 @@ public class MonitorFanIdxController extends BaseController { ...@@ -1002,7 +1005,12 @@ public class MonitorFanIdxController extends BaseController {
String[] keys = new String[] {"日发电量","月发电量","年发电量"}; String[] keys = new String[] {"日发电量","月发电量","年发电量"};
List<String> list = Arrays.asList(keys); List<String> list = Arrays.asList(keys);
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must((QueryBuilders.termsQuery("equipmentIndexName.keyword", list))).must(QueryBuilders.matchQuery("gatewayId.keyword","1668801435891929089")); if (!stationBasic.getStationType().equals("FDZ")){
boolQueryBuilder.must((QueryBuilders.termsQuery("equipmentIndexName.keyword", list))).must(QueryBuilders.matchQuery("gatewayId.keyword",gatewayId)).must(QueryBuilders.matchQuery("frontModule","逆变器"));
}else {
boolQueryBuilder.must((QueryBuilders.termsQuery("equipmentIndexName.keyword", list))).must(QueryBuilders.matchQuery("gatewayId.keyword",gatewayId));
}
should.add(boolQueryBuilder); should.add(boolQueryBuilder);
// 创建查询构造器 // 创建查询构造器
...@@ -1035,30 +1043,42 @@ public class MonitorFanIdxController extends BaseController { ...@@ -1035,30 +1043,42 @@ public class MonitorFanIdxController extends BaseController {
Map<String,Object> map = new HashMap<>(); Map<String,Object> map = new HashMap<>();
map.put("name",key); map.put("name",key);
for (ESEquipments equip : resultMap.get(key)) { for (ESEquipments equip : resultMap.get(key)) {
switch(equip.getEquipmentIndexName()){ if (!stationBasic.getStationType().equals("FDZ")){
float value = equip.getValueDouble();
float v = CommonConstans.pvGenPoweActor.floatValue();
equip.setValueDouble(value * v);
}
String value = String.format("%.4f", equip.getValueDouble());
switch(equip.getEquipmentIndexName()){
case "日发电量": case "日发电量":
map.put("dayNum",equip.getValueDouble()); map.put("dayNum",value);
break; break;
case "月发电量": case "月发电量":
map.put("monthNum",equip.getValueDouble()); map.put("monthNum",value);
break; break;
case "年发电量": case "年发电量":
map.put("yearNum",equip.getValueDouble()); map.put("yearNum",value);
break; break;
} }
} }
esEquipmentsMap.add(map); esEquipmentsMap.add(map);
} }
IPage<Map<String,Object>> page = new Page<>();
//构建平台数据 page.setTotal(esEquipmentsMap.size());
DataGridMock DataGridMock = new DataGridMock(current, esEquipmentsMap.size(), false, current, esEquipmentsMap); page.setSize(999);
ColModel colModelEquipmentNumber = new ColModel("name", "name", "设备名称", "设备名称", "dataGrid", "name"); page.setCurrent(1);
ColModel colModelPower = new ColModel("dayNum", "dayNum", "日发电量", "日发电量", "dataGrid", "dayNum"); page.setRecords(esEquipmentsMap);
ColModel colModelWindSpeed = new ColModel("monthNum", "monthNum", "月发电量", "月发电量", "dataGrid", "monthNum"); return page;
ColModel colModelWind = new ColModel("yearNum", "yearNum", "年发电量", "年发电量", "dataGrid", "yearNum"); // //构建平台数据
List<ColModel> listColModel = Arrays.asList(colModelEquipmentNumber, colModelPower, colModelWindSpeed, colModelWind); // DataGridMock DataGridMock = new DataGridMock(current, esEquipmentsMap.size(), false, current, esEquipmentsMap);
ResultsData resultsData = new ResultsData(DataGridMock, listColModel); // ColModel colModelEquipmentNumber = new ColModel("name", "name", "设备名称", "设备名称", "dataGrid", "name");
return ResponseHelper.buildResponse(resultsData); // ColModel colModelPower = new ColModel("dayNum", "dayNum", "日发电量", "日发电量", "dataGrid", "dayNum");
// ColModel colModelWindSpeed = new ColModel("monthNum", "monthNum", "月发电量", "月发电量", "dataGrid", "monthNum");
// ColModel colModelWind = new ColModel("yearNum", "yearNum", "年发电量", "年发电量", "dataGrid", "yearNum");
// List<ColModel> listColModel = Arrays.asList(colModelEquipmentNumber, colModelPower, colModelWindSpeed, colModelWind);
// ResultsData resultsData = new ResultsData(DataGridMock, listColModel);
// return ResponseHelper.buildResponse(resultsData);
} }
...@@ -1117,7 +1137,7 @@ public class MonitorFanIdxController extends BaseController { ...@@ -1117,7 +1137,7 @@ public class MonitorFanIdxController extends BaseController {
} }
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@Scheduled(cron = "0 0/10 * * * ? ") @Scheduled(cron = "0/30 * * * * ? ")
@ApiOperation(value = "接入情况 ") @ApiOperation(value = "接入情况 ")
@GetMapping("/accessSituation") @GetMapping("/accessSituation")
public ResponseModel<Map<String,Object>> accessSituation(){ public ResponseModel<Map<String,Object>> accessSituation(){
...@@ -1141,7 +1161,7 @@ public class MonitorFanIdxController extends BaseController { ...@@ -1141,7 +1161,7 @@ public class MonitorFanIdxController extends BaseController {
} }
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@Scheduled(cron = "0 0/10 * * * ? ") @Scheduled(cron = "0/30 * * * * ? ")
@ApiOperation(value = "区域接入情况 ") @ApiOperation(value = "区域接入情况 ")
@GetMapping("/qyAccessSituation") @GetMapping("/qyAccessSituation")
public ResponseModel<Map<String,Object>> qyAccessSituation(){ public ResponseModel<Map<String,Object>> qyAccessSituation(){
...@@ -1169,4 +1189,46 @@ public class MonitorFanIdxController extends BaseController { ...@@ -1169,4 +1189,46 @@ public class MonitorFanIdxController extends BaseController {
} }
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "健康运行百分比 ")
@GetMapping("/getFanStatusByZC")
public ResponseModel<Map<String,Object>> getFanStatusByZC(@RequestParam(value = "stationId", required = false) String stationId
) {
List<IndexDto> fanStatusList = monitorFanIndicator.getFanStatusStatistics(stationId);
int healthNum = 0;
int sum = 0;
for (IndexDto indexDto : fanStatusList) {
if (indexDto.getEquipmentIndexName().equals("正常运行")){
healthNum = Integer.parseInt(indexDto.getCountString());
}
sum += Integer.parseInt(indexDto.getCountString());
}
Map<String, Object> hashMap = new HashMap<>() ;
hashMap.put("title",healthNum+"/"+sum);
double percent = (double) healthNum / sum * 100;
int value = (int) percent;
String[] values = new String[]{String.valueOf(value)};
hashMap.put("seriesData",values);
return ResponseHelper.buildResponse(hashMap);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "单个风机状态")
@GetMapping("/getFanStatusByEquipNum")
public ResponseModel<Map<String,Object>> getFanStatusList(@RequestParam(value = "stationId", required = false) String stationId,
@RequestParam(value="equip")String equipNum) {
List<IndexDto> fanStatusList = monitorFanIndicator.getFanStatusList(stationId);
Map<String, Object> hashMap = new HashMap<>() ;
String status = "";
for (IndexDto indexDto : fanStatusList) {
if (indexDto.getEquipmentNumber().equals(equipNum)){
status =indexDto.getState();
}
}
hashMap.put("status",status);
return ResponseHelper.buildResponse(hashMap);
}
} }
...@@ -19,6 +19,7 @@ import com.yeejoin.amos.boot.module.jxiop.api.entity.StationBasic; ...@@ -19,6 +19,7 @@ import com.yeejoin.amos.boot.module.jxiop.api.entity.StationBasic;
import com.yeejoin.amos.boot.module.jxiop.api.mapper.MonitorFanIndicatorMapper; import com.yeejoin.amos.boot.module.jxiop.api.mapper.MonitorFanIndicatorMapper;
import com.yeejoin.amos.boot.module.jxiop.api.mapper.RegionMapper; import com.yeejoin.amos.boot.module.jxiop.api.mapper.RegionMapper;
import com.yeejoin.amos.boot.module.jxiop.api.mapper.StationBasicMapper; import com.yeejoin.amos.boot.module.jxiop.api.mapper.StationBasicMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.constants.CommonConstans;
import com.yeejoin.amos.boot.module.jxiop.biz.dto.*; import com.yeejoin.amos.boot.module.jxiop.biz.dto.*;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.*; import com.yeejoin.amos.boot.module.jxiop.biz.entity.*;
import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.AlarmEventMapper; import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.AlarmEventMapper;
...@@ -222,9 +223,9 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator { ...@@ -222,9 +223,9 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator {
Page<IndexDto> page = new Page<>(current, size); Page<IndexDto> page = new Page<>(current, size);
String sql = ""; String sql = "";
if (StringUtils.isNotEmpty(systemType)) { if (StringUtils.isNotEmpty(systemType)) {
sql = String.format("SELECT equipmentIndexName, value, frontModule, unit FROM \"indicators_%s\" WHERE equipmentNumber = '%s' and frontModule =~/%s/ and systemType =~/%s/ ", stationBasic.getFanGatewayId(), equipNum, frontModule, systemType); sql = String.format("SELECT equipmentIndexName, value, frontModule,systemType, unit FROM \"indicators_%s\" WHERE equipmentNumber = '%s' and frontModule =~/%s/ and systemType =~/%s/ ", stationBasic.getFanGatewayId(), equipNum, frontModule, systemType);
} else { } else {
sql = String.format("SELECT equipmentIndexName, value, frontModule, unit FROM \"indicators_%s\" WHERE equipmentNumber = '%s' and frontModule =~/%s/", stationBasic.getFanGatewayId(), equipNum, frontModule); sql = String.format("SELECT equipmentIndexName, value, frontModule,systemType, unit FROM \"indicators_%s\" WHERE equipmentNumber = '%s' and frontModule =~/%s/", stationBasic.getFanGatewayId(), equipNum, frontModule);
} }
List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class); List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class);
influxDBList.stream().forEach(e->{ influxDBList.stream().forEach(e->{
...@@ -313,41 +314,50 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator { ...@@ -313,41 +314,50 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator {
} }
public List<IndexDto> getFanStatusList(String stationId) { public List<IndexDto> getFanStatusList(String stationId) {
// StationBasic stationBasic = getOneByStationNumber(stationId);
// String sql = String.format("SELECT equipmentNumber, equipmentIndexName as state FROM \"indicators_%s\" WHERE equipmentIndexName =~/^报警状态|停机状态|故障状态|待机状态|维护状态|正常发电状态$/ and value = 'true'", stationBasic.getFanGatewayId());
// List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class);
// Map<String, String> collect = influxDBList.stream().collect(Collectors.toMap(IndexDto::getEquipmentNumber, IndexDto::getState, (item1, item2) -> item1));
// String sqlEquipNumList = String.format("SELECT (DISTINCT equipmentNumber) as equipmentNumber FROM \"indicators_%s\"", stationBasic.getFanGatewayId());
// List<IndexDto> equipNumList = influxDButils.getListData(sqlEquipNumList, IndexDto.class);
// List<Map<String, String>> fanConfigPower = monitorFanIndicatorregionMapper.getFanConfigPower(stationBasic.getFanGatewayId(), null);
// String equipmentSpecificNames = fanConfigPower.stream().map(t -> t.get("equipmentSpecificName")).collect(Collectors.joining("|"));
// String powerSql = String.format("SELECT equipmentNumber, value FROM \"indicators_%s\" WHERE equipmentSpecificName =~/^%s$/ and value = '9.0'", stationBasic.getFanGatewayId(), equipmentSpecificNames);
// List<IndexDto> powerNum = influxDButils.getListData(powerSql, IndexDto.class);
// List<String> powList = powerNum.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList());
// Date currentDayStartTime = DateUtils.dateAddMinutes(new Date(), -15);
// String time = "";
// try {
// time = DateUtils.dateFormat(currentDayStartTime, DateUtils.DATE_TIME_PATTERN);
// } catch (ParseException e) {
// e.printStackTrace();
// }
//
// String timeSql = String.format("select distinct equipmentNumber from \"indicators_%s\" where time >= '%s'", stationBasic.getFanGatewayId(), time);
// List<IndexDto> timeSqlList = influxDButils.getListData(timeSql, IndexDto.class);
// List<String> timeList = timeSqlList.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList());
// equipNumList.forEach(item -> {
// item.setState(collect.get(item.getEquipmentNumber()));
// if (!collect.containsKey(item.getEquipmentNumber())) {
// item.setState("正常运行");
// } else if (powList.contains(item.getEquipmentNumber())) {
// item.setState("限功率");
// } else if (!timeList.contains(item.getEquipmentNumber())) {
// item.setState("通讯中断");
// }
// });
StationBasic stationBasic = getOneByStationNumber(stationId); StationBasic stationBasic = getOneByStationNumber(stationId);
String sql = String.format("SELECT equipmentNumber, equipmentIndexName as state FROM \"indicators_%s\" WHERE equipmentIndexName =~/^报警状态|停机状态|故障状态|待机状态|维护状态|正常发电状态$/ and value = 'true'", stationBasic.getFanGatewayId()); String sql = String.format("SELECT equipmentNumber, equipmentIndexName as state FROM \"indicators_%s\" WHERE (equipmentIndexName =~/^发电状态|报警状态|停机状态|故障状态|待机状态|维护状态|正常发电状态$/ and value = 'true') or (equipmentIndexName ='实时故障22' and value='9')", stationBasic.getFanGatewayId());
List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class); List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class);
Map<String, String> collect = influxDBList.stream().collect(Collectors.toMap(IndexDto::getEquipmentNumber, IndexDto::getState, (item1, item2) -> item1));
String sqlEquipNumList = String.format("SELECT (DISTINCT equipmentNumber) as equipmentNumber FROM \"indicators_%s\"", stationBasic.getFanGatewayId()); String sqlEquipNumList = String.format("SELECT (DISTINCT equipmentNumber) as equipmentNumber FROM \"indicators_%s\"", stationBasic.getFanGatewayId());
List<IndexDto> equipNumList = influxDButils.getListData(sqlEquipNumList, IndexDto.class); List<IndexDto> equipNumList = influxDButils.getListData(sqlEquipNumList, IndexDto.class);
List<Map<String, String>> fanConfigPower = monitorFanIndicatorregionMapper.getFanConfigPower(stationBasic.getFanGatewayId(), null); Map<String, String> collect = influxDBList.stream().collect(Collectors.toMap(IndexDto::getEquipmentNumber, IndexDto::getState, (item1, item2) -> item1));
String equipmentSpecificNames = fanConfigPower.stream().map(t -> t.get("equipmentSpecificName")).collect(Collectors.joining("|"));
String powerSql = String.format("SELECT equipmentNumber, value FROM \"indicators_%s\" WHERE equipmentSpecificName =~/^%s$/ and value = '9.0'", stationBasic.getFanGatewayId(), equipmentSpecificNames);
List<IndexDto> powerNum = influxDButils.getListData(powerSql, IndexDto.class);
List<String> powList = powerNum.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList());
Date currentDayStartTime = DateUtils.dateAddMinutes(new Date(), -15);
String time = "";
try {
time = DateUtils.dateFormat(currentDayStartTime, DateUtils.DATE_TIME_PATTERN);
} catch (ParseException e) {
e.printStackTrace();
}
String timeSql = String.format("select distinct equipmentNumber from \"indicators_%s\" where time >= '%s'", stationBasic.getFanGatewayId(), time);
List<IndexDto> timeSqlList = influxDButils.getListData(timeSql, IndexDto.class);
List<String> timeList = timeSqlList.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList());
equipNumList.forEach(item -> { equipNumList.forEach(item -> {
item.setState(collect.get(item.getEquipmentNumber())); String status = ObjectUtils.isEmpty(CommonConstans.fanStatus.get(collect.get(item.getEquipmentNumber()))) ? "通讯中断" : CommonConstans.fanStatus.get(collect.get(item.getEquipmentNumber()));
if (!collect.containsKey(item.getEquipmentNumber())) { item.setState(status);
item.setState("正常运行");
} else if (powList.contains(item.getEquipmentNumber())) {
item.setState("限功率");
} else if (!timeList.contains(item.getEquipmentNumber())) {
item.setState("通讯中断");
}
}); });
return equipNumList; return equipNumList;
} }
public List<IndexDto> getFanStatusListOptimize(String stationId) { public List<IndexDto> getFanStatusListOptimize(String stationId) {
StationBasic stationBasic = getOneByStationNumber(stationId); StationBasic stationBasic = getOneByStationNumber(stationId);
...@@ -394,45 +404,46 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator { ...@@ -394,45 +404,46 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator {
return equipNumList; return equipNumList;
} }
public List<IndexDto> getFanStatusStatistics(String stationId) { public List<IndexDto> getFanStatusStatistics(String stationId) {
StationBasic stationBasic = getOneByStationNumber(stationId); // StationBasic stationBasic = getOneByStationNumber(stationId);
String sql = String.format("SELECT equipmentNumber, equipmentIndexName as state FROM \"indicators_%s\" WHERE equipmentIndexName =~/^报警状态|停机状态|故障状态|待机状态|维护状态|正常发电状态$/ and value = 'true'", stationBasic.getFanGatewayId()); // String sql = String.format("SELECT equipmentNumber, equipmentIndexName as state FROM \"indicators_%s\" WHERE equipmentIndexName =~/^报警状态|停机状态|故障状态|待机状态|维护状态|正常发电状态$/ and value = 'true'", stationBasic.getFanGatewayId());
List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class); // List<IndexDto> influxDBList = influxDButils.getListData(sql, IndexDto.class);
Map<String, String> collect = influxDBList.stream().collect(Collectors.toMap(IndexDto::getEquipmentNumber, IndexDto::getState, (item1, item2) -> item1)); // Map<String, String> collect = influxDBList.stream().collect(Collectors.toMap(IndexDto::getEquipmentNumber, IndexDto::getState, (item1, item2) -> item1));
String sqlEquipNumList = String.format("SELECT (DISTINCT equipmentNumber) as equipmentNumber FROM \"indicators_%s\"", stationBasic.getFanGatewayId()); // String sqlEquipNumList = String.format("SELECT (DISTINCT equipmentNumber) as equipmentNumber FROM \"indicators_%s\"", stationBasic.getFanGatewayId());
List<IndexDto> equipNumList = influxDButils.getListData(sqlEquipNumList, IndexDto.class); // List<IndexDto> equipNumList = influxDButils.getListData(sqlEquipNumList, IndexDto.class);
List<Map<String, String>> fanConfigPower = monitorFanIndicatorregionMapper.getFanConfigPower(stationBasic.getFanGatewayId(), null); // List<Map<String, String>> fanConfigPower = monitorFanIndicatorregionMapper.getFanConfigPower(stationBasic.getFanGatewayId(), null);
String equipmentSpecificNames = fanConfigPower.stream().map(t -> t.get("equipmentSpecificName")).collect(Collectors.joining("|")); // String equipmentSpecificNames = fanConfigPower.stream().map(t -> t.get("equipmentSpecificName")).collect(Collectors.joining("|"));
String powerSql = String.format("SELECT equipmentNumber, value FROM \"indicators_%s\" WHERE equipmentSpecificName =~/^%s$/ and value = '9.0'", stationBasic.getFanGatewayId(), equipmentSpecificNames); // String powerSql = String.format("SELECT equipmentNumber, value FROM \"indicators_%s\" WHERE equipmentSpecificName =~/^%s$/ and value = '9.0'", stationBasic.getFanGatewayId(), equipmentSpecificNames);
List<IndexDto> powerNum = influxDButils.getListData(powerSql, IndexDto.class); // List<IndexDto> powerNum = influxDButils.getListData(powerSql, IndexDto.class);
List<String> powList = powerNum.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList()); // List<String> powList = powerNum.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList());
Date currentDayStartTime = DateUtils.dateAddMinutes(new Date(), -15); // Date currentDayStartTime = DateUtils.dateAddMinutes(new Date(), -15);
String time = ""; // String time = "";
try { // try {
time = DateUtils.dateFormat(currentDayStartTime, DateUtils.DATE_TIME_PATTERN); // time = DateUtils.dateFormat(currentDayStartTime, DateUtils.DATE_TIME_PATTERN);
} catch (ParseException e) { // } catch (ParseException e) {
e.printStackTrace(); // e.printStackTrace();
} // }
String timeSql = String.format("select distinct equipmentNumber from \"indicators_%s\" where time >= '%s'", stationBasic.getFanGatewayId(), time); // String timeSql = String.format("select distinct equipmentNumber from \"indicators_%s\" where time >= '%s'", stationBasic.getFanGatewayId(), time);
List<IndexDto> timeSqlList = influxDButils.getListData(timeSql, IndexDto.class); // List<IndexDto> timeSqlList = influxDButils.getListData(timeSql, IndexDto.class);
List<String> timeList = timeSqlList.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList()); // List<String> timeList = timeSqlList.stream().map(IndexDto::getEquipmentNumber).collect(Collectors.toList());
equipNumList.forEach(item -> { // equipNumList.forEach(item -> {
item.setState(collect.get(item.getEquipmentNumber())); // item.setState(collect.get(item.getEquipmentNumber()));
if (!collect.containsKey(item.getEquipmentNumber())) { // if (!collect.containsKey(item.getEquipmentNumber())) {
item.setState("正常运行"); // item.setState("正常运行");
} else if (powList.contains(item.getEquipmentNumber())) { // } else if (powList.contains(item.getEquipmentNumber())) {
item.setState("限功率"); // item.setState("限功率");
} else if (!timeList.contains(item.getEquipmentNumber())) { // } else if (!timeList.contains(item.getEquipmentNumber())) {
item.setState("通讯中断"); // item.setState("通讯中断");
} // }
}); // });
List<IndexDto> equipNumList = getFanStatusList(stationId);
Map<String, Long> countMap = equipNumList.stream().collect(Collectors.groupingBy(IndexDto::getState, Collectors.counting())); Map<String, Long> countMap = equipNumList.stream().collect(Collectors.groupingBy(IndexDto::getState, Collectors.counting()));
List<IndexDto> resultList = new ArrayList<>(); List<IndexDto> resultList = new ArrayList<>();
List<String> list = Arrays.asList("正常运行", "告警运行", "正常停机", "故障停机", "限功率", "待机状态", "维护状态", "通讯中断"); List<String> list = Arrays.asList("正常运行", "报警运行", "停机状态", "故障状态", "限功率", "待机状态", "维护状态", "通讯中断");
HashMap<String, String> colorMap = new HashMap<>(); HashMap<String, String> colorMap = new HashMap<>();
colorMap.put("正常运行", "#00aa00"); colorMap.put("正常运行", "#00aa00");
colorMap.put("警运行", "#ffc400"); colorMap.put("警运行", "#ffc400");
colorMap.put("正常停机", "#0055ff"); colorMap.put("停机状态", "#0055ff");
colorMap.put("故障停机", "#00aaff"); colorMap.put("故障状态", "#00aaff");
colorMap.put("限功率", "#a3f5aa"); colorMap.put("限功率", "#a3f5aa");
colorMap.put("待机状态", "#ff0000"); colorMap.put("待机状态", "#ff0000");
colorMap.put("维护状态", "#ff00ff"); colorMap.put("维护状态", "#ff00ff");
......
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