0918优化-单站监控-电表数据修改
This commit is contained in:
@ -7,8 +7,10 @@ package com.xzzn.common.enums;
|
||||
*/
|
||||
public enum AmmeterCategory
|
||||
{
|
||||
CURRENT_COMB_ACTIVE("1", "当前组合有功电能"),
|
||||
CURRENT_COMB_REACTIVE("2", "当前组合无功电能"),
|
||||
CURRENT_FORWARD_ACTIVE("1", "当前正向有功电能"),
|
||||
CURRENT_FORWARD_REACTIVE("2", "当前正向无功电能"),
|
||||
CURRENT_REVERSE_ACTIVE("3", "当前反向有功电能"),
|
||||
CURRENT_REVERSE_REACTIVE("4", "当前反向无功电能"),
|
||||
A_POWER("3", "A相功率"),
|
||||
B_POWER("4", "B相功率"),
|
||||
C_POWER("5", "C相功率");
|
||||
|
||||
@ -1,23 +1,21 @@
|
||||
package com.xzzn.ems.domain.vo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 电表数据
|
||||
*/
|
||||
public class AmmeterDataResponse {
|
||||
|
||||
/** 总表信息 */
|
||||
private AmmeterLoadDataVo ammeterLoadData;
|
||||
private AmmeterDataVo ammeterLoadData;
|
||||
|
||||
/** 储能表信息 */
|
||||
private AmmeterMeteDataVo ammeterMeteData;
|
||||
|
||||
public AmmeterLoadDataVo getAmmeterLoadData() {
|
||||
public AmmeterDataVo getAmmeterLoadData() {
|
||||
return ammeterLoadData;
|
||||
}
|
||||
|
||||
public void setAmmeterLoadDataVoList(AmmeterLoadDataVo ammeterLoadData) {
|
||||
public void setAmmeterLoadDataVoList(AmmeterDataVo ammeterLoadData) {
|
||||
this.ammeterLoadData = ammeterLoadData;
|
||||
}
|
||||
|
||||
|
||||
@ -6,9 +6,9 @@ import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 电表-总表数据
|
||||
* 电表数据
|
||||
*/
|
||||
public class AmmeterLoadDataVo {
|
||||
public class AmmeterDataVo {
|
||||
|
||||
/** 电表名称 */
|
||||
private String deviceName;
|
||||
@ -23,7 +23,7 @@ public class AmmeterLoadDataVo {
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date dataUpdateTime;
|
||||
|
||||
/** 总表数据信息 */
|
||||
/** 表数据信息 */
|
||||
private List<LoadDataDetailInfo> loadDataDetailInfo;
|
||||
|
||||
public String getDeviceName() {
|
||||
@ -845,13 +845,13 @@ public class DDSDataProcessServiceImpl extends AbstractBatteryDataProcessor impl
|
||||
dataMete.setCurrentCombReactiveFlat(StringUtils.getBigDecimal(obj.get("DQZHWGPDN")));
|
||||
dataMete.setCurrentCombReactiveValley(StringUtils.getBigDecimal(obj.get("DQZHWGGDN")));
|
||||
// 电能设置-正向无功
|
||||
dataMete.setCurrentForwardReactiveTotal(StringUtils.getBigDecimal(obj.get("DQZXWGZDN")));
|
||||
dataMete.setCurrentForwardReactiveTotal(StringUtils.getBigDecimal(obj.get("DQZXZWGDN")));
|
||||
dataMete.setCurrentForwardReactivePeak(StringUtils.getBigDecimal(obj.get("DQZXWGJDN")));
|
||||
dataMete.setCurrentForwardReactiveHigh(StringUtils.getBigDecimal(obj.get("DQZXWGFDN")));
|
||||
dataMete.setCurrentForwardReactiveFlat(StringUtils.getBigDecimal(obj.get("DQZXWGPDN")));
|
||||
dataMete.setCurrentForwardReactiveValley(StringUtils.getBigDecimal(obj.get("DQZXWGGDN")));
|
||||
// 电能设置-反向无功
|
||||
dataMete.setCurrentReverseReactiveTotal(StringUtils.getBigDecimal(obj.get("DQFXWGZDN")));
|
||||
dataMete.setCurrentReverseReactiveTotal(StringUtils.getBigDecimal(obj.get("DQFXZWGDN")));
|
||||
dataMete.setCurrentReverseReactivePeak(StringUtils.getBigDecimal(obj.get("DQFXWGJDN")));
|
||||
dataMete.setCurrentReverseReactiveHigh(StringUtils.getBigDecimal(obj.get("DQFXWGFDN")));
|
||||
dataMete.setCurrentReverseReactiveFlat(StringUtils.getBigDecimal(obj.get("DQFXWGPDN")));
|
||||
|
||||
@ -450,38 +450,32 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AmmeterDataResponse getAmmeterDataList(String siteId) {
|
||||
AmmeterDataResponse ammeterResponse = new AmmeterDataResponse();
|
||||
public List<AmmeterDataVo> getAmmeterDataList(String siteId) {
|
||||
List<AmmeterDataVo> ammeterResponse = new ArrayList<>();
|
||||
|
||||
if (StringUtils.isEmpty(siteId)) {
|
||||
return ammeterResponse;
|
||||
}
|
||||
|
||||
if (!StringUtils.isEmpty(siteId)) {
|
||||
// 先获取电表设备
|
||||
List<Map<String, Object>> ammeterIdList = emsDevicesSettingMapper.getDeviceInfosBySiteIdAndCategory(siteId, DeviceCategory.AMMETER.getCode());
|
||||
if (ammeterIdList == null || ammeterIdList.isEmpty()) {
|
||||
return ammeterResponse;
|
||||
}
|
||||
|
||||
for (Map<String, Object> ammeterDevice : ammeterIdList) {
|
||||
String ammeterId = ammeterDevice.get("id").toString();
|
||||
// 从redis取总表详细数据
|
||||
EmsAmmeterData ammeterData = redisCache.getCacheObject(RedisKeyConstants.AMMETER + siteId + "_" +ammeterId);
|
||||
// 判断电表类型
|
||||
if (AMMETER_DEVICE_LOAD.equals(ammeterId)) {
|
||||
AmmeterLoadDataVo ammeterLoadDataVo = new AmmeterLoadDataVo();
|
||||
|
||||
AmmeterDataVo ammeterLoadDataVo = new AmmeterDataVo();
|
||||
ammeterLoadDataVo.setDeviceName(ammeterDevice.get("deviceName").toString());
|
||||
ammeterLoadDataVo.setDeviceId(ammeterDevice.get("id").toString());
|
||||
ammeterLoadDataVo.setEmsCommunicationStatus(ammeterDevice.get("communicationStatus") == null? "" :
|
||||
ammeterDevice.get("communicationStatus").toString());
|
||||
// 处理总表数据
|
||||
// 设置表数据
|
||||
dealAmmeterLoadData(ammeterData,ammeterLoadDataVo);
|
||||
ammeterResponse.setAmmeterLoadDataVoList(ammeterLoadDataVo);
|
||||
} else if (AMMETER_DEVICE_METE.equals(ammeterId)) {
|
||||
AmmeterMeteDataVo ammeterMeteDataVo = new AmmeterMeteDataVo();
|
||||
ammeterMeteDataVo.setDeviceName(ammeterDevice.get("deviceName").toString());
|
||||
ammeterMeteDataVo.setDeviceId(ammeterDevice.get("id").toString());
|
||||
ammeterMeteDataVo.setEmsCommunicationStatus(ammeterDevice.get("communicationStatus") == null? "" :
|
||||
ammeterDevice.get("communicationStatus").toString());
|
||||
// 处理储能表数据
|
||||
dealAmmeterMeteData(ammeterData,ammeterMeteDataVo);
|
||||
ammeterResponse.setAmmeterMeteDataVoList(ammeterMeteDataVo);
|
||||
}
|
||||
}
|
||||
ammeterResponse.add(ammeterLoadDataVo);
|
||||
}
|
||||
return ammeterResponse;
|
||||
}
|
||||
@ -515,31 +509,49 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
||||
}
|
||||
}
|
||||
|
||||
private void dealAmmeterLoadData(EmsAmmeterData ammeterData, AmmeterLoadDataVo ammeterDataVo) {
|
||||
private void dealAmmeterLoadData(EmsAmmeterData ammeterData, AmmeterDataVo ammeterDataVo) {
|
||||
if (ammeterData != null) {
|
||||
// 数据更新时间
|
||||
ammeterDataVo.setDataUpdateTime(ammeterData.getDataUpdateTime());
|
||||
|
||||
List<LoadDataDetailInfo> loadDataDetailInfos = new ArrayList<>();
|
||||
// 拼接数据
|
||||
// 组合有功
|
||||
// 当前正向有功
|
||||
LoadDataDetailInfo ammeterDataDetailInfo1 = new LoadDataDetailInfo();
|
||||
ammeterDataDetailInfo1.setCategory(AmmeterCategory.CURRENT_COMB_ACTIVE.getInfo());
|
||||
ammeterDataDetailInfo1.setTotalKwh(ammeterData.getCurrentCombActiveTotal());
|
||||
ammeterDataDetailInfo1.setPeakKwh(ammeterData.getCurrentCombActivePeak());
|
||||
ammeterDataDetailInfo1.setHighKwh(ammeterData.getCurrentCombActiveHigh());
|
||||
ammeterDataDetailInfo1.setFlatKwh(ammeterData.getCurrentCombActiveFlat());
|
||||
ammeterDataDetailInfo1.setValleyKwh(ammeterData.getCurrentCombActiveValley());
|
||||
ammeterDataDetailInfo1.setCategory(AmmeterCategory.CURRENT_FORWARD_ACTIVE.getInfo());
|
||||
ammeterDataDetailInfo1.setTotalKwh(ammeterData.getCurrentForwardActiveTotal());
|
||||
ammeterDataDetailInfo1.setPeakKwh(ammeterData.getCurrentForwardActivePeak());
|
||||
ammeterDataDetailInfo1.setHighKwh(ammeterData.getCurrentForwardActiveHigh());
|
||||
ammeterDataDetailInfo1.setFlatKwh(ammeterData.getCurrentForwardActiveFlat());
|
||||
ammeterDataDetailInfo1.setValleyKwh(ammeterData.getCurrentForwardActiveValley());
|
||||
loadDataDetailInfos.add(ammeterDataDetailInfo1);
|
||||
// 组合无功
|
||||
// 当前正向无功
|
||||
LoadDataDetailInfo ammeterDataDetailInfo2 = new LoadDataDetailInfo();
|
||||
ammeterDataDetailInfo2.setCategory(AmmeterCategory.CURRENT_COMB_REACTIVE.getInfo());
|
||||
ammeterDataDetailInfo2.setTotalKwh(ammeterData.getCurrentCombReactiveTotal());
|
||||
ammeterDataDetailInfo2.setPeakKwh(ammeterData.getCurrentCombReactivePeak());
|
||||
ammeterDataDetailInfo2.setHighKwh(ammeterData.getCurrentCombReactiveHigh());
|
||||
ammeterDataDetailInfo2.setFlatKwh(ammeterData.getCurrentCombReactiveFlat());
|
||||
ammeterDataDetailInfo2.setValleyKwh(ammeterData.getCurrentCombReactiveValley());
|
||||
ammeterDataDetailInfo2.setCategory(AmmeterCategory.CURRENT_FORWARD_REACTIVE.getInfo());
|
||||
ammeterDataDetailInfo2.setTotalKwh(ammeterData.getCurrentForwardReactiveTotal());
|
||||
ammeterDataDetailInfo2.setPeakKwh(ammeterData.getCurrentForwardReactivePeak());
|
||||
ammeterDataDetailInfo2.setHighKwh(ammeterData.getCurrentForwardReactiveHigh());
|
||||
ammeterDataDetailInfo2.setFlatKwh(ammeterData.getCurrentForwardReactiveFlat());
|
||||
ammeterDataDetailInfo2.setValleyKwh(ammeterData.getCurrentForwardReactiveValley());
|
||||
loadDataDetailInfos.add(ammeterDataDetailInfo2);
|
||||
// 当前反向有功
|
||||
LoadDataDetailInfo ammeterDataDetailInfo3 = new LoadDataDetailInfo();
|
||||
ammeterDataDetailInfo3.setCategory(AmmeterCategory.CURRENT_REVERSE_ACTIVE.getInfo());
|
||||
ammeterDataDetailInfo3.setTotalKwh(ammeterData.getCurrentReverseActiveTotal());
|
||||
ammeterDataDetailInfo3.setPeakKwh(ammeterData.getCurrentReverseActivePeak());
|
||||
ammeterDataDetailInfo3.setHighKwh(ammeterData.getCurrentReverseActiveHigh());
|
||||
ammeterDataDetailInfo3.setFlatKwh(ammeterData.getCurrentReverseActiveFlat());
|
||||
ammeterDataDetailInfo3.setValleyKwh(ammeterData.getCurrentReverseActiveValley());
|
||||
loadDataDetailInfos.add(ammeterDataDetailInfo3);
|
||||
// 当前反向无功
|
||||
LoadDataDetailInfo ammeterDataDetailInfo4 = new LoadDataDetailInfo();
|
||||
ammeterDataDetailInfo4.setCategory(AmmeterCategory.CURRENT_REVERSE_REACTIVE.getInfo());
|
||||
ammeterDataDetailInfo4.setTotalKwh(ammeterData.getCurrentReverseReactiveTotal());
|
||||
ammeterDataDetailInfo4.setPeakKwh(ammeterData.getCurrentReverseReactivePeak());
|
||||
ammeterDataDetailInfo4.setHighKwh(ammeterData.getCurrentReverseReactiveHigh());
|
||||
ammeterDataDetailInfo4.setFlatKwh(ammeterData.getCurrentReverseReactiveFlat());
|
||||
ammeterDataDetailInfo4.setValleyKwh(ammeterData.getCurrentReverseReactiveValley());
|
||||
loadDataDetailInfos.add(ammeterDataDetailInfo4);
|
||||
|
||||
ammeterDataVo.setLoadDataDetailInfo(loadDataDetailInfos);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user