dev #2

Merged
dashixiong merged 349 commits from dev into main 2026-02-11 01:55:46 +00:00
374 changed files with 55218 additions and 1122 deletions
Showing only changes of commit 873119a1ff - Show all commits

View File

@ -140,8 +140,6 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
@Autowired
private IEmsEnergyPriceConfigService emsEnergyPriceConfigService;
@Autowired
private IEmsEnergyPriceConfigService iEmsEnergyPriceConfigService;
@Autowired
private IEmsDeviceSettingService iEmsDeviceSettingService;
@Autowired
private DevicePointMatchDataProcessor devicePointMatchDataProcessor;
@ -185,34 +183,56 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
}
public void processingDeviceData(String siteId, String deviceId, String jsonData, Date dataUpdateTime) {
// 判断设备类型,并调用对应的方法处理数据
String deviceCategory = getDeviceCategory(siteId, deviceId);
if (deviceId.contains(SiteDevice.BMSD.name())) {
batteryStackDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
batteryGroupDataProcess(siteId, deviceId, jsonData);
batteryDataProcessFromBmsd(siteId, deviceId, jsonData, dataUpdateTime);
if (SiteEnum.DDS.getCode().equals(siteId)) {
batteryGroupDataProcess(siteId, deviceId, jsonData);
batteryDataProcessFromBmsd(siteId, deviceId, jsonData, dataUpdateTime);
}
} else if (deviceId.contains(SiteDevice.BMSC.name())) {
batteryClusterDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
batteryDataProcessFromBmsc(siteId, deviceId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.PCS.name())) {
} else if (deviceId.contains(SiteDevice.PCS.name())
|| DeviceCategory.PCS.getCode().equals(deviceCategory)) {
pcsDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
pcsBranchDataProcess(siteId, deviceId, jsonData);
batteryClusterDataProcess(siteId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.LOAD.name())) {
loadDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.METEGF.name())
if (SiteEnum.DDS.getCode().equals(siteId)) {
batteryClusterDataProcess(siteId, jsonData, dataUpdateTime);
}
} else if (deviceId.contains(SiteDevice.LOAD.name())
|| deviceId.contains(SiteDevice.METEGF.name())
|| deviceId.contains(SiteDevice.METE.name())
|| deviceId.contains(SiteDevice.METE0.name())) {
|| deviceId.contains(SiteDevice.METE0.name())
|| DeviceCategory.AMMETER.getCode().equals(deviceCategory)) {
meteDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.XF.name())) {
} else if (deviceId.contains(SiteDevice.XF.name())
|| DeviceCategory.XF.getCode().equals(deviceCategory)) {
meteXFProcess(siteId, deviceId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.DH.name()) || deviceId.contains(SiteDevice.donghuan.name())) {
} else if (deviceId.contains(SiteDevice.DH.name())
|| deviceId.contains(SiteDevice.donghuan.name())
|| DeviceCategory.DH.getCode().equals(deviceCategory)) {
dhDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.ZSLQ.name())) {
} else if (deviceId.contains(SiteDevice.ZSLQ.name())
|| DeviceCategory.COOLING.getCode().equals(deviceCategory)) {
coolingDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
} else if (deviceId.contains(SiteDevice.EMS.name())) {
} else if (deviceId.contains(SiteDevice.EMS.name())
|| DeviceCategory.EMS.getCode().equals(deviceCategory)) {
emsDataProcess(siteId, deviceId, jsonData, dataUpdateTime);
} else {
log.info("未找到匹配的设备类型无法处理数据siteId: " + siteId + "deviceId: " + deviceId);
}
}
private String getDeviceCategory(String siteId, String deviceId) {
EmsDevicesSetting emsDevicesSetting = emsDevicesSettingMapper.getDeviceBySiteAndDeviceId(deviceId, siteId);
if (emsDevicesSetting != null) {
return emsDevicesSetting.getDeviceCategory();
}
return "";
}
private void emsDataProcess(String siteId, String deviceId, String jsonData, Date dataUpdateTime) {
//EMS
Map<String, Object> obj = JSON.parseObject(jsonData, new TypeReference<Map<String, Object>>() {
@ -379,9 +399,9 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
}
private void batteryGroupDataProcess(String siteId, String deviceId, String jsonData) {
if (!SiteEnum.DDS.getCode().equals(siteId)) {
return;
}
// if (!SiteEnum.DDS.getCode().equals(siteId)) {
// return;
// }
//电池组
Map<String, Object> obj = JSON.parseObject(jsonData, new TypeReference<Map<String, Object>>() {
});
@ -420,9 +440,9 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
}
private void batteryDataProcessFromBmsd(String siteId, String deviceId, String dataJson, Date dataUpdateTime) {
if (!SiteEnum.DDS.getCode().equals(siteId)) {
return;
}
// if (!SiteEnum.DDS.getCode().equals(siteId)) {
// return;
// }
//电池组
Map<String, Object> obj = JSON.parseObject(dataJson, new TypeReference<Map<String, Object>>() {
});
@ -896,9 +916,9 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
}
private void batteryClusterDataProcess(String siteId, String dataJson, Date dataUpdateTime) {
if (!SiteEnum.DDS.getCode().equals(siteId)) {
return;
}
// if (!SiteEnum.DDS.getCode().equals(siteId)) {
// return;
// }
Map<String, Object> obj = JSON.parseObject(dataJson, new TypeReference<Map<String, Object>>() {
});
@ -1006,7 +1026,7 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
// 点位匹配数据
List<EmsPointMatch> pointMatchList = devicePointMatchDataProcessor.getDevicePointMatch(siteId, deviceId, DeviceMatchTable.AMMETER.getCode());
if (CollectionUtils.isEmpty(pointMatchList)) {
log.info("未找到匹配的点位数据,无法处理METE储能电表数据siteId: " + siteId + "deviceId: " + deviceId);
log.info("未找到匹配的点位数据无法处理电表数据siteId: " + siteId + "deviceId: " + deviceId);
return;
}
Map<String, List<EmsPointEnumMatch>> pointEnumMatchMap = devicePointMatchDataProcessor.getPointEnumMatchMap(siteId, DeviceMatchTable.AMMETER.getCode());
@ -1031,7 +1051,7 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
redisCache.setCacheObject(RedisKeyConstants.AMMETER + siteId + "_" + deviceId, dataMete);
if (!deviceId.contains(SiteDevice.METEGF.name()) && !deviceId.contains(SiteDevice.METE0.name())) {
if (deviceId.equals(SiteDevice.METE.name())) {
// 处理储能电表-METE每日充放电数据
dealDailyChargeDate(siteId, deviceId, dataMete);
@ -1390,7 +1410,7 @@ public class DeviceDataProcessServiceImpl extends AbstractBatteryDataProcessor i
Map<String, BigDecimal> realTimeRevenue = redisCache.getCacheObject(redisKey);
if (realTimeRevenue == null) {
// 查数据库
realTimeRevenue = iEmsEnergyPriceConfigService.getDayRevenueMap(siteId);
realTimeRevenue = emsEnergyPriceConfigService.getDayRevenueMap(siteId);
if (realTimeRevenue == null) {
realTimeRevenue = new HashMap<>();
realTimeRevenue.put("totalRevenue", BigDecimal.ZERO);