From 747ce8a08de02c75d698fad104d0e97d4370cd2f Mon Sep 17 00:00:00 2001 From: dashixiong Date: Sun, 29 Jun 2025 14:03:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=88=86=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E6=94=B9=E6=88=90=E4=B8=80=E6=AC=A1=E6=80=A7=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ems/MqttMessageController.java | 10 ++++++---- .../xzzn/ems/mapper/EmsBatteryDataMapper.java | 3 +++ .../ems/service/IEmsBatteryDataService.java | 9 +++++++++ .../service/impl/EmsBatteryDataServiceImpl.java | 8 ++++++++ .../mapper/ems/EmsBatteryDataMapper.xml | 17 +++++++++++++++++ 5 files changed, 43 insertions(+), 4 deletions(-) diff --git a/ems-admin/src/main/java/com/xzzn/web/controller/ems/MqttMessageController.java b/ems-admin/src/main/java/com/xzzn/web/controller/ems/MqttMessageController.java index 6128e36..9f78a6a 100644 --- a/ems-admin/src/main/java/com/xzzn/web/controller/ems/MqttMessageController.java +++ b/ems-admin/src/main/java/com/xzzn/web/controller/ems/MqttMessageController.java @@ -89,7 +89,7 @@ public class MqttMessageController implements MqttPublisher, MqttSubscriber { System.out.println("[DEVICE] data: " + payload); try { // 业务处理逻辑 -// handleFxData(payload); + handleFxData(payload); EmsMqttMessage mqttMessage = new EmsMqttMessage(); mqttMessage.setMqttTopic(topic); @@ -148,7 +148,7 @@ public class MqttMessageController implements MqttPublisher, MqttSubscriber { log.info("BMS data:"+ jsonData); Map> records = processData(JSON.parseObject(jsonData, new TypeReference>() {})); - + List list = new ArrayList<>(); //单体电池 for (Map.Entry> record : records.entrySet()) { String recordId = record.getKey(); @@ -172,8 +172,10 @@ public class MqttMessageController implements MqttPublisher, MqttSubscriber { data.setSiteId(("021")); data.setClusterDeviceId(("021")); - - emsBatteryDataService.insertEmsBatteryData(data); + list.add(data); + } + if (list.size() > 0 ) { + emsBatteryDataService.insertEmsBatteryDataList(list); } } else if (deviceId.contains("PCS")) { log.info("===================="); diff --git a/ems-system/src/main/java/com/xzzn/ems/mapper/EmsBatteryDataMapper.java b/ems-system/src/main/java/com/xzzn/ems/mapper/EmsBatteryDataMapper.java index cdaa2b4..2605a72 100644 --- a/ems-system/src/main/java/com/xzzn/ems/mapper/EmsBatteryDataMapper.java +++ b/ems-system/src/main/java/com/xzzn/ems/mapper/EmsBatteryDataMapper.java @@ -86,4 +86,7 @@ public interface EmsBatteryDataMapper * @return */ public List> getDataIdsMap(BatteryClusterDataDetailVo dataVo); + + + int insertEmsBatteryDataList(List emsBatteryDataList); } diff --git a/ems-system/src/main/java/com/xzzn/ems/service/IEmsBatteryDataService.java b/ems-system/src/main/java/com/xzzn/ems/service/IEmsBatteryDataService.java index d694c11..2c958a0 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/IEmsBatteryDataService.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/IEmsBatteryDataService.java @@ -59,4 +59,13 @@ public interface IEmsBatteryDataService * @return 结果 */ public int deleteEmsBatteryDataById(Long id); + + /** + * 新增单体电池实时数据 + * + * @param emsBatteryDataList 单体电池实时数据 + * @return 结果 + */ + public int insertEmsBatteryDataList(List emsBatteryDataList); + } diff --git a/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsBatteryDataServiceImpl.java b/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsBatteryDataServiceImpl.java index 562eb7c..70e0b16 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsBatteryDataServiceImpl.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsBatteryDataServiceImpl.java @@ -93,4 +93,12 @@ public class EmsBatteryDataServiceImpl implements IEmsBatteryDataService { return emsBatteryDataMapper.deleteEmsBatteryDataById(id); } + + @Override + public int insertEmsBatteryDataList(List emsBatteryDataList) { + for (EmsBatteryData data : emsBatteryDataList) { + data.setCreateTime(DateUtils.getNowDate()); + } + return emsBatteryDataMapper.insertEmsBatteryDataList(emsBatteryDataList); + } } diff --git a/ems-system/src/main/resources/mapper/ems/EmsBatteryDataMapper.xml b/ems-system/src/main/resources/mapper/ems/EmsBatteryDataMapper.xml index d47499c..aac3701 100644 --- a/ems-system/src/main/resources/mapper/ems/EmsBatteryDataMapper.xml +++ b/ems-system/src/main/resources/mapper/ems/EmsBatteryDataMapper.xml @@ -176,4 +176,21 @@ SELECT NULL AS type, NULL AS device_id FROM DUAL WHERE 1=0 + + + INSERT INTO ems_battery_data ( + battery_pack, battery_cluster, battery_cell_id, + voltage, temperature, soc, soh, data_timestamp, + create_by, create_time, update_by, update_time, + remark, site_id, device_id, cluster_device_id + ) VALUES + + ( + #{item.batteryPack}, #{item.batteryCluster}, #{item.batteryCellId}, + #{item.voltage}, #{item.temperature}, #{item.soc}, #{item.soh}, #{item.dataTimestamp}, + #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, + #{item.remark}, #{item.siteId}, #{item.deviceId}, #{item.clusterDeviceId} + ) + + \ No newline at end of file