Commit a226e31d authored by caotao's avatar caotao

泰和光伏-场站总览功率曲线 数据源切换

parent 797c5b80
...@@ -123,4 +123,8 @@ public class CommonConstans { ...@@ -123,4 +123,8 @@ public class CommonConstans {
public static final String taiHeGenIndicatorMonth = "泰和月发电量总和"; public static final String taiHeGenIndicatorMonth = "泰和月发电量总和";
public static final String taiHeGenIndicatorYear = "泰和年发电量总和"; public static final String taiHeGenIndicatorYear = "泰和年发电量总和";
public static final String taiheActivePowerPoint = "南瑞光差保护_313P";
public static final String taiheIrradiationPonit = "WTX-801_25_WTX-801_总辐射";
public static final String xiazaoActivePowerPoint = "220kV夏雩线212线路测控装置PCS-9705TA有功功率一次值";
public static final String xiazaoWindSpeedrPoint = "瞬时风速";
} }
...@@ -291,19 +291,9 @@ public class MonitorFanIdxController extends BaseController { ...@@ -291,19 +291,9 @@ public class MonitorFanIdxController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "概览-全站功率曲线") @ApiOperation(value = "概览-全站功率曲线")
@GetMapping("/overviewWindSpeed") @GetMapping("/overviewWindSpeed")
public ResponseModel<Map<String, Object>> getOverviewWindSpeed(@RequestParam(value = "stationId", required = false) String stationId, @RequestParam(value = "type", required = false) String type, @RequestParam(value = "areaCode", required = false) String areaCode) { public void getOverviewWindSpeed(@RequestParam(value = "stationId", required = true) String stationId, @RequestParam(value = "type", required = false) String type, @RequestParam(value = "areaCode", required = false) String areaCode) {
String gatewayId = ""; StationBasic stationBasic = stationBasicMapper.selectById(stationId);
if (null != stationId) { monitorFanIndicator.getDetailsWindSpeedAll(stationBasic);
StationBasic stationBasic = stationBasicMapper.selectById(stationId);
gatewayId = stationBasic.getBoosterGatewayId();
if (null == type) {
gatewayId = stationBasic.getFanGatewayId();
}
}
Map<String, Object> detailsWindSpeed = monitorFanIndicator.getDetailsWindSpeedAll(gatewayId);
return ResponseHelper.buildResponse(detailsWindSpeed);
} }
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
...@@ -676,7 +666,7 @@ public class MonitorFanIdxController extends BaseController { ...@@ -676,7 +666,7 @@ public class MonitorFanIdxController extends BaseController {
Double todayPower = Double.valueOf(columnMap.get(CommonConstans.taiHeGenIndicatorDay).toString()); Double todayPower = Double.valueOf(columnMap.get(CommonConstans.taiHeGenIndicatorDay).toString());
Double total = commonService.getSumByEquipmentIndxName(result1, "WTX-801_25_WTX-801_总辐射累计"); Double total = commonService.getSumByEquipmentIndxName(result1, "WTX-801_25_WTX-801_总辐射累计");
if (todayPower > 0 && total > 0) { if (todayPower > 0 && total > 0) {
Double overallEfficiency = todayPower*CommonConstans.wkwhToMv / ((total / 3.6) * capacityl); Double overallEfficiency = todayPower * CommonConstans.wkwhToMv / ((total / 3.6) * capacityl);
data9.put("title", String.format("%.2f", overallEfficiency * 100) + "%");//综合效率 data9.put("title", String.format("%.2f", overallEfficiency * 100) + "%");//综合效率
} else { } else {
data9.put("title", "0.00%");//综合效率 data9.put("title", "0.00%");//综合效率
......
...@@ -363,16 +363,16 @@ public class CommonServiceImpl { ...@@ -363,16 +363,16 @@ public class CommonServiceImpl {
氮氧化物减排量(t)=发电量(万kW·h)*1.69 氮氧化物减排量(t)=发电量(万kW·h)*1.69
*/ */
co2.setUnit("二氧化碳减排量(t)"); co2.setUnit("二氧化碳减排量(t)");
co2.setTitle(String.format("%.2f", totalSocialContribution * CommonConstans.carbonDioxide*CommonConstans.kgToT)); co2.setTitle(String.format("%.2f", totalSocialContribution * CommonConstans.carbonDioxide));
socialContributionDtoList.add(co2); socialContributionDtoList.add(co2);
coal.setUnit("节约标准煤(t)"); coal.setUnit("节约标准煤(t)");
coal.setTitle(String.format("%.2f", (totalSocialContribution * CommonConstans.standardCoal*CommonConstans.kgToT))); coal.setTitle(String.format("%.2f", (totalSocialContribution * CommonConstans.standardCoal)));
socialContributionDtoList.add(coal); socialContributionDtoList.add(coal);
toner.setUnit("碳粉尘减排量(t)"); toner.setUnit("碳粉尘减排量(t)");
toner.setTitle(String.format("%.2f", (totalSocialContribution * CommonConstans.toner * CommonConstans.kgToT))); toner.setTitle(String.format("%.2f", (totalSocialContribution * CommonConstans.toner )));
socialContributionDtoList.add(toner); socialContributionDtoList.add(toner);
so2.setUnit("二氧化硫减排量(t)"); so2.setUnit("二氧化硫减排量(t)");
so2.setTitle(String.format("%.2f", (totalSocialContribution * CommonConstans.sulfurDioxide * CommonConstans.kgToT))); so2.setTitle(String.format("%.2f", (totalSocialContribution * CommonConstans.sulfurDioxide )));
socialContributionDtoList.add(so2); socialContributionDtoList.add(so2);
socialContributionDtoPage.setRecords(socialContributionDtoList); socialContributionDtoPage.setRecords(socialContributionDtoList);
socialContributionDtoPage.setTotal(100); socialContributionDtoPage.setTotal(100);
......
...@@ -76,7 +76,7 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator { ...@@ -76,7 +76,7 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator {
TpriDmpDatabookServiceImpl tpriDmpDatabookServiceImpl; TpriDmpDatabookServiceImpl tpriDmpDatabookServiceImpl;
@Autowired @Autowired
TemporaryDataMapper temporaryDataMapper; TemporaryDataMapper temporaryDataMapper;
// @Autowired // @Autowired
// InfluxDButils influxDButils; // InfluxDButils influxDButils;
@Autowired @Autowired
AlarmEventMapper alarmEventMapper; AlarmEventMapper alarmEventMapper;
...@@ -2080,119 +2080,99 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator { ...@@ -2080,119 +2080,99 @@ public class MonitorFanIndicatorImpl implements IMonitorFanIndicator {
return deaviationRateDtoPage; return deaviationRateDtoPage;
} }
@Scheduled(cron = "0 */10 * * * ?") @Scheduled(cron = "0 */5 * * * ?")
//@Scheduled(cron = "0/1 * * * * ?") public void addNbqAlarmEvent() {
public void addNbqAlarmEvent() {
LambdaQueryWrapper<StationBasic> wrapper = new LambdaQueryWrapper<>();
LambdaQueryWrapper<StationBasic> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BaseEntity::getIsDelete, false);
wrapper.eq(BaseEntity::getIsDelete, false); List<StationBasic> stationBasics = stationBasicMapper.selectList(wrapper);
wrapper.like(StationBasic::getStationType, "GFDZ"); for (StationBasic stationBasic : stationBasics) {
List<StationBasic> stationBasics = stationBasicMapper.selectList(wrapper); Map<String, List<String>> queryCondtion = new HashMap<>();
for (StationBasic stationBasic : stationBasics) { Map<String, String> shouldCondtion = new HashMap<>();
Map<String, List<String>> queryCondtion = new HashMap<>(); queryCondtion.put(CommonConstans.QueryStringGateWayId, Arrays.asList(stationBasic.getFanGatewayId()));
Map<String, String> shouldCondtion = new HashMap<>(); queryCondtion.put(CommonConstans.QueryStringEquipmentIndexName, Arrays.asList("待机", "停机", "告警运行", "限额运行", "降额运行", "故障停机", "通讯故障", "运行"));
queryCondtion.put(CommonConstans.QueryStringGateWayId, Arrays.asList(stationBasic.getFanGatewayId())); queryCondtion.put(CommonConstans.QueryStringValueKeyword, Arrays.asList("true"));
queryCondtion.put(CommonConstans.QueryStringEquipmentIndexName,
Arrays.asList("待机", "停机", "告警运行", "限额运行", "降额运行", "故障停机", "通讯故障", "运行")); /**
queryCondtion.put(CommonConstans.QueryStringValueKeyword, Arrays.asList("true")); * 逆变器
*/
/** List<ESEquipments> indicatorsDtoList = commonServiceImpl.getListDataByCondtions(queryCondtion, null, ESEquipments.class);
* 逆变器 /**
*/ * 汇流箱
List<ESEquipments> indicatorsDtoList = commonServiceImpl.getListDataByCondtions(queryCondtion, null, */
ESEquipments.class); queryCondtion.remove(CommonConstans.QueryStringEquipmentIndexName);
Collections.sort(indicatorsDtoList, (a, b) -> (b.getCreatedTime()) queryCondtion.remove(CommonConstans.QueryStringValueKeyword);
.compareTo(a.getCreatedTime())); queryCondtion.put(CommonConstans.QueryStringDataType, Arrays.asList("state"));
shouldCondtion.put(CommonConstans.QueryStringFrontMoudle, "汇流箱");
//过滤重复状态 List<ESEquipments> indicatorsDtoListHLX = commonServiceImpl.getListDataByCondtions(queryCondtion, shouldCondtion, ESEquipments.class);
List<ESEquipments> nindicatorsDtoList=indicatorsDtoList.stream().collect(Collectors.collectingAndThen( /**
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(ESEquipments::getDisplayName))), ArrayList::new)); * 箱变
*/
shouldCondtion.put(CommonConstans.QueryStringFrontMoudle, "箱变");
List<ESEquipments> indicatorsDtoListXB = commonServiceImpl.getListDataByCondtions(queryCondtion, shouldCondtion, ESEquipments.class);
/** ;
* 汇流箱 indicatorsDtoList.addAll(indicatorsDtoListHLX);
*/ indicatorsDtoList.addAll(indicatorsDtoListXB);
queryCondtion.remove(CommonConstans.QueryStringEquipmentIndexName);
queryCondtion.remove(CommonConstans.QueryStringValueKeyword); List<EquipAlarmEvent> newEquipAlarmEvents = new ArrayList<>();
queryCondtion.put(CommonConstans.QueryStringDataType, Arrays.asList("state")); List<EquipAlarmEvent> newEquipAlarmEvent = new ArrayList<>();
shouldCondtion.put(CommonConstans.QueryStringFrontMoudle, "汇流箱"); long time = new Date().getTime();
List<ESEquipments> indicatorsDtoListHLX = commonServiceImpl.getListDataByCondtions(queryCondtion, if (CollectionUtils.isNotEmpty(indicatorsDtoList)){
shouldCondtion, ESEquipments.class); for (ESEquipments esEquipments : indicatorsDtoList) {
/** EquipAlarmEvent equipAlarmEvent = new EquipAlarmEvent();
* 箱变 equipAlarmEvent.setEquipIndex(esEquipments.getEquipmentNumber());
*/ equipAlarmEvent.setEquipName(esEquipments.getEquipmentSpecificName());
shouldCondtion.put(CommonConstans.QueryStringFrontMoudle, "箱变"); equipAlarmEvent.setAlarmDesc(AlarmDesc.getCode(esEquipments.getEquipmentIndexName()));
List<ESEquipments> indicatorsDtoListXB = commonServiceImpl.getListDataByCondtions(queryCondtion, equipAlarmEvent.setAlarmDesc(StringUtils.isEmpty(equipAlarmEvent.getAlarmDesc()) ? esEquipments.getEquipmentIndexName() : equipAlarmEvent.getAlarmDesc());
shouldCondtion, ESEquipments.class); equipAlarmEvent.setCreatedTime(esEquipments.getCreatedTime());
indicatorsDtoList.addAll(indicatorsDtoListHLX); equipAlarmEvent.setGatewayId(stationBasic.getFanGatewayId());
indicatorsDtoList.addAll(indicatorsDtoListXB); equipAlarmEvent.setSort(time);
equipAlarmEvent.setFrontModule(esEquipments.getFrontModule());
List<EquipAlarmEvent> newEquipAlarmEvents = new ArrayList<>(); equipAlarmEvent.setValue(esEquipments.getValue());
List<EquipAlarmEvent> newEquipAlarmEvent = new ArrayList<>(); newEquipAlarmEvents.add(equipAlarmEvent);
long time = new Date().getTime(); newEquipAlarmEvent.add(equipAlarmEvent);
if (CollectionUtils.isNotEmpty(nindicatorsDtoList)) { }
for (ESEquipments esEquipments : nindicatorsDtoList) { }
EquipAlarmEvent equipAlarmEvent = new EquipAlarmEvent();
equipAlarmEvent.setEquipIndex(esEquipments.getEquipmentNumber());
equipAlarmEvent.setEquipName(esEquipments.getEquipmentSpecificName()); String lastSort = equipAlarmEventMapper.getLastDataBySort(stationBasic.getFanGatewayId());
equipAlarmEvent.setAlarmDesc(AlarmDesc.getCode(esEquipments.getEquipmentIndexName())); if (null != lastSort) {
equipAlarmEvent.setAlarmDesc( List<EquipAlarmEvent> oldEquipAlarmEvents = equipAlarmEventMapper.getOldDataBySort(lastSort, stationBasic.getFanGatewayId());
StringUtils.isEmpty(equipAlarmEvent.getAlarmDesc()) ? esEquipments.getEquipmentIndexName() for (EquipAlarmEvent oldEquipAlarmEvent : oldEquipAlarmEvents) {
: equipAlarmEvent.getAlarmDesc()); for (EquipAlarmEvent equipAlarmEvent : newEquipAlarmEvents) {
equipAlarmEvent.setCreatedTime(esEquipments.getCreatedTime()); if (oldEquipAlarmEvent.getEquipIndex().equals(equipAlarmEvent.getEquipIndex()) &&
equipAlarmEvent.setGatewayId(stationBasic.getFanGatewayId()); oldEquipAlarmEvent.getAlarmDesc().equals(equipAlarmEvent.getAlarmDesc()) &&
equipAlarmEvent.setSort(time); oldEquipAlarmEvent.getValue().equals(equipAlarmEvent.getValue())) {
equipAlarmEvent.setFrontModule(esEquipments.getFrontModule()); newEquipAlarmEvent.remove(equipAlarmEvent);
equipAlarmEvent.setValue(esEquipments.getValue()); }
newEquipAlarmEvents.add(equipAlarmEvent); }
newEquipAlarmEvent.add(equipAlarmEvent); }
} }
} equipAlarmEventService.saveBatch(newEquipAlarmEvent);
String lastSort = equipAlarmEventMapper.getLastDataBySort(stationBasic.getFanGatewayId()); }
if (null != lastSort) { }
List<EquipAlarmEvent> oldEquipAlarmEvents = equipAlarmEventMapper.getOldDataBySort(lastSort,
stationBasic.getFanGatewayId()); public HashMap<String, String> getPvNBQStationBy(String gatewayId) {
for (EquipAlarmEvent oldEquipAlarmEvent : oldEquipAlarmEvents) { HashMap<String, String> result = new HashMap<>();
for (EquipAlarmEvent equipAlarmEvent : newEquipAlarmEvents) { Map<String, List<String>> queryCondition = new HashMap<>();
if (oldEquipAlarmEvent.getEquipIndex().equals(equipAlarmEvent.getEquipIndex()) queryCondition.put(CommonConstans.QueryStringEquipmentIndexName, Arrays.asList("运行"));
&& oldEquipAlarmEvent.getAlarmDesc().equals(equipAlarmEvent.getAlarmDesc()) queryCondition.put(CommonConstans.QueryStringGateWayId, Arrays.asList(gatewayId));
&& oldEquipAlarmEvent.getValue().equals(equipAlarmEvent.getValue())) { Map<String, String> shouldCondition = new HashMap<>();
newEquipAlarmEvent.remove(equipAlarmEvent); shouldCondition.put(CommonConstans.QueryStringFrontMoudle, "逆变器");
} List<ESEquipments> totalEquipmentList = commonServiceImpl.getListDataByCondtions(queryCondition, shouldCondition, ESEquipments.class);
} totalEquipmentList.forEach(indicatorsDto -> result.put(indicatorsDto.getEquipmentNumber(), "正常运行"));
} Map<String, List<String>> queryCondition1 = new HashMap<>();
} queryCondition1.put(CommonConstans.QueryStringEquipmentIndexName, Arrays.asList("运行", "待机", "故障停机", "告警运行", "限额运行", "停机", "通讯故障", "'降额运行'"));
equipAlarmEventService.saveBatch(newEquipAlarmEvent); queryCondition1.put(CommonConstans.QueryStringValueKeyword, Arrays.asList("true"));
queryCondition1.put(CommonConstans.QueryStringGateWayId, Arrays.asList(gatewayId));
} List<ESEquipments> indicatorsDtoList = commonServiceImpl.getListDataByCondtions(queryCondition1, shouldCondition, ESEquipments.class);
} indicatorsDtoList.forEach(esEquipments -> {
if (!"运行".equals(esEquipments.getEquipmentIndexName())) {
public HashMap<String, String> getPvNBQStationBy(String gatewayId) { result.put(esEquipments.getEquipmentNumber(), CommonConstans.pvStatus.get(esEquipments.getEquipmentIndexName()));
HashMap<String, String> result = new HashMap<>(); }
Map<String, List<String>> queryCondition = new HashMap<>(); });
queryCondition.put(CommonConstans.QueryStringEquipmentIndexName, Arrays.asList("运行")); return result;
queryCondition.put(CommonConstans.QueryStringGateWayId, Arrays.asList(gatewayId)); }
Map<String, String> shouldCondition = new HashMap<>();
shouldCondition.put(CommonConstans.QueryStringFrontMoudle, "逆变器");
List<ESEquipments> totalEquipmentList = commonServiceImpl.getListDataByCondtions(queryCondition,
shouldCondition, ESEquipments.class);
totalEquipmentList.forEach(indicatorsDto -> result.put(indicatorsDto.getEquipmentNumber(), "正常运行"));
Map<String, List<String>> queryCondition1 = new HashMap<>();
queryCondition1.put(CommonConstans.QueryStringEquipmentIndexName,
Arrays.asList("运行", "待机", "故障停机", "告警运行", "限额运行", "停机", "通讯故障", "'降额运行'"));
queryCondition1.put(CommonConstans.QueryStringValueKeyword, Arrays.asList("true"));
queryCondition1.put(CommonConstans.QueryStringGateWayId, Arrays.asList(gatewayId));
List<ESEquipments> indicatorsDtoList = commonServiceImpl.getListDataByCondtions(queryCondition1,
shouldCondition, ESEquipments.class);
indicatorsDtoList.forEach(esEquipments -> {
if (!"运行".equals(esEquipments.getEquipmentIndexName())) {
result.put(esEquipments.getEquipmentNumber(),
CommonConstans.pvStatus.get(esEquipments.getEquipmentIndexName()));
}
});
return result;
}
} }
...@@ -283,20 +283,20 @@ public class MonitoringServiceIMQTTmpl { ...@@ -283,20 +283,20 @@ public class MonitoringServiceIMQTTmpl {
/** /**
* 实时推送-场站功率曲线总概览 * 实时推送-场站功率曲线总概览
*/ */
@Scheduled(cron = fanStationPowerBightCron) // @Scheduled(cron = fanStationPowerBightCron)
public void getFanStationPowerBight() { // public void getFanStationPowerBight() {
List<StationBasic> stationBasicList = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("sequence_nbr").eq("station_type", "FDZ")); // List<StationBasic> stationBasicList = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("sequence_nbr").eq("station_type", "FDZ"));
stationBasicList.forEach(stationBasic -> { // stationBasicList.forEach(stationBasic -> {
String gatewayId = stationBasic.getFanGatewayId(); // String gatewayId = stationBasic.getFanGatewayId();
Map<String, Object> detailsWindSpeed = monitorFanIndicator.getDetailsWindSpeedAll(gatewayId); // Map<String, Object> detailsWindSpeed = monitorFanIndicator.getDetailsWindSpeedAll(gatewayId);
try { // try {
emqKeeper.getMqttClient().publish(stationBasic.getSequenceNbr() + "_fanStationPowerBight_topic", JSON.toJSON(detailsWindSpeed).toString().getBytes("UTF-8"), 1, true); // emqKeeper.getMqttClient().publish(stationBasic.getSequenceNbr() + "_fanStationPowerBight_topic", JSON.toJSON(detailsWindSpeed).toString().getBytes("UTF-8"), 1, true);
logger.info("-----------------发送风电站功率曲线数据消息=================== 成功!" + JSON.toJSONString(detailsWindSpeed)); // logger.info("-----------------发送风电站功率曲线数据消息=================== 成功!" + JSON.toJSONString(detailsWindSpeed));
} catch (Exception exception) { // } catch (Exception exception) {
logger.error("-----------------发送风电站功率曲线数据消息=================== 失败!"); // logger.error("-----------------发送风电站功率曲线数据消息=================== 失败!");
} // }
}); // });
} // }
/** /**
* 实时同送-获取各场站的风机列表 * 实时同送-获取各场站的风机列表
......
...@@ -830,7 +830,7 @@ public class MonitoringServiceImpl { ...@@ -830,7 +830,7 @@ public class MonitoringServiceImpl {
sorted.forEach(stationBasic -> { sorted.forEach(stationBasic -> {
HashMap<String, String> hashMap1 = new HashMap<>(); HashMap<String, String> hashMap1 = new HashMap<>();
hashMap1.put("stationName", stationBasic.getStationName()); hashMap1.put("stationName", stationBasic.getStationName());
hashMap1.put("value", stationBasic.getAddress()); hashMap1.put("value", stationBasic.getAddress()+"%");
hashMap1.put("value1", stationBasic.getAddress()); hashMap1.put("value1", stationBasic.getAddress());
mapList.add(hashMap1); mapList.add(hashMap1);
}); });
...@@ -1051,19 +1051,19 @@ public class MonitoringServiceImpl { ...@@ -1051,19 +1051,19 @@ public class MonitoringServiceImpl {
page2.setRecords(list2); page2.setRecords(list2);
Double totalAnnual = (powerOfAnnualFD + powerOfAnnualGF); Double totalAnnual = (powerOfAnnualFD + powerOfAnnualGF);
HashMap<String, String> stringHashMap13 = new HashMap<>(); HashMap<String, String> stringHashMap13 = new HashMap<>();
stringHashMap13.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.carbonDioxide * CommonConstans.kgToT))); stringHashMap13.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.carbonDioxide )));
stringHashMap13.put("title2", "二氧化碳减排量(t)"); stringHashMap13.put("title2", "二氧化碳减排量(t)");
list3.add(stringHashMap13); list3.add(stringHashMap13);
HashMap<String, String> stringHashMap14 = new HashMap<>(); HashMap<String, String> stringHashMap14 = new HashMap<>();
stringHashMap14.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.standardCoal * CommonConstans.kgToT))); stringHashMap14.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.standardCoal )));
stringHashMap14.put("title2", "节约标准煤(t)"); stringHashMap14.put("title2", "节约标准煤(t)");
list3.add(stringHashMap14); list3.add(stringHashMap14);
HashMap<String, String> stringHashMap15 = new HashMap<>(); HashMap<String, String> stringHashMap15 = new HashMap<>();
stringHashMap15.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.toner * CommonConstans.kgToT))); stringHashMap15.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.toner )));
stringHashMap15.put("title2", "碳粉尘减排量(t)"); stringHashMap15.put("title2", "碳粉尘减排量(t)");
list3.add(stringHashMap15); list3.add(stringHashMap15);
HashMap<String, String> stringHashMap16 = new HashMap<>(); HashMap<String, String> stringHashMap16 = new HashMap<>();
stringHashMap16.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.sulfurDioxide * CommonConstans.kgToT))); stringHashMap16.put("title1", String.format(CommonConstans.Twodecimalplaces, (totalAnnual * CommonConstans.sulfurDioxide )));
stringHashMap16.put("title2", "二氧化硫减排量(t)"); stringHashMap16.put("title2", "二氧化硫减排量(t)");
list3.add(stringHashMap16); list3.add(stringHashMap16);
page3.setRecords(list3); page3.setRecords(list3);
......
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