From 126b637932695d97e86e706c724dd507e1407811 Mon Sep 17 00:00:00 2001 From: mashili Date: Thu, 3 Jul 2025 16:12:19 +0800 Subject: [PATCH] =?UTF-8?q?BMS=E6=80=BB=E8=A7=88-=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E5=A0=86=E4=B8=8B=E9=9D=A2=E7=B0=87=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ems/domain/vo/BMSBatteryDataList.java | 56 ++++++++++++------- .../service/impl/SingleSiteServiceImpl.java | 24 +++++++- 2 files changed, 57 insertions(+), 23 deletions(-) diff --git a/ems-system/src/main/java/com/xzzn/ems/domain/vo/BMSBatteryDataList.java b/ems-system/src/main/java/com/xzzn/ems/domain/vo/BMSBatteryDataList.java index f1c6bbb..da1b3af 100644 --- a/ems-system/src/main/java/com/xzzn/ems/domain/vo/BMSBatteryDataList.java +++ b/ems-system/src/main/java/com/xzzn/ems/domain/vo/BMSBatteryDataList.java @@ -21,16 +21,16 @@ public class BMSBatteryDataList { private BigDecimal currentSoc; /** 单体最高电压 (V) */ - private BigDecimal maxVoltage; + private BigDecimal maxCellVoltage; /** 单体最低电压 (V) */ - private BigDecimal minVoltage; + private BigDecimal minCellVoltage; /** 单体最高温度 (℃) */ - private BigDecimal maxTemperature; + private BigDecimal maxCellTemp; /** 单体最低温度 (℃) */ - private BigDecimal minTemperature; + private BigDecimal minCellTemp; /** 换电站id */ private String siteId; @@ -46,36 +46,52 @@ public class BMSBatteryDataList { this.clusterId = clusterId; } - public BigDecimal getMinTemperature() { - return minTemperature; + public String getStackDeviceId() { + return stackDeviceId; } - public void setMinTemperature(BigDecimal minTemperature) { - this.minTemperature = minTemperature; + public void setStackDeviceId(String stackDeviceId) { + this.stackDeviceId = stackDeviceId; } - public BigDecimal getMaxTemperature() { - return maxTemperature; + public String getSiteId() { + return siteId; } - public void setMaxTemperature(BigDecimal maxTemperature) { - this.maxTemperature = maxTemperature; + public void setSiteId(String siteId) { + this.siteId = siteId; } - public BigDecimal getMinVoltage() { - return minVoltage; + public BigDecimal getMinCellTemp() { + return minCellTemp; } - public void setMinVoltage(BigDecimal minVoltage) { - this.minVoltage = minVoltage; + public void setMinCellTemp(BigDecimal minCellTemp) { + this.minCellTemp = minCellTemp; } - public BigDecimal getMaxVoltage() { - return maxVoltage; + public BigDecimal getMaxCellTemp() { + return maxCellTemp; } - public void setMaxVoltage(BigDecimal maxVoltage) { - this.maxVoltage = maxVoltage; + public void setMaxCellTemp(BigDecimal maxCellTemp) { + this.maxCellTemp = maxCellTemp; + } + + public BigDecimal getMinCellVoltage() { + return minCellVoltage; + } + + public void setMinCellVoltage(BigDecimal minCellVoltage) { + this.minCellVoltage = minCellVoltage; + } + + public BigDecimal getMaxCellVoltage() { + return maxCellVoltage; + } + + public void setMaxCellVoltage(BigDecimal maxCellVoltage) { + this.maxCellVoltage = maxCellVoltage; } public BigDecimal getCurrentSoc() { diff --git a/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java b/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java index 0621ecc..4a27b11 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java @@ -195,10 +195,9 @@ public class SingleSiteServiceImpl implements ISingleSiteService { if (stackData != null) { BeanUtils.copyProperties(stackData, bmsOverViewVo); } - // 列表数据 + // 下面簇列表数据 if (!StringUtils.isEmpty(stackId)) { - List batteryDataList = emsBatteryClusterMapper.getBmsBatteryData(siteId,stackId); - bmsOverViewVo.setBatteryDataList(batteryDataList); + getBMSClusterListInfo(siteId,stackId,bmsOverViewVo); } bmsOverViewVoList.add(bmsOverViewVo); } @@ -206,6 +205,25 @@ public class SingleSiteServiceImpl implements ISingleSiteService { return bmsOverViewVoList; } + private void getBMSClusterListInfo(String siteId, String stackId, BMSOverViewVo bmsOverViewVo) { + List batteryDataList = new ArrayList(); + + List> clusterIds = emsDevicesSettingMapper.getDeviceInfoByParentId(stackId); + for (Map clusterDevice : clusterIds) { + BMSBatteryDataList bmsBatteryDataList= new BMSBatteryDataList(); + // 从redis取单个簇的详细数据 + String clusterId = clusterDevice.get("id").toString(); + bmsBatteryDataList.setClusterId(clusterId); + EmsBatteryCluster clusterData = redisCache.getCacheObject(RedisKeyConstants.CLUSTER + siteId + "_" + clusterId); + if (clusterData != null) { + BeanUtils.copyProperties(clusterData, bmsBatteryDataList); + } + batteryDataList.add(bmsBatteryDataList); + } + + bmsOverViewVo.setBatteryDataList(batteryDataList); + } + // 获取BMS电池簇数据 @Override public List getBMSBatteryCluster(String siteId) {