Compare commits
32 Commits
main
...
62e4608a7a
Author | SHA1 | Date | |
---|---|---|---|
62e4608a7a | |||
9fbc6dc6b8 | |||
3d71b9caba | |||
a6af1397e9 | |||
2a5ac78394 | |||
f2e5e07857 | |||
fbab6ea631 | |||
337599d1c6 | |||
cebd845af1 | |||
49a3ce2c11 | |||
551ae90155 | |||
d0b98a0a8a | |||
aaacafc0c3 | |||
c6fc7c00cc | |||
ae59143771 | |||
1225559c36 | |||
324beeaa69 | |||
aed3f830f5 | |||
747ce8a08d | |||
d2824b6087 | |||
bb0f972f55 | |||
d1aa8dbd2c | |||
177e235c0e | |||
1a56bd6526 | |||
38e93c9681 | |||
73f62c8fa5 | |||
365dd819b5 | |||
31dc8e72c6 | |||
da894c26d1 | |||
f439228432 | |||
3609b03deb | |||
0544929d07 |
@ -0,0 +1,37 @@
|
|||||||
|
package com.xzzn.web.controller.ems;
|
||||||
|
|
||||||
|
import com.xzzn.common.core.controller.BaseController;
|
||||||
|
import com.xzzn.common.core.page.TableDataInfo;
|
||||||
|
import com.xzzn.ems.domain.vo.AlarmRecordListRequestVo;
|
||||||
|
import com.xzzn.ems.domain.vo.AlarmRecordListResponseVo;
|
||||||
|
import com.xzzn.ems.service.IEmsAlarmRecordsService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单站监控-故障告警
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/ems/siteAlarm")
|
||||||
|
public class EmsAlarmRecordsController extends BaseController
|
||||||
|
{
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsAlarmRecordsService iEmsAlarmRecordsService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取告警详情列表
|
||||||
|
*/
|
||||||
|
@GetMapping("/getAlarmDetailList")
|
||||||
|
public TableDataInfo getAlarmDetailList(AlarmRecordListRequestVo requestVo)
|
||||||
|
{
|
||||||
|
startPage();
|
||||||
|
List<AlarmRecordListResponseVo> list = iEmsAlarmRecordsService.getAlarmRecordDetailList(requestVo);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -26,7 +26,7 @@ public class EmsSiteMapController extends BaseController{
|
|||||||
* 获取某个站点基本信息
|
* 获取某个站点基本信息
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getSingleSiteBaseInfo")
|
@GetMapping("/getSingleSiteBaseInfo")
|
||||||
public AjaxResult getSingleSiteBaseInfo(@RequestParam Long siteId)
|
public AjaxResult getSingleSiteBaseInfo(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(homePageService.getSingleSiteBaseInfo(siteId));
|
return success(homePageService.getSingleSiteBaseInfo(siteId));
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,15 @@ package com.xzzn.web.controller.ems;
|
|||||||
|
|
||||||
import com.xzzn.common.core.controller.BaseController;
|
import com.xzzn.common.core.controller.BaseController;
|
||||||
import com.xzzn.common.core.domain.AjaxResult;
|
import com.xzzn.common.core.domain.AjaxResult;
|
||||||
|
import com.xzzn.common.core.page.TableDataInfo;
|
||||||
|
import com.xzzn.ems.domain.vo.BatteryDataStatsListVo;
|
||||||
|
import com.xzzn.ems.service.IEmsSiteService;
|
||||||
import com.xzzn.ems.service.ISingleSiteService;
|
import com.xzzn.ems.service.ISingleSiteService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* 单站监控
|
* 单站监控
|
||||||
@ -17,12 +22,14 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISingleSiteService iSingleSiteService;
|
private ISingleSiteService iSingleSiteService;
|
||||||
|
@Autowired
|
||||||
|
private IEmsSiteService iEmsSiteService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取单站首页数据
|
* 获取单站首页数据
|
||||||
*/
|
*/
|
||||||
@GetMapping("/homeView")
|
@GetMapping("/homeView")
|
||||||
public AjaxResult getSingleSiteViewInfo(@RequestParam Long siteId)
|
public AjaxResult getSingleSiteViewInfo(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getSiteMonitorDataVo(siteId));
|
return success(iSingleSiteService.getSiteMonitorDataVo(siteId));
|
||||||
}
|
}
|
||||||
@ -31,7 +38,7 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
* 单站监控-设备监控-实时运行头部数据
|
* 单站监控-设备监控-实时运行头部数据
|
||||||
*/
|
*/
|
||||||
@GetMapping("/runningHeadInfo")
|
@GetMapping("/runningHeadInfo")
|
||||||
public AjaxResult getRunningHeadInfo(@RequestParam Long siteId)
|
public AjaxResult getRunningHeadInfo(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getSiteRunningHeadInfo(siteId));
|
return success(iSingleSiteService.getSiteRunningHeadInfo(siteId));
|
||||||
}
|
}
|
||||||
@ -40,7 +47,7 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
* 单站监控-设备监控-实时运行曲线图数据
|
* 单站监控-设备监控-实时运行曲线图数据
|
||||||
*/
|
*/
|
||||||
@GetMapping("/runningGraph")
|
@GetMapping("/runningGraph")
|
||||||
public AjaxResult getRunningGraph(@RequestParam Long siteId)
|
public AjaxResult getRunningGraph(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getRunningGraph(siteId));
|
return success(iSingleSiteService.getRunningGraph(siteId));
|
||||||
}
|
}
|
||||||
@ -49,7 +56,7 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
* 单站监控-设备监控-PCS
|
* 单站监控-设备监控-PCS
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getPcsDetailInfo")
|
@GetMapping("/getPcsDetailInfo")
|
||||||
public AjaxResult getPcsDetailInfo(@RequestParam Long siteId)
|
public AjaxResult getPcsDetailInfo(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getPcsDetailInfo(siteId));
|
return success(iSingleSiteService.getPcsDetailInfo(siteId));
|
||||||
}
|
}
|
||||||
@ -58,7 +65,7 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
* 单站监控-设备监控-BMS总览
|
* 单站监控-设备监控-BMS总览
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getBMSOverView")
|
@GetMapping("/getBMSOverView")
|
||||||
public AjaxResult getBMSOverView(@RequestParam Long siteId)
|
public AjaxResult getBMSOverView(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getBMSOverView(siteId));
|
return success(iSingleSiteService.getBMSOverView(siteId));
|
||||||
}
|
}
|
||||||
@ -67,7 +74,7 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
* 单站监控-设备监控-BMS电池簇
|
* 单站监控-设备监控-BMS电池簇
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getBMSBatteryCluster")
|
@GetMapping("/getBMSBatteryCluster")
|
||||||
public AjaxResult getBMSBatteryCluster(@RequestParam Long siteId)
|
public AjaxResult getBMSBatteryCluster(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getBMSBatteryCluster(siteId));
|
return success(iSingleSiteService.getBMSBatteryCluster(siteId));
|
||||||
}
|
}
|
||||||
@ -76,26 +83,46 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
* 获取所有电池堆
|
* 获取所有电池堆
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getStackNameList")
|
@GetMapping("/getStackNameList")
|
||||||
public AjaxResult getStackNameList(@RequestParam Long siteId)
|
public AjaxResult getStackNameList(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getBMSBatteryCluster(siteId));
|
return success(iEmsSiteService.getAllStackInfo(siteId));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有电池簇
|
* 获取所有电池簇
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getClusterNameList")
|
@GetMapping("/getClusterNameList")
|
||||||
public AjaxResult getClusterNameList(@RequestParam Long siteId)
|
public AjaxResult getClusterNameList(@RequestParam String stackDeviceId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getBMSBatteryCluster(siteId));
|
return success(iEmsSiteService.getAllClusterInfo(stackDeviceId));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 液冷设备参数
|
* 液冷设备参数
|
||||||
*/
|
*/
|
||||||
@GetMapping("/getCoolingDataList")
|
@GetMapping("/getCoolingDataList")
|
||||||
public AjaxResult getCoolingDataList(@RequestParam Long siteId)
|
public AjaxResult getCoolingDataList(@RequestParam String siteId)
|
||||||
{
|
{
|
||||||
return success(iSingleSiteService.getCoolingDataList(siteId));
|
return success(iSingleSiteService.getCoolingDataList(siteId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取电池簇下面的单体电池数据
|
||||||
|
*/
|
||||||
|
@GetMapping("/getClusterDataInfoList")
|
||||||
|
public TableDataInfo getClusterDataInfoList(@RequestParam String clusterDeviceId)
|
||||||
|
{
|
||||||
|
startPage();
|
||||||
|
List<BatteryDataStatsListVo> list = iSingleSiteService.getClusterDataInfoList(clusterDeviceId);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电表数据
|
||||||
|
*/
|
||||||
|
@GetMapping("/getAmmeterDataList")
|
||||||
|
public AjaxResult getAmmeterDataList(@RequestParam String siteId)
|
||||||
|
{
|
||||||
|
return success(iSingleSiteService.getAmmeterDataList(siteId));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,463 @@
|
|||||||
|
package com.xzzn.web.controller.ems;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson2.JSON;
|
||||||
|
import com.alibaba.fastjson2.JSONArray;
|
||||||
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
|
import com.alibaba.fastjson2.TypeReference;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import com.xzzn.common.utils.StringUtils;
|
||||||
|
import com.xzzn.ems.domain.*;
|
||||||
|
import com.xzzn.ems.service.*;
|
||||||
|
import com.xzzn.framework.manager.MqttLifecycleManager;
|
||||||
|
import com.xzzn.framework.web.service.MqttPublisher;
|
||||||
|
import com.xzzn.framework.web.service.MqttSubscriber;
|
||||||
|
import org.apache.juli.logging.Log;
|
||||||
|
import org.apache.juli.logging.LogFactory;
|
||||||
|
import org.eclipse.paho.client.mqttv3.IMqttMessageListener;
|
||||||
|
import org.eclipse.paho.client.mqttv3.MqttException;
|
||||||
|
import org.eclipse.paho.client.mqttv3.MqttMessage;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.PostConstruct;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class MqttMessageController implements MqttPublisher, MqttSubscriber {
|
||||||
|
|
||||||
|
|
||||||
|
private static final Log log = LogFactory.getLog(MqttMessageController.class);
|
||||||
|
|
||||||
|
|
||||||
|
private final MqttLifecycleManager mqttLifecycleManager;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsMqttMessageService emsMqttMessageService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsBatteryDataService emsBatteryDataService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsPcsDataService emsPcsDataService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsPcsBranchDataService emsPcsBranchDataService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsBatteryClusterService emsBatteryClusterService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmsBatteryStackService emsBatteryStackService;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public MqttMessageController(MqttLifecycleManager mqttLifecycleManager) {
|
||||||
|
this.mqttLifecycleManager = mqttLifecycleManager;
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostConstruct
|
||||||
|
public void init() {
|
||||||
|
// 订阅系统状态主题
|
||||||
|
subscribe("021_FXX_01_UP", 1, this::handleDeviceData);
|
||||||
|
subscribe("021_FXX_01_RECALL", 1, this::handleDeviceData);
|
||||||
|
subscribe("021_FXX_01_DOWN", 1, this::handleDeviceData);
|
||||||
|
subscribe("021_FXX_01", 1, this::handleSystemStatus);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// 处理系统状态消息
|
||||||
|
private void handleSystemStatus(String topic, MqttMessage message) {
|
||||||
|
String payload = new String(message.getPayload());
|
||||||
|
System.out.println("[SYSTEM] Status update: " + payload);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 业务处理逻辑
|
||||||
|
EmsMqttMessage mqttMessage = new EmsMqttMessage();
|
||||||
|
mqttMessage.setMqttTopic(topic);
|
||||||
|
mqttMessage.setMqttMessage(payload);
|
||||||
|
mqttMessage.setCreateTime(new java.util.Date());
|
||||||
|
mqttMessage.setUpdateTime(new java.util.Date());
|
||||||
|
mqttMessage.setCreateBy("system");
|
||||||
|
mqttMessage.setUpdateBy("system");
|
||||||
|
emsMqttMessageService.insertEmsMqttMessage(mqttMessage);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("Failed to process system status message: " + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 处理设备数据
|
||||||
|
private void handleDeviceData(String topic, MqttMessage message) {
|
||||||
|
String payload = new String(message.getPayload());
|
||||||
|
System.out.println("[DEVICE] data: " + payload);
|
||||||
|
try {
|
||||||
|
// 业务处理逻辑
|
||||||
|
handleFxData(payload);
|
||||||
|
|
||||||
|
|
||||||
|
EmsMqttMessage mqttMessage = new EmsMqttMessage();
|
||||||
|
mqttMessage.setMqttTopic(topic);
|
||||||
|
mqttMessage.setMqttMessage(payload);
|
||||||
|
mqttMessage.setCreateTime(new java.util.Date());
|
||||||
|
mqttMessage.setUpdateTime(new java.util.Date());
|
||||||
|
mqttMessage.setCreateBy("system");
|
||||||
|
mqttMessage.setUpdateBy("system");
|
||||||
|
emsMqttMessageService.insertEmsMqttMessage(mqttMessage);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("Failed to process system status message: " + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void publish(String topic, String message) throws MqttException {
|
||||||
|
mqttLifecycleManager.publish(topic, message, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void publish(String topic, String message, int qos) throws MqttException {
|
||||||
|
mqttLifecycleManager.publish(topic, message, qos);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void subscribe(String topic, int qos, IMqttMessageListener listener) {
|
||||||
|
mqttLifecycleManager.subscribe(topic, qos, listener);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// 发送设备控制命令
|
||||||
|
public void sendDeviceCommand(String deviceId, String command) {
|
||||||
|
try {
|
||||||
|
String topic = "devices/" + deviceId + "/commands";
|
||||||
|
publish(topic, command, 1);
|
||||||
|
} catch (MqttException e) {
|
||||||
|
System.err.println("Failed to send command to device " + deviceId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void handleFxData(String message) {
|
||||||
|
JSONArray arraylist = JSONArray.parseArray(message);
|
||||||
|
|
||||||
|
for (int i = 0; i < arraylist.size(); i++) {
|
||||||
|
JSONObject obj = JSONObject.parseObject(arraylist.get(i).toString());
|
||||||
|
|
||||||
|
String deviceId = obj.get("Device").toString();
|
||||||
|
String jsonData = obj.get("Data").toString();
|
||||||
|
|
||||||
|
log.info("deviceId:" + deviceId);
|
||||||
|
if (deviceId.contains("BMS")) {
|
||||||
|
log.info("====================");
|
||||||
|
log.info("BMS data:"+ jsonData);
|
||||||
|
//BMS 电池簇
|
||||||
|
EmsBatteryCluster data = new EmsBatteryCluster();
|
||||||
|
// 设置所有 BigDecimal 类型字段为 ZERO
|
||||||
|
data.setChargeableCapacity(BigDecimal.ZERO);
|
||||||
|
data.setTotalChargedCapacity(BigDecimal.ZERO);
|
||||||
|
data.setDischargeableCapacity(BigDecimal.ZERO);
|
||||||
|
data.setTotalDischargedCapacity(BigDecimal.ZERO);
|
||||||
|
data.setSoh(BigDecimal.ZERO);
|
||||||
|
data.setAverageTemperature(BigDecimal.ZERO);
|
||||||
|
data.setInsulationResistance(BigDecimal.ZERO);
|
||||||
|
data.setCurrentSoc(BigDecimal.ZERO);
|
||||||
|
data.setMaxAllowedChargePower(BigDecimal.ZERO);
|
||||||
|
data.setMaxAllowedDischargePower(BigDecimal.ZERO);
|
||||||
|
data.setMaxAllowedChargeVoltage(BigDecimal.ZERO);
|
||||||
|
data.setMaxAllowedDischargeVoltage(BigDecimal.ZERO);
|
||||||
|
data.setMaxAllowedChargeCurrent(BigDecimal.ZERO);
|
||||||
|
data.setMaxAllowedDischargeCurrent(BigDecimal.ZERO);
|
||||||
|
data.setBatteryPackVoltage(BigDecimal.ZERO);
|
||||||
|
data.setBatteryPackCurrent(BigDecimal.ZERO);
|
||||||
|
data.setBatteryPackTemp(BigDecimal.ZERO);
|
||||||
|
data.setBatteryPackSoc(BigDecimal.ZERO);
|
||||||
|
data.setBatteryPackSoh(BigDecimal.ZERO);
|
||||||
|
data.setBatteryPackInsulationResistance(BigDecimal.ZERO);
|
||||||
|
data.setAvgCellVoltage(BigDecimal.ZERO);
|
||||||
|
data.setAvgCellTemp(BigDecimal.ZERO);
|
||||||
|
data.setMaxCellVoltage(BigDecimal.ZERO);
|
||||||
|
data.setMinCellVoltage(BigDecimal.ZERO);
|
||||||
|
data.setMaxCellTemp(BigDecimal.ZERO);
|
||||||
|
data.setMinCellTemp(BigDecimal.ZERO);
|
||||||
|
data.setMaxCellSoc(BigDecimal.ZERO);
|
||||||
|
data.setMinCellSoc(BigDecimal.ZERO);
|
||||||
|
data.setMaxCellSoh(BigDecimal.ZERO);
|
||||||
|
data.setMinCellSoh(BigDecimal.ZERO);
|
||||||
|
data.setTotalChargeEnergy(BigDecimal.ZERO);
|
||||||
|
data.setTotalDischargeEnergy(BigDecimal.ZERO);
|
||||||
|
|
||||||
|
// 其他非 BigDecimal 字段
|
||||||
|
data.setWorkStatus("1"); // 或其他默认值
|
||||||
|
data.setPcsCommunicationStatus("1");
|
||||||
|
data.setEmsCommunicationStatus("1");
|
||||||
|
data.setCreateBy("system");
|
||||||
|
data.setCreateTime(DateUtils.getNowDate());
|
||||||
|
data.setUpdateBy("system");
|
||||||
|
data.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
data.setSiteId("021_FXX_01");
|
||||||
|
data.setDeviceId(deviceId);
|
||||||
|
data.setMaxCellVoltageId(Long.parseLong("1"));
|
||||||
|
data.setMinCellVoltageId(Long.parseLong("1"));
|
||||||
|
data.setMaxCellTempId(Long.parseLong("1"));
|
||||||
|
data.setMinCellTempId(Long.parseLong("1"));
|
||||||
|
data.setMaxCellSocId(Long.parseLong("1"));
|
||||||
|
data.setMinCellSocId(Long.parseLong("1"));
|
||||||
|
data.setMaxCellSohId(Long.parseLong("1"));
|
||||||
|
data.setMinCellSohId(Long.parseLong("1"));
|
||||||
|
data.setStackDeviceId("1");
|
||||||
|
emsBatteryClusterService.insertEmsBatteryCluster(data);
|
||||||
|
|
||||||
|
|
||||||
|
//电池堆
|
||||||
|
//BMS 电池簇
|
||||||
|
EmsBatteryStack dataStack = new EmsBatteryStack();
|
||||||
|
// 设置所有 BigDecimal 类型字段为 ZERO
|
||||||
|
dataStack.setChargeableCapacity(BigDecimal.ZERO);
|
||||||
|
dataStack.setTotalChargedCapacity(BigDecimal.ZERO);
|
||||||
|
dataStack.setDischargeableCapacity(BigDecimal.ZERO);
|
||||||
|
dataStack.setTotalDischargedCapacity(BigDecimal.ZERO);
|
||||||
|
dataStack.setSoh(BigDecimal.ZERO);
|
||||||
|
dataStack.setAverageTemperature(BigDecimal.ZERO);
|
||||||
|
dataStack.setInsulationResistance(BigDecimal.ZERO);
|
||||||
|
dataStack.setCurrentSoc(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxAllowedChargePower(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxAllowedDischargePower(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxAllowedChargeVoltage(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxAllowedDischargeVoltage(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxAllowedChargeCurrent(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxAllowedDischargeCurrent(BigDecimal.ZERO);
|
||||||
|
dataStack.setBatteryPackVoltage(BigDecimal.ZERO);
|
||||||
|
dataStack.setBatteryPackCurrent(BigDecimal.ZERO);
|
||||||
|
dataStack.setBatteryPackTemp(BigDecimal.ZERO);
|
||||||
|
dataStack.setBatteryPackSoc(BigDecimal.ZERO);
|
||||||
|
dataStack.setBatteryPackSoh(BigDecimal.ZERO);
|
||||||
|
dataStack.setBatteryPackInsulationResistance(BigDecimal.ZERO);
|
||||||
|
dataStack.setAvgCellVoltage(BigDecimal.ZERO);
|
||||||
|
dataStack.setAvgCellTemp(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxCellVoltage(BigDecimal.ZERO);
|
||||||
|
dataStack.setMinCellVoltage(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxCellTemp(BigDecimal.ZERO);
|
||||||
|
dataStack.setMinCellTemp(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxCellSoc(BigDecimal.ZERO);
|
||||||
|
dataStack.setMinCellSoc(BigDecimal.ZERO);
|
||||||
|
dataStack.setMaxCellSoh(BigDecimal.ZERO);
|
||||||
|
dataStack.setMinCellSoh(BigDecimal.ZERO);
|
||||||
|
dataStack.setTotalChargeEnergy(BigDecimal.ZERO);
|
||||||
|
dataStack.setTotalDischargeEnergy(BigDecimal.ZERO);
|
||||||
|
|
||||||
|
// 其他非 BigDecimal 字段
|
||||||
|
dataStack.setWorkStatus("1"); // 或其他默认值
|
||||||
|
dataStack.setPcsCommunicationStatus("1");
|
||||||
|
dataStack.setEmsCommunicationStatus("1");
|
||||||
|
dataStack.setCreateBy("system");
|
||||||
|
dataStack.setCreateTime(DateUtils.getNowDate());
|
||||||
|
dataStack.setUpdateBy("system");
|
||||||
|
dataStack.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
dataStack.setSiteId("021_FXX_01");
|
||||||
|
dataStack.setDeviceId(deviceId);
|
||||||
|
dataStack.setMaxCellVoltageId(Long.parseLong("1"));
|
||||||
|
dataStack.setMinCellVoltageId(Long.parseLong("1"));
|
||||||
|
dataStack.setMaxCellTempId(Long.parseLong("1"));
|
||||||
|
dataStack.setMinCellTempId(Long.parseLong("1"));
|
||||||
|
dataStack.setMaxCellSocId(Long.parseLong("1"));
|
||||||
|
dataStack.setMinCellSocId(Long.parseLong("1"));
|
||||||
|
dataStack.setMaxCellSohId(Long.parseLong("1"));
|
||||||
|
dataStack.setMinCellSohId(Long.parseLong("1"));
|
||||||
|
|
||||||
|
emsBatteryStackService.insertEmsBatteryStack(dataStack);
|
||||||
|
|
||||||
|
|
||||||
|
//单体电池
|
||||||
|
Map<String, Map<String, Object>> records = processData(JSON.parseObject(jsonData, new TypeReference<Map<String, Object>>() {}));
|
||||||
|
List<EmsBatteryData> list = new ArrayList<>();
|
||||||
|
//单体电池
|
||||||
|
for (Map.Entry<String, Map<String, Object>> record : records.entrySet()) {
|
||||||
|
String recordId = record.getKey();
|
||||||
|
Map<String, Object> fields = record.getValue();
|
||||||
|
|
||||||
|
EmsBatteryData batteryData = new EmsBatteryData();
|
||||||
|
batteryData.setDeviceId(recordId);
|
||||||
|
batteryData.setBatteryCellId(recordId);
|
||||||
|
batteryData.setSoc(StringUtils.getBigDecimal(fields.get("DTSOC")));
|
||||||
|
batteryData.setSoh(StringUtils.getBigDecimal(fields.get("DTSOH")));
|
||||||
|
batteryData.setTemperature(StringUtils.getBigDecimal(fields.get("DTWD")));
|
||||||
|
batteryData.setVoltage(StringUtils.getBigDecimal(fields.get("DTDY")));
|
||||||
|
|
||||||
|
batteryData.setBatteryCluster(deviceId);
|
||||||
|
batteryData.setBatteryPack(deviceId);
|
||||||
|
|
||||||
|
// 时间戳
|
||||||
|
batteryData.setDataTimestamp(new Date());
|
||||||
|
|
||||||
|
// ID字段
|
||||||
|
batteryData.setSiteId(("021_FXX_01"));
|
||||||
|
batteryData.setClusterDeviceId(("021"));
|
||||||
|
|
||||||
|
list.add(batteryData);
|
||||||
|
}
|
||||||
|
if (list.size() > 0 ) {
|
||||||
|
emsBatteryDataService.insertEmsBatteryDataList(list);
|
||||||
|
}
|
||||||
|
} else if (deviceId.contains("PCS")) {
|
||||||
|
log.info("====================");
|
||||||
|
|
||||||
|
log.info("PCS data:"+ jsonData);
|
||||||
|
//pcs
|
||||||
|
EmsPcsData pcsData = new EmsPcsData();
|
||||||
|
// 时间与状态类字段
|
||||||
|
pcsData.setDataUpdateTime(new Date());
|
||||||
|
pcsData.setWorkStatus("A");
|
||||||
|
pcsData.setGridStatus("B");
|
||||||
|
pcsData.setDeviceStatus("C");
|
||||||
|
pcsData.setControlMode("D");
|
||||||
|
|
||||||
|
// 功率与能量类字段
|
||||||
|
pcsData.setTotalActivePower(BigDecimal.ZERO);
|
||||||
|
pcsData.setDailyAcChargeEnergy(BigDecimal.ZERO);
|
||||||
|
pcsData.setTotalReactivePower(BigDecimal.ZERO);
|
||||||
|
pcsData.setDailyAcDischargeEnergy(BigDecimal.ZERO);
|
||||||
|
pcsData.setTotalApparentPower(BigDecimal.ZERO);
|
||||||
|
pcsData.setTotalPowerFactor(BigDecimal.ZERO);
|
||||||
|
pcsData.setDcPower(BigDecimal.ZERO);
|
||||||
|
pcsData.setTotalAcChargeEnergy(BigDecimal.ZERO);
|
||||||
|
pcsData.setTotalAcDischargeEnergy(BigDecimal.ZERO);
|
||||||
|
pcsData.setAcChargeActivePower(BigDecimal.ZERO);
|
||||||
|
pcsData.setAcCapacitiveReactivePower(BigDecimal.ZERO);
|
||||||
|
pcsData.setAcDischargeActivePower(BigDecimal.ZERO);
|
||||||
|
pcsData.setAcInductiveReactivePower(BigDecimal.ZERO);
|
||||||
|
pcsData.setMaxCapacitivePowerCapacity(BigDecimal.ZERO);
|
||||||
|
pcsData.setMaxInductivePowerCapacity(BigDecimal.ZERO);
|
||||||
|
pcsData.setMaxChargePowerCapacity(BigDecimal.ZERO);
|
||||||
|
pcsData.setMaxDischargePowerCapacity(BigDecimal.ZERO);
|
||||||
|
|
||||||
|
|
||||||
|
// 温度与环境参数
|
||||||
|
pcsData.setPcsModuleTemperature(BigDecimal.ZERO);
|
||||||
|
pcsData.setPcsEnvironmentTemperature(BigDecimal.ZERO);
|
||||||
|
pcsData.setAcFrequency(BigDecimal.ZERO);
|
||||||
|
|
||||||
|
// 状态指示类
|
||||||
|
pcsData.setBranchStatus("A");
|
||||||
|
pcsData.setDischargeStatus("A");
|
||||||
|
pcsData.setAcSwitchStatus("A");
|
||||||
|
pcsData.setDcSwitchStatus("A");
|
||||||
|
pcsData.setRemoteControlStatus("A");
|
||||||
|
|
||||||
|
// 直流参数
|
||||||
|
pcsData.setDcVoltage(BigDecimal.ZERO);
|
||||||
|
pcsData.setDcCurrent(BigDecimal.ZERO);
|
||||||
|
|
||||||
|
// 系统管理字段
|
||||||
|
// data.setCreateBy(BigDecimal.ZERO);
|
||||||
|
// data.setCreateTime(BigDecimal.ZERO);
|
||||||
|
// data.setUpdateBy(BigDecimal.ZERO);
|
||||||
|
// data.setUpdateTime(BigDecimal.ZERO);
|
||||||
|
// data.setRemark(BigDecimal.ZERO);
|
||||||
|
pcsData.setSiteId("021_FXX_01");
|
||||||
|
pcsData.setDeviceId(deviceId);
|
||||||
|
pcsData.setDateMonth(DateUtils.getNowMonthLong());
|
||||||
|
pcsData.setDateDay(DateUtils.getNowDayLong());
|
||||||
|
|
||||||
|
pcsData.setDeviceId(deviceId);
|
||||||
|
|
||||||
|
emsPcsDataService.insertEmsPcsData(pcsData);
|
||||||
|
|
||||||
|
Map<String, Map<String, Object>> records = processDataPrefix(JSON.parseObject(jsonData, new TypeReference<Map<String, Object>>() {}));
|
||||||
|
List<EmsPcsBranchData> list = new ArrayList<>();
|
||||||
|
|
||||||
|
//PCS支路
|
||||||
|
for (Map.Entry<String, Map<String, Object>> record : records.entrySet()) {
|
||||||
|
String recordId = record.getKey();
|
||||||
|
Map<String, Object> fields = record.getValue();
|
||||||
|
|
||||||
|
EmsPcsBranchData data = new EmsPcsBranchData();
|
||||||
|
data.setDeviceId(recordId);
|
||||||
|
data.setDcPower(BigDecimal.ZERO);
|
||||||
|
data.setDcVoltage(BigDecimal.ZERO);
|
||||||
|
data.setDcCurrent(BigDecimal.ZERO);
|
||||||
|
data.setGridUVoltage(BigDecimal.ZERO);
|
||||||
|
data.setGridVVoltage(BigDecimal.ZERO);
|
||||||
|
data.setGridWVoltage(BigDecimal.ZERO);
|
||||||
|
data.setOutputUCurrent(BigDecimal.ZERO);
|
||||||
|
data.setOutputVCurrent(BigDecimal.ZERO);
|
||||||
|
data.setOutputWCurrent(BigDecimal.ZERO);
|
||||||
|
data.setApparentPower(BigDecimal.ZERO);
|
||||||
|
data.setActivePower(BigDecimal.ZERO);
|
||||||
|
data.setReactivePower(BigDecimal.ZERO);
|
||||||
|
data.setPowerFactor(BigDecimal.ZERO);
|
||||||
|
data.setFrequency(BigDecimal.ZERO);
|
||||||
|
data.setInternalTemp(BigDecimal.ZERO);
|
||||||
|
data.setuIgbtTemp(BigDecimal.ZERO);
|
||||||
|
data.setvIgbtTemp(BigDecimal.ZERO);
|
||||||
|
data.setwIgbtTemp(BigDecimal.ZERO);
|
||||||
|
data.setAvailablePower(BigDecimal.ZERO);
|
||||||
|
data.setTotalLoadRatio(BigDecimal.ZERO);
|
||||||
|
data.setAcLeakageCurrent(BigDecimal.ZERO);
|
||||||
|
data.setInsulationResistance(BigDecimal.ZERO);
|
||||||
|
data.setBranchId(Long.parseLong("1"));
|
||||||
|
list.add(data);
|
||||||
|
}
|
||||||
|
if (list.size() > 0 ) {
|
||||||
|
emsPcsBranchDataService.insertEmsPcsBranchDataList(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// 数据分组处理
|
||||||
|
private static Map<String, Map<String, Object>> processData(Map<String, Object> rawData) {
|
||||||
|
Map<String, Map<String, Object>> records = new HashMap<>();
|
||||||
|
|
||||||
|
for (Map.Entry<String, Object> entry : rawData.entrySet()) {
|
||||||
|
String key = entry.getKey();
|
||||||
|
// 提取记录ID(最后3位)
|
||||||
|
String recordId = key.substring(key.length() - 3);
|
||||||
|
try {
|
||||||
|
Long.parseLong(recordId);
|
||||||
|
} catch (Exception e) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 提取字段类型(前缀)
|
||||||
|
String fieldType = key.substring(0, key.length() - 3);
|
||||||
|
|
||||||
|
// 初始化记录
|
||||||
|
records.putIfAbsent(recordId, new HashMap<>());
|
||||||
|
// 存入字段值
|
||||||
|
records.get(recordId).put(fieldType, entry.getValue());
|
||||||
|
}
|
||||||
|
return records;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Map<String, Map<String, Object>> processDataPrefix(Map<String, Object> rawData) {
|
||||||
|
Map<String, Map<String, Object>> records = new HashMap<>();
|
||||||
|
|
||||||
|
for (Map.Entry<String, Object> entry : rawData.entrySet()) {
|
||||||
|
String key = entry.getKey();
|
||||||
|
// 确保键长度足够
|
||||||
|
if (key.length() < 3) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 提取记录ID(前3位)
|
||||||
|
String recordId = key.substring(0, 3);
|
||||||
|
if (!recordId.startsWith("DY")) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 提取字段类型(剩余部分)
|
||||||
|
String fieldType = key.substring(3);
|
||||||
|
|
||||||
|
// 初始化记录
|
||||||
|
records.putIfAbsent(recordId, new HashMap<>());
|
||||||
|
// 存入字段值
|
||||||
|
records.get(recordId).put(fieldType, entry.getValue());
|
||||||
|
}
|
||||||
|
return records;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
package com.xzzn.web.controller.ems.data;
|
||||||
|
|
||||||
|
public class FXDataProcess {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void batteryClusterProcess(String data) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void batteryStackProcess(String data) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void batteryDataProcess(String data) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void pcsProcess(String data) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void pcsBranchProcess(String data) {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void coolingProcess(String data) {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void ameterProcess(String data) {
|
||||||
|
}
|
||||||
|
}
|
@ -127,3 +127,12 @@ xss:
|
|||||||
excludes: /system/notice
|
excludes: /system/notice
|
||||||
# 匹配链接
|
# 匹配链接
|
||||||
urlPatterns: /system/*,/monitor/*,/tool/*
|
urlPatterns: /system/*,/monitor/*,/tool/*
|
||||||
|
|
||||||
|
mqtt:
|
||||||
|
broker.url: tcp://122.51.194.184:1883
|
||||||
|
client.id: ems-cloud
|
||||||
|
username: dmbroker
|
||||||
|
password: qwer1234
|
||||||
|
connection-timeout: 15
|
||||||
|
keep-alive-interval: 30
|
||||||
|
automatic-reconnect: true
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* alarm-告警等级
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum AlarmLevelStatus
|
||||||
|
{
|
||||||
|
WARNING("A", "提示"), GENERAL("B", "一般"), SERIOUS("C", "严重"), EMERGENCY("D", "紧急");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
AlarmLevelStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* alarm-告警状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum AlarmStatus
|
||||||
|
{
|
||||||
|
WAITING("0", "待处理"), DONE("1", "已处理"),PROCESSING("2", "处理中");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
AlarmStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ammeter-电表数据类别
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum AmmeterCategoryStatus
|
||||||
|
{
|
||||||
|
TOTAL_CHARGE("1", "累计充电量"), TOTAL_DISCHARGE("2", "累计放电量"), DAILY_CHARGE("3", "日充电量"), DAILY_DISCHARGE("4", "日放电量");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
AmmeterCategoryStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs-branch-支路状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum BranchStatus
|
||||||
|
{
|
||||||
|
STANDBY("0", "备用"), NORMAL("1", "正常"), SWITCHING("2", "切换中");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
BranchStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充电状态&放电状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum ChargeStatus
|
||||||
|
{
|
||||||
|
CHARGING("1", "充电"), STANDBY("2", "待机"), DISCHARGING("3", "放电");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
ChargeStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* device-通信状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum CommunicationStatus
|
||||||
|
{
|
||||||
|
OK("0", "正常"), SUSPEND("1", "通信中断") ,EXCEPTION("1", "异常");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
CommunicationStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs-控制模式
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum ControlModeStatus
|
||||||
|
{
|
||||||
|
REMOTE("0", "远程"), LOCAL("1", "本地");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
ControlModeStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs-设备状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum DeviceStatus
|
||||||
|
{
|
||||||
|
ONLINE("0", "在线"), OFFLINE("1", "离线"), UNDER_REPAIR("2", "维修中");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
DeviceStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* device-设备类型
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
|
||||||
|
public enum DeviceType
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 网络设备
|
||||||
|
*/
|
||||||
|
TCP,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 串口设备
|
||||||
|
*/
|
||||||
|
RTU
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs-并网状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum GridStatus
|
||||||
|
{
|
||||||
|
GRID("0", "并网"), NOTGRID("1", "未并网");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
GridStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* strategy-策略状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum StrategyStatus
|
||||||
|
{
|
||||||
|
NOT_ENABLED("0", "未启用"), RUNNING("1", "已运行"),SUSPENDED("2", "已暂停"), DISABLE("1", "禁用"),DELETE("2", "删除");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
StrategyStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs-开关状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum SwitchStatus
|
||||||
|
{
|
||||||
|
CLOSED("0", "闭合"), DISCONNECT("1", "断开"), FAULT_DISCONNECT("2", "故障断开");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
SwitchStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.xzzn.common.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs-工作状态
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
*/
|
||||||
|
public enum WorkStatus
|
||||||
|
{
|
||||||
|
NORMAL("0", "正常"), ABNORMAL("1", "异常"), STOP("2", "停止");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
private final String info;
|
||||||
|
|
||||||
|
WorkStatus(String code, String info)
|
||||||
|
{
|
||||||
|
this.code = code;
|
||||||
|
this.info = info;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCode()
|
||||||
|
{
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInfo()
|
||||||
|
{
|
||||||
|
return info;
|
||||||
|
}
|
||||||
|
}
|
@ -8,6 +8,7 @@ import java.time.LocalDateTime;
|
|||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.time.ZoneId;
|
import java.time.ZoneId;
|
||||||
import java.time.ZonedDateTime;
|
import java.time.ZonedDateTime;
|
||||||
|
import java.util.Calendar;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import org.apache.commons.lang3.time.DateFormatUtils;
|
import org.apache.commons.lang3.time.DateFormatUtils;
|
||||||
|
|
||||||
@ -188,4 +189,15 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
|
|||||||
ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault());
|
ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault());
|
||||||
return Date.from(zdt.toInstant());
|
return Date.from(zdt.toInstant());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Long getNowMonthLong() {
|
||||||
|
Calendar calendar = Calendar.getInstance();
|
||||||
|
long month = (long) calendar.get(Calendar.MONTH) + 1; // 月份从0开始,所以要加1
|
||||||
|
return month;
|
||||||
|
}
|
||||||
|
public static Long getNowDayLong() {
|
||||||
|
Calendar calendar = Calendar.getInstance();
|
||||||
|
long date = calendar.get(Calendar.DAY_OF_MONTH); // 月份从0开始,所以要加1
|
||||||
|
return date;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package com.xzzn.common.utils;
|
package com.xzzn.common.utils;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
@ -719,4 +720,15 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils
|
|||||||
}
|
}
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static BigDecimal getBigDecimal(Object s){
|
||||||
|
|
||||||
|
try {
|
||||||
|
return new BigDecimal(s.toString());
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
return BigDecimal.ZERO;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
@ -46,7 +46,10 @@
|
|||||||
</exclusion>
|
</exclusion>
|
||||||
</exclusions>
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.paho</groupId>
|
||||||
|
<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
|
||||||
|
</dependency>
|
||||||
<!-- 获取系统信息 -->
|
<!-- 获取系统信息 -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.github.oshi</groupId>
|
<groupId>com.github.oshi</groupId>
|
||||||
|
@ -0,0 +1,31 @@
|
|||||||
|
package com.xzzn.framework.config;
|
||||||
|
|
||||||
|
import com.xzzn.framework.config.properties.MqttProperties;
|
||||||
|
import org.eclipse.paho.client.mqttv3.*;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class MqttConfig {
|
||||||
|
private static final Logger logger = LoggerFactory.getLogger(MqttConfig.class);
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private MqttProperties mqttProperties;
|
||||||
|
@Bean
|
||||||
|
public MqttConnectOptions mqttConnectOptions() {
|
||||||
|
MqttConnectOptions options = new MqttConnectOptions();
|
||||||
|
options.setServerURIs(new String[]{mqttProperties.getBrokerUrl()});
|
||||||
|
if (!mqttProperties.getUsername().isEmpty()) options.setUserName(mqttProperties.getUsername());
|
||||||
|
if (!mqttProperties.getPassword().isEmpty()) options.setPassword(mqttProperties.getPassword().toCharArray());
|
||||||
|
options.setConnectionTimeout(mqttProperties.getConnectionTimeout());
|
||||||
|
options.setKeepAliveInterval(mqttProperties.getKeepAliveInterval());
|
||||||
|
options.setAutomaticReconnect(mqttProperties.isAutomaticReconnect());
|
||||||
|
options.setCleanSession(true);
|
||||||
|
return options;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,84 @@
|
|||||||
|
package com.xzzn.framework.config.properties;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class MqttProperties {
|
||||||
|
@Value("${mqtt.broker.url}")
|
||||||
|
private String brokerUrl;
|
||||||
|
|
||||||
|
@Value("${mqtt.client.id:}")
|
||||||
|
private String clientId;
|
||||||
|
|
||||||
|
@Value("${mqtt.username:}")
|
||||||
|
private String username;
|
||||||
|
|
||||||
|
@Value("${mqtt.password:}")
|
||||||
|
private String password;
|
||||||
|
|
||||||
|
@Value("${mqtt.connection-timeout:10}")
|
||||||
|
private int connectionTimeout;
|
||||||
|
|
||||||
|
@Value("${mqtt.keep-alive-interval:60}")
|
||||||
|
private int keepAliveInterval;
|
||||||
|
|
||||||
|
@Value("${mqtt.automatic-reconnect:true}")
|
||||||
|
private boolean automaticReconnect;
|
||||||
|
|
||||||
|
public String getBrokerUrl() {
|
||||||
|
return brokerUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBrokerUrl(String brokerUrl) {
|
||||||
|
this.brokerUrl = brokerUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getClientId() {
|
||||||
|
return clientId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setClientId(String clientId) {
|
||||||
|
this.clientId = clientId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getConnectionTimeout() {
|
||||||
|
return connectionTimeout;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setConnectionTimeout(int connectionTimeout) {
|
||||||
|
this.connectionTimeout = connectionTimeout;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getKeepAliveInterval() {
|
||||||
|
return keepAliveInterval;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKeepAliveInterval(int keepAliveInterval) {
|
||||||
|
this.keepAliveInterval = keepAliveInterval;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isAutomaticReconnect() {
|
||||||
|
return automaticReconnect;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAutomaticReconnect(boolean automaticReconnect) {
|
||||||
|
this.automaticReconnect = automaticReconnect;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,155 @@
|
|||||||
|
package com.xzzn.framework.manager;
|
||||||
|
|
||||||
|
import org.eclipse.paho.client.mqttv3.*;
|
||||||
|
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.ApplicationArguments;
|
||||||
|
import org.springframework.boot.ApplicationRunner;
|
||||||
|
import org.springframework.context.SmartLifecycle;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class MqttLifecycleManager implements ApplicationRunner, SmartLifecycle, MqttCallback {
|
||||||
|
|
||||||
|
private final MqttConnectOptions connectOptions;
|
||||||
|
private MqttClient mqttClient;
|
||||||
|
private volatile boolean running = false;
|
||||||
|
|
||||||
|
// 存储订阅关系: topic -> (listener, qos)
|
||||||
|
private final ConcurrentHashMap<String, SubscriptionInfo> subscriptions = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public MqttLifecycleManager(MqttConnectOptions connectOptions) {
|
||||||
|
this.connectOptions = connectOptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Spring Boot 启动完成后执行
|
||||||
|
@Override
|
||||||
|
public void run(ApplicationArguments args) throws Exception {
|
||||||
|
start();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void start() {
|
||||||
|
if (running) return;
|
||||||
|
|
||||||
|
try {
|
||||||
|
String clientId = connectOptions.getUserName() + "-" + System.currentTimeMillis();
|
||||||
|
mqttClient = new MqttClient(
|
||||||
|
connectOptions.getServerURIs()[0],
|
||||||
|
clientId,
|
||||||
|
new MemoryPersistence()
|
||||||
|
);
|
||||||
|
|
||||||
|
mqttClient.setCallback(this);
|
||||||
|
mqttClient.connect(connectOptions);
|
||||||
|
|
||||||
|
// 重连后自动重新订阅
|
||||||
|
resubscribeAll();
|
||||||
|
|
||||||
|
running = true;
|
||||||
|
System.out.println("MQTT client connected to: " + connectOptions.getServerURIs()[0]);
|
||||||
|
} catch (MqttException e) {
|
||||||
|
System.err.println("MQTT connection failed: " + e.getMessage());
|
||||||
|
// 添加重试逻辑
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void stop() {
|
||||||
|
if (mqttClient != null && mqttClient.isConnected()) {
|
||||||
|
try {
|
||||||
|
mqttClient.disconnect();
|
||||||
|
mqttClient.close();
|
||||||
|
} catch (MqttException e) {
|
||||||
|
System.err.println("Error disconnecting MQTT client: " + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
running = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isRunning() {
|
||||||
|
return running;
|
||||||
|
}
|
||||||
|
|
||||||
|
// MQTT 回调方法
|
||||||
|
@Override
|
||||||
|
public void connectionLost(Throwable cause) {
|
||||||
|
System.err.println("MQTT connection lost: " + cause.getMessage());
|
||||||
|
running = false;
|
||||||
|
// 自动重连由 MqttConnectOptions 处理
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void messageArrived(String topic, MqttMessage message) throws Exception {
|
||||||
|
SubscriptionInfo info = subscriptions.get(topic);
|
||||||
|
if (info != null && info.getListener() != null) {
|
||||||
|
info.getListener().messageArrived(topic, message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deliveryComplete(IMqttDeliveryToken token) {
|
||||||
|
// 消息发布完成处理
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订阅方法
|
||||||
|
public void subscribe(String topic, int qos, IMqttMessageListener listener) {
|
||||||
|
try {
|
||||||
|
if (mqttClient != null && mqttClient.isConnected()) {
|
||||||
|
mqttClient.subscribe(topic, qos);
|
||||||
|
}
|
||||||
|
subscriptions.put(topic, new SubscriptionInfo(listener, qos));
|
||||||
|
} catch (MqttException e) {
|
||||||
|
System.err.println("Subscribe failed: " + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 发布方法
|
||||||
|
public void publish(String topic, String payload, int qos) throws MqttException {
|
||||||
|
if (mqttClient != null && mqttClient.isConnected()) {
|
||||||
|
MqttMessage message = new MqttMessage(payload.getBytes());
|
||||||
|
message.setQos(qos);
|
||||||
|
mqttClient.publish(topic, message);
|
||||||
|
} else {
|
||||||
|
throw new MqttException(MqttException.REASON_CODE_CLIENT_NOT_CONNECTED);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重新订阅所有主题
|
||||||
|
private void resubscribeAll() {
|
||||||
|
if (mqttClient == null || !mqttClient.isConnected()) return;
|
||||||
|
|
||||||
|
subscriptions.forEach((topic, info) -> {
|
||||||
|
try {
|
||||||
|
mqttClient.subscribe(topic, info.getQos());
|
||||||
|
} catch (MqttException e) {
|
||||||
|
System.err.println("Resubscribe failed for topic: " + topic);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订阅信息内部类
|
||||||
|
private static class SubscriptionInfo {
|
||||||
|
private final IMqttMessageListener listener;
|
||||||
|
private final int qos;
|
||||||
|
|
||||||
|
public SubscriptionInfo(IMqttMessageListener listener, int qos) {
|
||||||
|
this.listener = listener;
|
||||||
|
this.qos = qos;
|
||||||
|
}
|
||||||
|
|
||||||
|
public IMqttMessageListener getListener() {
|
||||||
|
return listener;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getQos() {
|
||||||
|
return qos;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
package com.xzzn.framework.web.service;
|
||||||
|
|
||||||
|
import org.eclipse.paho.client.mqttv3.MqttException;
|
||||||
|
|
||||||
|
public interface MqttPublisher {
|
||||||
|
void publish(String topic, String message) throws MqttException;
|
||||||
|
void publish(String topic, String message, int qos) throws MqttException;
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
package com.xzzn.framework.web.service;
|
||||||
|
|
||||||
|
import org.eclipse.paho.client.mqttv3.IMqttMessageListener;
|
||||||
|
|
||||||
|
public interface MqttSubscriber {
|
||||||
|
void subscribe(String topic, int qos, IMqttMessageListener listener);
|
||||||
|
}
|
@ -11,7 +11,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* 告警记录对象 ems_alarm_records
|
* 告警记录对象 ems_alarm_records
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-17
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsAlarmRecords extends BaseEntity
|
public class EmsAlarmRecords extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -48,11 +48,11 @@ public class EmsAlarmRecords extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
/** 设备名称,用于标识设备 */
|
/** 设备名称,用于标识设备 */
|
||||||
@Excel(name = "设备名称,用于标识设备")
|
@Excel(name = "设备名称,用于标识设备")
|
||||||
@ -128,22 +128,22 @@ public class EmsAlarmRecords extends BaseEntity
|
|||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
181
ems-system/src/main/java/com/xzzn/ems/domain/EmsAmmeterData.java
Normal file
181
ems-system/src/main/java/com/xzzn/ems/domain/EmsAmmeterData.java
Normal file
@ -0,0 +1,181 @@
|
|||||||
|
package com.xzzn.ems.domain;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.xzzn.common.core.domain.BaseEntity;
|
||||||
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||||
|
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||||
|
import com.xzzn.common.annotation.Excel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总数据对象 ems_ammeter_data
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
public class EmsAmmeterData extends BaseEntity
|
||||||
|
{
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** 数据更新时间 */
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "数据更新时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date dataUpdateTime;
|
||||||
|
|
||||||
|
/** 类别 */
|
||||||
|
@Excel(name = "类别")
|
||||||
|
private String category;
|
||||||
|
|
||||||
|
/** 总 (kWh) */
|
||||||
|
@Excel(name = "总 (kWh)")
|
||||||
|
private BigDecimal totalKwh;
|
||||||
|
|
||||||
|
/** 尖 (kWh) */
|
||||||
|
@Excel(name = "尖 (kWh)")
|
||||||
|
private BigDecimal sharpKwh;
|
||||||
|
|
||||||
|
/** 峰 (kWh) */
|
||||||
|
@Excel(name = "峰 (kWh)")
|
||||||
|
private BigDecimal peakKwh;
|
||||||
|
|
||||||
|
/** 平 (kWh) */
|
||||||
|
@Excel(name = "平 (kWh)")
|
||||||
|
private BigDecimal flatKwh;
|
||||||
|
|
||||||
|
/** 谷 (kWh) */
|
||||||
|
@Excel(name = "谷 (kWh)")
|
||||||
|
private BigDecimal valleyKwh;
|
||||||
|
|
||||||
|
/** 站点id */
|
||||||
|
@Excel(name = "站点id")
|
||||||
|
private String siteId;
|
||||||
|
|
||||||
|
/** 设备唯一标识符 */
|
||||||
|
@Excel(name = "设备唯一标识符")
|
||||||
|
private String deviceId;
|
||||||
|
|
||||||
|
public void setId(Long id)
|
||||||
|
{
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId()
|
||||||
|
{
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDataUpdateTime(Date dataUpdateTime)
|
||||||
|
{
|
||||||
|
this.dataUpdateTime = dataUpdateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getDataUpdateTime()
|
||||||
|
{
|
||||||
|
return dataUpdateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategory(String category)
|
||||||
|
{
|
||||||
|
this.category = category;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCategory()
|
||||||
|
{
|
||||||
|
return category;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalKwh(BigDecimal totalKwh)
|
||||||
|
{
|
||||||
|
this.totalKwh = totalKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalKwh()
|
||||||
|
{
|
||||||
|
return totalKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSharpKwh(BigDecimal sharpKwh)
|
||||||
|
{
|
||||||
|
this.sharpKwh = sharpKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getSharpKwh()
|
||||||
|
{
|
||||||
|
return sharpKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPeakKwh(BigDecimal peakKwh)
|
||||||
|
{
|
||||||
|
this.peakKwh = peakKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getPeakKwh()
|
||||||
|
{
|
||||||
|
return peakKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFlatKwh(BigDecimal flatKwh)
|
||||||
|
{
|
||||||
|
this.flatKwh = flatKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getFlatKwh()
|
||||||
|
{
|
||||||
|
return flatKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValleyKwh(BigDecimal valleyKwh)
|
||||||
|
{
|
||||||
|
this.valleyKwh = valleyKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getValleyKwh()
|
||||||
|
{
|
||||||
|
return valleyKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSiteId(String siteId)
|
||||||
|
{
|
||||||
|
this.siteId = siteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSiteId()
|
||||||
|
{
|
||||||
|
return siteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceId(String deviceId)
|
||||||
|
{
|
||||||
|
this.deviceId = deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDeviceId()
|
||||||
|
{
|
||||||
|
return deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
.append("id", getId())
|
||||||
|
.append("dataUpdateTime", getDataUpdateTime())
|
||||||
|
.append("category", getCategory())
|
||||||
|
.append("totalKwh", getTotalKwh())
|
||||||
|
.append("sharpKwh", getSharpKwh())
|
||||||
|
.append("peakKwh", getPeakKwh())
|
||||||
|
.append("flatKwh", getFlatKwh())
|
||||||
|
.append("valleyKwh", getValleyKwh())
|
||||||
|
.append("createBy", getCreateBy())
|
||||||
|
.append("createTime", getCreateTime())
|
||||||
|
.append("updateBy", getUpdateBy())
|
||||||
|
.append("updateTime", getUpdateTime())
|
||||||
|
.append("remark", getRemark())
|
||||||
|
.append("siteId", getSiteId())
|
||||||
|
.append("deviceId", getDeviceId())
|
||||||
|
.toString();
|
||||||
|
}
|
||||||
|
}
|
@ -11,7 +11,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* 电池簇数据对象 ems_battery_cluster
|
* 电池簇数据对象 ems_battery_cluster
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-22
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsBatteryCluster extends BaseEntity
|
public class EmsBatteryCluster extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -74,11 +74,143 @@ public class EmsBatteryCluster extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
|
/** 堆设备id */
|
||||||
|
@Excel(name = "堆设备id")
|
||||||
|
private String stackDeviceId;
|
||||||
|
|
||||||
|
/** 允许充电最大功率 */
|
||||||
|
@Excel(name = "允许充电最大功率")
|
||||||
|
private BigDecimal maxAllowedChargePower;
|
||||||
|
|
||||||
|
/** 允许放电最大功率 */
|
||||||
|
@Excel(name = "允许放电最大功率")
|
||||||
|
private BigDecimal maxAllowedDischargePower;
|
||||||
|
|
||||||
|
/** 允许充电最大电压 */
|
||||||
|
@Excel(name = "允许充电最大电压")
|
||||||
|
private BigDecimal maxAllowedChargeVoltage;
|
||||||
|
|
||||||
|
/** 允许放电最大电压 */
|
||||||
|
@Excel(name = "允许放电最大电压")
|
||||||
|
private BigDecimal maxAllowedDischargeVoltage;
|
||||||
|
|
||||||
|
/** 允许充电最大电流 */
|
||||||
|
@Excel(name = "允许充电最大电流")
|
||||||
|
private BigDecimal maxAllowedChargeCurrent;
|
||||||
|
|
||||||
|
/** 允许放电最大电流 */
|
||||||
|
@Excel(name = "允许放电最大电流")
|
||||||
|
private BigDecimal maxAllowedDischargeCurrent;
|
||||||
|
|
||||||
|
/** 组电压 */
|
||||||
|
@Excel(name = "组电压")
|
||||||
|
private BigDecimal batteryPackVoltage;
|
||||||
|
|
||||||
|
/** 组电流 */
|
||||||
|
@Excel(name = "组电流")
|
||||||
|
private BigDecimal batteryPackCurrent;
|
||||||
|
|
||||||
|
/** 模块温度 */
|
||||||
|
@Excel(name = "模块温度")
|
||||||
|
private BigDecimal batteryPackTemp;
|
||||||
|
|
||||||
|
/** 组SOC */
|
||||||
|
@Excel(name = "组SOC")
|
||||||
|
private BigDecimal batteryPackSoc;
|
||||||
|
|
||||||
|
/** 组SOH */
|
||||||
|
@Excel(name = "组SOH")
|
||||||
|
private BigDecimal batteryPackSoh;
|
||||||
|
|
||||||
|
/** 组绝缘电阻 */
|
||||||
|
@Excel(name = "组绝缘电阻")
|
||||||
|
private BigDecimal batteryPackInsulationResistance;
|
||||||
|
|
||||||
|
/** 平均单体电压 */
|
||||||
|
@Excel(name = "平均单体电压")
|
||||||
|
private BigDecimal avgCellVoltage;
|
||||||
|
|
||||||
|
/** 平均单体温度 */
|
||||||
|
@Excel(name = "平均单体温度")
|
||||||
|
private BigDecimal avgCellTemp;
|
||||||
|
|
||||||
|
/** 最高单体电压 */
|
||||||
|
@Excel(name = "最高单体电压")
|
||||||
|
private BigDecimal maxCellVoltage;
|
||||||
|
|
||||||
|
/** 最高单体电压对应点号 */
|
||||||
|
@Excel(name = "最高单体电压对应点号")
|
||||||
|
private Long maxCellVoltageId;
|
||||||
|
|
||||||
|
/** 最低单体电压 */
|
||||||
|
@Excel(name = "最低单体电压")
|
||||||
|
private BigDecimal minCellVoltage;
|
||||||
|
|
||||||
|
/** 最低单体电压对应点号 */
|
||||||
|
@Excel(name = "最低单体电压对应点号")
|
||||||
|
private Long minCellVoltageId;
|
||||||
|
|
||||||
|
/** 最高单体温度 */
|
||||||
|
@Excel(name = "最高单体温度")
|
||||||
|
private BigDecimal maxCellTemp;
|
||||||
|
|
||||||
|
/** 最高单体温度对应点号 */
|
||||||
|
@Excel(name = "最高单体温度对应点号")
|
||||||
|
private Long maxCellTempId;
|
||||||
|
|
||||||
|
/** 最低单体温度 */
|
||||||
|
@Excel(name = "最低单体温度")
|
||||||
|
private BigDecimal minCellTemp;
|
||||||
|
|
||||||
|
/** 最低单体温度对应点号 */
|
||||||
|
@Excel(name = "最低单体温度对应点号")
|
||||||
|
private Long minCellTempId;
|
||||||
|
|
||||||
|
/** 最高单体SOC */
|
||||||
|
@Excel(name = "最高单体SOC")
|
||||||
|
private BigDecimal maxCellSoc;
|
||||||
|
|
||||||
|
/** 最高单体SOC对应点号 */
|
||||||
|
@Excel(name = "最高单体SOC对应点号")
|
||||||
|
private Long maxCellSocId;
|
||||||
|
|
||||||
|
/** 最低单体SOC */
|
||||||
|
@Excel(name = "最低单体SOC")
|
||||||
|
private BigDecimal minCellSoc;
|
||||||
|
|
||||||
|
/** 最低单体SOC对应点号 */
|
||||||
|
@Excel(name = "最低单体SOC对应点号")
|
||||||
|
private Long minCellSocId;
|
||||||
|
|
||||||
|
/** 最高单体SOH */
|
||||||
|
@Excel(name = "最高单体SOH")
|
||||||
|
private BigDecimal maxCellSoh;
|
||||||
|
|
||||||
|
/** 最高单体SOH对应点号 */
|
||||||
|
@Excel(name = "最高单体SOH对应点号")
|
||||||
|
private Long maxCellSohId;
|
||||||
|
|
||||||
|
/** 最低单体SOH */
|
||||||
|
@Excel(name = "最低单体SOH")
|
||||||
|
private BigDecimal minCellSoh;
|
||||||
|
|
||||||
|
/** 最低单体SOH对应点号 */
|
||||||
|
@Excel(name = "最低单体SOH对应点号")
|
||||||
|
private Long minCellSohId;
|
||||||
|
|
||||||
|
/** 单次累计充电电量 */
|
||||||
|
@Excel(name = "单次累计充电电量")
|
||||||
|
private BigDecimal totalChargeEnergy;
|
||||||
|
|
||||||
|
/** 单次累计放电电量 */
|
||||||
|
@Excel(name = "单次累计放电电量")
|
||||||
|
private BigDecimal totalDischargeEnergy;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
@ -220,26 +352,356 @@ public class EmsBatteryCluster extends BaseEntity
|
|||||||
return currentSoc;
|
return currentSoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setStackDeviceId(String stackDeviceId)
|
||||||
|
{
|
||||||
|
this.stackDeviceId = stackDeviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStackDeviceId()
|
||||||
|
{
|
||||||
|
return stackDeviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedChargePower(BigDecimal maxAllowedChargePower)
|
||||||
|
{
|
||||||
|
this.maxAllowedChargePower = maxAllowedChargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedChargePower()
|
||||||
|
{
|
||||||
|
return maxAllowedChargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedDischargePower(BigDecimal maxAllowedDischargePower)
|
||||||
|
{
|
||||||
|
this.maxAllowedDischargePower = maxAllowedDischargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedDischargePower()
|
||||||
|
{
|
||||||
|
return maxAllowedDischargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedChargeVoltage(BigDecimal maxAllowedChargeVoltage)
|
||||||
|
{
|
||||||
|
this.maxAllowedChargeVoltage = maxAllowedChargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedChargeVoltage()
|
||||||
|
{
|
||||||
|
return maxAllowedChargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedDischargeVoltage(BigDecimal maxAllowedDischargeVoltage)
|
||||||
|
{
|
||||||
|
this.maxAllowedDischargeVoltage = maxAllowedDischargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedDischargeVoltage()
|
||||||
|
{
|
||||||
|
return maxAllowedDischargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedChargeCurrent(BigDecimal maxAllowedChargeCurrent)
|
||||||
|
{
|
||||||
|
this.maxAllowedChargeCurrent = maxAllowedChargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedChargeCurrent()
|
||||||
|
{
|
||||||
|
return maxAllowedChargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedDischargeCurrent(BigDecimal maxAllowedDischargeCurrent)
|
||||||
|
{
|
||||||
|
this.maxAllowedDischargeCurrent = maxAllowedDischargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedDischargeCurrent()
|
||||||
|
{
|
||||||
|
return maxAllowedDischargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackVoltage(BigDecimal batteryPackVoltage)
|
||||||
|
{
|
||||||
|
this.batteryPackVoltage = batteryPackVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackVoltage()
|
||||||
|
{
|
||||||
|
return batteryPackVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackCurrent(BigDecimal batteryPackCurrent)
|
||||||
|
{
|
||||||
|
this.batteryPackCurrent = batteryPackCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackCurrent()
|
||||||
|
{
|
||||||
|
return batteryPackCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackTemp(BigDecimal batteryPackTemp)
|
||||||
|
{
|
||||||
|
this.batteryPackTemp = batteryPackTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackTemp()
|
||||||
|
{
|
||||||
|
return batteryPackTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackSoc(BigDecimal batteryPackSoc)
|
||||||
|
{
|
||||||
|
this.batteryPackSoc = batteryPackSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackSoc()
|
||||||
|
{
|
||||||
|
return batteryPackSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackSoh(BigDecimal batteryPackSoh)
|
||||||
|
{
|
||||||
|
this.batteryPackSoh = batteryPackSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackSoh()
|
||||||
|
{
|
||||||
|
return batteryPackSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackInsulationResistance(BigDecimal batteryPackInsulationResistance)
|
||||||
|
{
|
||||||
|
this.batteryPackInsulationResistance = batteryPackInsulationResistance;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackInsulationResistance()
|
||||||
|
{
|
||||||
|
return batteryPackInsulationResistance;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgCellVoltage(BigDecimal avgCellVoltage)
|
||||||
|
{
|
||||||
|
this.avgCellVoltage = avgCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgCellVoltage()
|
||||||
|
{
|
||||||
|
return avgCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgCellTemp(BigDecimal avgCellTemp)
|
||||||
|
{
|
||||||
|
this.avgCellTemp = avgCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgCellTemp()
|
||||||
|
{
|
||||||
|
return avgCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellVoltage(BigDecimal maxCellVoltage)
|
||||||
|
{
|
||||||
|
this.maxCellVoltage = maxCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellVoltage()
|
||||||
|
{
|
||||||
|
return maxCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellVoltageId(Long maxCellVoltageId)
|
||||||
|
{
|
||||||
|
this.maxCellVoltageId = maxCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellVoltageId()
|
||||||
|
{
|
||||||
|
return maxCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellVoltage(BigDecimal minCellVoltage)
|
||||||
|
{
|
||||||
|
this.minCellVoltage = minCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellVoltage()
|
||||||
|
{
|
||||||
|
return minCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellVoltageId(Long minCellVoltageId)
|
||||||
|
{
|
||||||
|
this.minCellVoltageId = minCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellVoltageId()
|
||||||
|
{
|
||||||
|
return minCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellTemp(BigDecimal maxCellTemp)
|
||||||
|
{
|
||||||
|
this.maxCellTemp = maxCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellTemp()
|
||||||
|
{
|
||||||
|
return maxCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellTempId(Long maxCellTempId)
|
||||||
|
{
|
||||||
|
this.maxCellTempId = maxCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellTempId()
|
||||||
|
{
|
||||||
|
return maxCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellTemp(BigDecimal minCellTemp)
|
||||||
|
{
|
||||||
|
this.minCellTemp = minCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellTemp()
|
||||||
|
{
|
||||||
|
return minCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellTempId(Long minCellTempId)
|
||||||
|
{
|
||||||
|
this.minCellTempId = minCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellTempId()
|
||||||
|
{
|
||||||
|
return minCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSoc(BigDecimal maxCellSoc)
|
||||||
|
{
|
||||||
|
this.maxCellSoc = maxCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellSoc()
|
||||||
|
{
|
||||||
|
return maxCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSocId(Long maxCellSocId)
|
||||||
|
{
|
||||||
|
this.maxCellSocId = maxCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellSocId()
|
||||||
|
{
|
||||||
|
return maxCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSoc(BigDecimal minCellSoc)
|
||||||
|
{
|
||||||
|
this.minCellSoc = minCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellSoc()
|
||||||
|
{
|
||||||
|
return minCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSocId(Long minCellSocId)
|
||||||
|
{
|
||||||
|
this.minCellSocId = minCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellSocId()
|
||||||
|
{
|
||||||
|
return minCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSoh(BigDecimal maxCellSoh)
|
||||||
|
{
|
||||||
|
this.maxCellSoh = maxCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellSoh()
|
||||||
|
{
|
||||||
|
return maxCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSohId(Long maxCellSohId)
|
||||||
|
{
|
||||||
|
this.maxCellSohId = maxCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellSohId()
|
||||||
|
{
|
||||||
|
return maxCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSoh(BigDecimal minCellSoh)
|
||||||
|
{
|
||||||
|
this.minCellSoh = minCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellSoh()
|
||||||
|
{
|
||||||
|
return minCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSohId(Long minCellSohId)
|
||||||
|
{
|
||||||
|
this.minCellSohId = minCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellSohId()
|
||||||
|
{
|
||||||
|
return minCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalChargeEnergy(BigDecimal totalChargeEnergy)
|
||||||
|
{
|
||||||
|
this.totalChargeEnergy = totalChargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalChargeEnergy()
|
||||||
|
{
|
||||||
|
return totalChargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalDischargeEnergy(BigDecimal totalDischargeEnergy)
|
||||||
|
{
|
||||||
|
this.totalDischargeEnergy = totalDischargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalDischargeEnergy()
|
||||||
|
{
|
||||||
|
return totalDischargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
@ -264,6 +726,39 @@ public class EmsBatteryCluster extends BaseEntity
|
|||||||
.append("remark", getRemark())
|
.append("remark", getRemark())
|
||||||
.append("siteId", getSiteId())
|
.append("siteId", getSiteId())
|
||||||
.append("deviceId", getDeviceId())
|
.append("deviceId", getDeviceId())
|
||||||
|
.append("stackDeviceId", getStackDeviceId())
|
||||||
|
.append("maxAllowedChargePower", getMaxAllowedChargePower())
|
||||||
|
.append("maxAllowedDischargePower", getMaxAllowedDischargePower())
|
||||||
|
.append("maxAllowedChargeVoltage", getMaxAllowedChargeVoltage())
|
||||||
|
.append("maxAllowedDischargeVoltage", getMaxAllowedDischargeVoltage())
|
||||||
|
.append("maxAllowedChargeCurrent", getMaxAllowedChargeCurrent())
|
||||||
|
.append("maxAllowedDischargeCurrent", getMaxAllowedDischargeCurrent())
|
||||||
|
.append("batteryPackVoltage", getBatteryPackVoltage())
|
||||||
|
.append("batteryPackCurrent", getBatteryPackCurrent())
|
||||||
|
.append("batteryPackTemp", getBatteryPackTemp())
|
||||||
|
.append("batteryPackSoc", getBatteryPackSoc())
|
||||||
|
.append("batteryPackSoh", getBatteryPackSoh())
|
||||||
|
.append("batteryPackInsulationResistance", getBatteryPackInsulationResistance())
|
||||||
|
.append("avgCellVoltage", getAvgCellVoltage())
|
||||||
|
.append("avgCellTemp", getAvgCellTemp())
|
||||||
|
.append("maxCellVoltage", getMaxCellVoltage())
|
||||||
|
.append("maxCellVoltageId", getMaxCellVoltageId())
|
||||||
|
.append("minCellVoltage", getMinCellVoltage())
|
||||||
|
.append("minCellVoltageId", getMinCellVoltageId())
|
||||||
|
.append("maxCellTemp", getMaxCellTemp())
|
||||||
|
.append("maxCellTempId", getMaxCellTempId())
|
||||||
|
.append("minCellTemp", getMinCellTemp())
|
||||||
|
.append("minCellTempId", getMinCellTempId())
|
||||||
|
.append("maxCellSoc", getMaxCellSoc())
|
||||||
|
.append("maxCellSocId", getMaxCellSocId())
|
||||||
|
.append("minCellSoc", getMinCellSoc())
|
||||||
|
.append("minCellSocId", getMinCellSocId())
|
||||||
|
.append("maxCellSoh", getMaxCellSoh())
|
||||||
|
.append("maxCellSohId", getMaxCellSohId())
|
||||||
|
.append("minCellSoh", getMinCellSoh())
|
||||||
|
.append("minCellSohId", getMinCellSohId())
|
||||||
|
.append("totalChargeEnergy", getTotalChargeEnergy())
|
||||||
|
.append("totalDischargeEnergy", getTotalDischargeEnergy())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* 单体电池实时数据对象 ems_battery_data
|
* 单体电池实时数据对象 ems_battery_data
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-25
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsBatteryData extends BaseEntity
|
public class EmsBatteryData extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -56,15 +56,15 @@ public class EmsBatteryData extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
/** 簇设备id */
|
/** 簇设备id */
|
||||||
@Excel(name = "簇设备id")
|
@Excel(name = "簇设备id")
|
||||||
private Long clusterDeviceId;
|
private String clusterDeviceId;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
@ -156,32 +156,32 @@ public class EmsBatteryData extends BaseEntity
|
|||||||
return dataTimestamp;
|
return dataTimestamp;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setClusterDeviceId(Long clusterDeviceId)
|
public void setClusterDeviceId(String clusterDeviceId)
|
||||||
{
|
{
|
||||||
this.clusterDeviceId = clusterDeviceId;
|
this.clusterDeviceId = clusterDeviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getClusterDeviceId()
|
public String getClusterDeviceId()
|
||||||
{
|
{
|
||||||
return clusterDeviceId;
|
return clusterDeviceId;
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* 电池堆数据对象 ems_battery_stack
|
* 电池堆数据对象 ems_battery_stack
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-22
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsBatteryStack extends BaseEntity
|
public class EmsBatteryStack extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -74,11 +74,139 @@ public class EmsBatteryStack extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
|
/** 允许充电最大功率 */
|
||||||
|
@Excel(name = "允许充电最大功率")
|
||||||
|
private BigDecimal maxAllowedChargePower;
|
||||||
|
|
||||||
|
/** 允许放电最大功率 */
|
||||||
|
@Excel(name = "允许放电最大功率")
|
||||||
|
private BigDecimal maxAllowedDischargePower;
|
||||||
|
|
||||||
|
/** 允许充电最大电压 */
|
||||||
|
@Excel(name = "允许充电最大电压")
|
||||||
|
private BigDecimal maxAllowedChargeVoltage;
|
||||||
|
|
||||||
|
/** 允许放电最大电压 */
|
||||||
|
@Excel(name = "允许放电最大电压")
|
||||||
|
private BigDecimal maxAllowedDischargeVoltage;
|
||||||
|
|
||||||
|
/** 允许充电最大电流 */
|
||||||
|
@Excel(name = "允许充电最大电流")
|
||||||
|
private BigDecimal maxAllowedChargeCurrent;
|
||||||
|
|
||||||
|
/** 允许放电最大电流 */
|
||||||
|
@Excel(name = "允许放电最大电流")
|
||||||
|
private BigDecimal maxAllowedDischargeCurrent;
|
||||||
|
|
||||||
|
/** 组电压 */
|
||||||
|
@Excel(name = "组电压")
|
||||||
|
private BigDecimal batteryPackVoltage;
|
||||||
|
|
||||||
|
/** 组电流 */
|
||||||
|
@Excel(name = "组电流")
|
||||||
|
private BigDecimal batteryPackCurrent;
|
||||||
|
|
||||||
|
/** 模块温度 */
|
||||||
|
@Excel(name = "模块温度")
|
||||||
|
private BigDecimal batteryPackTemp;
|
||||||
|
|
||||||
|
/** 组SOC */
|
||||||
|
@Excel(name = "组SOC")
|
||||||
|
private BigDecimal batteryPackSoc;
|
||||||
|
|
||||||
|
/** 组SOH */
|
||||||
|
@Excel(name = "组SOH")
|
||||||
|
private BigDecimal batteryPackSoh;
|
||||||
|
|
||||||
|
/** 组绝缘电阻 */
|
||||||
|
@Excel(name = "组绝缘电阻")
|
||||||
|
private BigDecimal batteryPackInsulationResistance;
|
||||||
|
|
||||||
|
/** 平均单体电压 */
|
||||||
|
@Excel(name = "平均单体电压")
|
||||||
|
private BigDecimal avgCellVoltage;
|
||||||
|
|
||||||
|
/** 平均单体温度 */
|
||||||
|
@Excel(name = "平均单体温度")
|
||||||
|
private BigDecimal avgCellTemp;
|
||||||
|
|
||||||
|
/** 最高单体电压 */
|
||||||
|
@Excel(name = "最高单体电压")
|
||||||
|
private BigDecimal maxCellVoltage;
|
||||||
|
|
||||||
|
/** 最高单体电压对应点号 */
|
||||||
|
@Excel(name = "最高单体电压对应点号")
|
||||||
|
private Long maxCellVoltageId;
|
||||||
|
|
||||||
|
/** 最低单体电压 */
|
||||||
|
@Excel(name = "最低单体电压")
|
||||||
|
private BigDecimal minCellVoltage;
|
||||||
|
|
||||||
|
/** 最低单体电压对应点号 */
|
||||||
|
@Excel(name = "最低单体电压对应点号")
|
||||||
|
private Long minCellVoltageId;
|
||||||
|
|
||||||
|
/** 最高单体温度 */
|
||||||
|
@Excel(name = "最高单体温度")
|
||||||
|
private BigDecimal maxCellTemp;
|
||||||
|
|
||||||
|
/** 最高单体温度对应点号 */
|
||||||
|
@Excel(name = "最高单体温度对应点号")
|
||||||
|
private Long maxCellTempId;
|
||||||
|
|
||||||
|
/** 最低单体温度 */
|
||||||
|
@Excel(name = "最低单体温度")
|
||||||
|
private BigDecimal minCellTemp;
|
||||||
|
|
||||||
|
/** 最低单体温度对应点号 */
|
||||||
|
@Excel(name = "最低单体温度对应点号")
|
||||||
|
private Long minCellTempId;
|
||||||
|
|
||||||
|
/** 最高单体SOC */
|
||||||
|
@Excel(name = "最高单体SOC")
|
||||||
|
private BigDecimal maxCellSoc;
|
||||||
|
|
||||||
|
/** 最高单体SOC对应点号 */
|
||||||
|
@Excel(name = "最高单体SOC对应点号")
|
||||||
|
private Long maxCellSocId;
|
||||||
|
|
||||||
|
/** 最低单体SOC */
|
||||||
|
@Excel(name = "最低单体SOC")
|
||||||
|
private BigDecimal minCellSoc;
|
||||||
|
|
||||||
|
/** 最低单体SOC对应点号 */
|
||||||
|
@Excel(name = "最低单体SOC对应点号")
|
||||||
|
private Long minCellSocId;
|
||||||
|
|
||||||
|
/** 最高单体SOH */
|
||||||
|
@Excel(name = "最高单体SOH")
|
||||||
|
private BigDecimal maxCellSoh;
|
||||||
|
|
||||||
|
/** 最高单体SOH对应点号 */
|
||||||
|
@Excel(name = "最高单体SOH对应点号")
|
||||||
|
private Long maxCellSohId;
|
||||||
|
|
||||||
|
/** 最低单体SOH */
|
||||||
|
@Excel(name = "最低单体SOH")
|
||||||
|
private BigDecimal minCellSoh;
|
||||||
|
|
||||||
|
/** 最低单体SOH对应点号 */
|
||||||
|
@Excel(name = "最低单体SOH对应点号")
|
||||||
|
private Long minCellSohId;
|
||||||
|
|
||||||
|
/** 单次累计充电电量 */
|
||||||
|
@Excel(name = "单次累计充电电量")
|
||||||
|
private BigDecimal totalChargeEnergy;
|
||||||
|
|
||||||
|
/** 单次累计放电电量 */
|
||||||
|
@Excel(name = "单次累计放电电量")
|
||||||
|
private BigDecimal totalDischargeEnergy;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
@ -220,26 +348,346 @@ public class EmsBatteryStack extends BaseEntity
|
|||||||
return currentSoc;
|
return currentSoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedChargePower(BigDecimal maxAllowedChargePower)
|
||||||
|
{
|
||||||
|
this.maxAllowedChargePower = maxAllowedChargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedChargePower()
|
||||||
|
{
|
||||||
|
return maxAllowedChargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedDischargePower(BigDecimal maxAllowedDischargePower)
|
||||||
|
{
|
||||||
|
this.maxAllowedDischargePower = maxAllowedDischargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedDischargePower()
|
||||||
|
{
|
||||||
|
return maxAllowedDischargePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedChargeVoltage(BigDecimal maxAllowedChargeVoltage)
|
||||||
|
{
|
||||||
|
this.maxAllowedChargeVoltage = maxAllowedChargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedChargeVoltage()
|
||||||
|
{
|
||||||
|
return maxAllowedChargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedDischargeVoltage(BigDecimal maxAllowedDischargeVoltage)
|
||||||
|
{
|
||||||
|
this.maxAllowedDischargeVoltage = maxAllowedDischargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedDischargeVoltage()
|
||||||
|
{
|
||||||
|
return maxAllowedDischargeVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedChargeCurrent(BigDecimal maxAllowedChargeCurrent)
|
||||||
|
{
|
||||||
|
this.maxAllowedChargeCurrent = maxAllowedChargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedChargeCurrent()
|
||||||
|
{
|
||||||
|
return maxAllowedChargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxAllowedDischargeCurrent(BigDecimal maxAllowedDischargeCurrent)
|
||||||
|
{
|
||||||
|
this.maxAllowedDischargeCurrent = maxAllowedDischargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxAllowedDischargeCurrent()
|
||||||
|
{
|
||||||
|
return maxAllowedDischargeCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackVoltage(BigDecimal batteryPackVoltage)
|
||||||
|
{
|
||||||
|
this.batteryPackVoltage = batteryPackVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackVoltage()
|
||||||
|
{
|
||||||
|
return batteryPackVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackCurrent(BigDecimal batteryPackCurrent)
|
||||||
|
{
|
||||||
|
this.batteryPackCurrent = batteryPackCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackCurrent()
|
||||||
|
{
|
||||||
|
return batteryPackCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackTemp(BigDecimal batteryPackTemp)
|
||||||
|
{
|
||||||
|
this.batteryPackTemp = batteryPackTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackTemp()
|
||||||
|
{
|
||||||
|
return batteryPackTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackSoc(BigDecimal batteryPackSoc)
|
||||||
|
{
|
||||||
|
this.batteryPackSoc = batteryPackSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackSoc()
|
||||||
|
{
|
||||||
|
return batteryPackSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackSoh(BigDecimal batteryPackSoh)
|
||||||
|
{
|
||||||
|
this.batteryPackSoh = batteryPackSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackSoh()
|
||||||
|
{
|
||||||
|
return batteryPackSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryPackInsulationResistance(BigDecimal batteryPackInsulationResistance)
|
||||||
|
{
|
||||||
|
this.batteryPackInsulationResistance = batteryPackInsulationResistance;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getBatteryPackInsulationResistance()
|
||||||
|
{
|
||||||
|
return batteryPackInsulationResistance;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgCellVoltage(BigDecimal avgCellVoltage)
|
||||||
|
{
|
||||||
|
this.avgCellVoltage = avgCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgCellVoltage()
|
||||||
|
{
|
||||||
|
return avgCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgCellTemp(BigDecimal avgCellTemp)
|
||||||
|
{
|
||||||
|
this.avgCellTemp = avgCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgCellTemp()
|
||||||
|
{
|
||||||
|
return avgCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellVoltage(BigDecimal maxCellVoltage)
|
||||||
|
{
|
||||||
|
this.maxCellVoltage = maxCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellVoltage()
|
||||||
|
{
|
||||||
|
return maxCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellVoltageId(Long maxCellVoltageId)
|
||||||
|
{
|
||||||
|
this.maxCellVoltageId = maxCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellVoltageId()
|
||||||
|
{
|
||||||
|
return maxCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellVoltage(BigDecimal minCellVoltage)
|
||||||
|
{
|
||||||
|
this.minCellVoltage = minCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellVoltage()
|
||||||
|
{
|
||||||
|
return minCellVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellVoltageId(Long minCellVoltageId)
|
||||||
|
{
|
||||||
|
this.minCellVoltageId = minCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellVoltageId()
|
||||||
|
{
|
||||||
|
return minCellVoltageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellTemp(BigDecimal maxCellTemp)
|
||||||
|
{
|
||||||
|
this.maxCellTemp = maxCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellTemp()
|
||||||
|
{
|
||||||
|
return maxCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellTempId(Long maxCellTempId)
|
||||||
|
{
|
||||||
|
this.maxCellTempId = maxCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellTempId()
|
||||||
|
{
|
||||||
|
return maxCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellTemp(BigDecimal minCellTemp)
|
||||||
|
{
|
||||||
|
this.minCellTemp = minCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellTemp()
|
||||||
|
{
|
||||||
|
return minCellTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellTempId(Long minCellTempId)
|
||||||
|
{
|
||||||
|
this.minCellTempId = minCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellTempId()
|
||||||
|
{
|
||||||
|
return minCellTempId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSoc(BigDecimal maxCellSoc)
|
||||||
|
{
|
||||||
|
this.maxCellSoc = maxCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellSoc()
|
||||||
|
{
|
||||||
|
return maxCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSocId(Long maxCellSocId)
|
||||||
|
{
|
||||||
|
this.maxCellSocId = maxCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellSocId()
|
||||||
|
{
|
||||||
|
return maxCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSoc(BigDecimal minCellSoc)
|
||||||
|
{
|
||||||
|
this.minCellSoc = minCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellSoc()
|
||||||
|
{
|
||||||
|
return minCellSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSocId(Long minCellSocId)
|
||||||
|
{
|
||||||
|
this.minCellSocId = minCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellSocId()
|
||||||
|
{
|
||||||
|
return minCellSocId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSoh(BigDecimal maxCellSoh)
|
||||||
|
{
|
||||||
|
this.maxCellSoh = maxCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCellSoh()
|
||||||
|
{
|
||||||
|
return maxCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCellSohId(Long maxCellSohId)
|
||||||
|
{
|
||||||
|
this.maxCellSohId = maxCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMaxCellSohId()
|
||||||
|
{
|
||||||
|
return maxCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSoh(BigDecimal minCellSoh)
|
||||||
|
{
|
||||||
|
this.minCellSoh = minCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinCellSoh()
|
||||||
|
{
|
||||||
|
return minCellSoh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinCellSohId(Long minCellSohId)
|
||||||
|
{
|
||||||
|
this.minCellSohId = minCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getMinCellSohId()
|
||||||
|
{
|
||||||
|
return minCellSohId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalChargeEnergy(BigDecimal totalChargeEnergy)
|
||||||
|
{
|
||||||
|
this.totalChargeEnergy = totalChargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalChargeEnergy()
|
||||||
|
{
|
||||||
|
return totalChargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalDischargeEnergy(BigDecimal totalDischargeEnergy)
|
||||||
|
{
|
||||||
|
this.totalDischargeEnergy = totalDischargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalDischargeEnergy()
|
||||||
|
{
|
||||||
|
return totalDischargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
@ -264,6 +712,38 @@ public class EmsBatteryStack extends BaseEntity
|
|||||||
.append("remark", getRemark())
|
.append("remark", getRemark())
|
||||||
.append("siteId", getSiteId())
|
.append("siteId", getSiteId())
|
||||||
.append("deviceId", getDeviceId())
|
.append("deviceId", getDeviceId())
|
||||||
|
.append("maxAllowedChargePower", getMaxAllowedChargePower())
|
||||||
|
.append("maxAllowedDischargePower", getMaxAllowedDischargePower())
|
||||||
|
.append("maxAllowedChargeVoltage", getMaxAllowedChargeVoltage())
|
||||||
|
.append("maxAllowedDischargeVoltage", getMaxAllowedDischargeVoltage())
|
||||||
|
.append("maxAllowedChargeCurrent", getMaxAllowedChargeCurrent())
|
||||||
|
.append("maxAllowedDischargeCurrent", getMaxAllowedDischargeCurrent())
|
||||||
|
.append("batteryPackVoltage", getBatteryPackVoltage())
|
||||||
|
.append("batteryPackCurrent", getBatteryPackCurrent())
|
||||||
|
.append("batteryPackTemp", getBatteryPackTemp())
|
||||||
|
.append("batteryPackSoc", getBatteryPackSoc())
|
||||||
|
.append("batteryPackSoh", getBatteryPackSoh())
|
||||||
|
.append("batteryPackInsulationResistance", getBatteryPackInsulationResistance())
|
||||||
|
.append("avgCellVoltage", getAvgCellVoltage())
|
||||||
|
.append("avgCellTemp", getAvgCellTemp())
|
||||||
|
.append("maxCellVoltage", getMaxCellVoltage())
|
||||||
|
.append("maxCellVoltageId", getMaxCellVoltageId())
|
||||||
|
.append("minCellVoltage", getMinCellVoltage())
|
||||||
|
.append("minCellVoltageId", getMinCellVoltageId())
|
||||||
|
.append("maxCellTemp", getMaxCellTemp())
|
||||||
|
.append("maxCellTempId", getMaxCellTempId())
|
||||||
|
.append("minCellTemp", getMinCellTemp())
|
||||||
|
.append("minCellTempId", getMinCellTempId())
|
||||||
|
.append("maxCellSoc", getMaxCellSoc())
|
||||||
|
.append("maxCellSocId", getMaxCellSocId())
|
||||||
|
.append("minCellSoc", getMinCellSoc())
|
||||||
|
.append("minCellSocId", getMinCellSocId())
|
||||||
|
.append("maxCellSoh", getMaxCellSoh())
|
||||||
|
.append("maxCellSohId", getMaxCellSohId())
|
||||||
|
.append("minCellSoh", getMinCellSoh())
|
||||||
|
.append("minCellSohId", getMinCellSohId())
|
||||||
|
.append("totalChargeEnergy", getTotalChargeEnergy())
|
||||||
|
.append("totalDischargeEnergy", getTotalDischargeEnergy())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,13 +11,13 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* 冷却系统参数对象 ems_cooling_data
|
* 冷却系统参数对象 ems_cooling_data
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-25
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsCoolingData extends BaseEntity
|
public class EmsCoolingData extends BaseEntity
|
||||||
{
|
{
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/** $column.columnComment */
|
/** */
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/** 系统名称,如1#液冷 */
|
/** 系统名称,如1#液冷 */
|
||||||
@ -58,11 +58,11 @@ public class EmsCoolingData extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
@ -164,22 +164,22 @@ public class EmsCoolingData extends BaseEntity
|
|||||||
return lowTempAlarmPoint;
|
return lowTempAlarmPoint;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* Modbus设备配置对象 ems_devices_setting
|
* Modbus设备配置对象 ems_devices_setting
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-24
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsDevicesSetting extends BaseEntity
|
public class EmsDevicesSetting extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -84,12 +84,16 @@ public class EmsDevicesSetting extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 通信状态 */
|
/** 通信状态 */
|
||||||
@Excel(name = "通信状态")
|
@Excel(name = "通信状态")
|
||||||
private String communicationStatus;
|
private String communicationStatus;
|
||||||
|
|
||||||
|
/** 设备唯一标识符 */
|
||||||
|
@Excel(name = "设备唯一标识符")
|
||||||
|
private String deviceId;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
this.id = id;
|
this.id = id;
|
||||||
@ -250,12 +254,12 @@ public class EmsDevicesSetting extends BaseEntity
|
|||||||
return updatedAt;
|
return updatedAt;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
@ -270,6 +274,16 @@ public class EmsDevicesSetting extends BaseEntity
|
|||||||
return communicationStatus;
|
return communicationStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setDeviceId(String deviceId)
|
||||||
|
{
|
||||||
|
this.deviceId = deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDeviceId()
|
||||||
|
{
|
||||||
|
return deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
@ -291,6 +305,7 @@ public class EmsDevicesSetting extends BaseEntity
|
|||||||
.append("updatedAt", getUpdatedAt())
|
.append("updatedAt", getUpdatedAt())
|
||||||
.append("siteId", getSiteId())
|
.append("siteId", getSiteId())
|
||||||
.append("communicationStatus", getCommunicationStatus())
|
.append("communicationStatus", getCommunicationStatus())
|
||||||
|
.append("deviceId", getDeviceId())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,71 @@
|
|||||||
|
package com.xzzn.ems.domain;
|
||||||
|
|
||||||
|
import com.xzzn.common.core.domain.BaseEntity;
|
||||||
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||||
|
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||||
|
import com.xzzn.common.annotation.Excel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 【请填写功能名称】对象 ems_mqtt_message
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
public class EmsMqttMessage extends BaseEntity
|
||||||
|
{
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 主键 */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** $column.columnComment */
|
||||||
|
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
|
||||||
|
private String mqttTopic;
|
||||||
|
|
||||||
|
/** $column.columnComment */
|
||||||
|
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
|
||||||
|
private String mqttMessage;
|
||||||
|
|
||||||
|
public void setId(Long id)
|
||||||
|
{
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId()
|
||||||
|
{
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMqttTopic(String mqttTopic)
|
||||||
|
{
|
||||||
|
this.mqttTopic = mqttTopic;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMqttTopic()
|
||||||
|
{
|
||||||
|
return mqttTopic;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMqttMessage(String mqttMessage)
|
||||||
|
{
|
||||||
|
this.mqttMessage = mqttMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMqttMessage()
|
||||||
|
{
|
||||||
|
return mqttMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
.append("id", getId())
|
||||||
|
.append("mqttTopic", getMqttTopic())
|
||||||
|
.append("mqttMessage", getMqttMessage())
|
||||||
|
.append("createBy", getCreateBy())
|
||||||
|
.append("createTime", getCreateTime())
|
||||||
|
.append("updateBy", getUpdateBy())
|
||||||
|
.append("updateTime", getUpdateTime())
|
||||||
|
.toString();
|
||||||
|
}
|
||||||
|
}
|
@ -11,13 +11,13 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* pcs支路数据对象 ems_pcs_branch_data
|
* pcs支路数据对象 ems_pcs_branch_data
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-24
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsPcsBranchData extends BaseEntity
|
public class EmsPcsBranchData extends BaseEntity
|
||||||
{
|
{
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/** $column.columnComment */
|
/** */
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/** 放电状态 */
|
/** 放电状态 */
|
||||||
@ -38,16 +38,96 @@ public class EmsPcsBranchData extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
/** 支路id */
|
/** 支路id */
|
||||||
@Excel(name = "支路id")
|
@Excel(name = "支路id")
|
||||||
private Long branchId;
|
private Long branchId;
|
||||||
|
|
||||||
|
/** 电网U相电压 */
|
||||||
|
@Excel(name = "电网U相电压")
|
||||||
|
private BigDecimal gridUVoltage;
|
||||||
|
|
||||||
|
/** 电网V相电压 */
|
||||||
|
@Excel(name = "电网V相电压")
|
||||||
|
private BigDecimal gridVVoltage;
|
||||||
|
|
||||||
|
/** 电网W相电压 */
|
||||||
|
@Excel(name = "电网W相电压")
|
||||||
|
private BigDecimal gridWVoltage;
|
||||||
|
|
||||||
|
/** 输出U相电流 */
|
||||||
|
@Excel(name = "输出U相电流")
|
||||||
|
private BigDecimal outputUCurrent;
|
||||||
|
|
||||||
|
/** 输出V相电流 */
|
||||||
|
@Excel(name = "输出V相电流")
|
||||||
|
private BigDecimal outputVCurrent;
|
||||||
|
|
||||||
|
/** 输出W相电流 */
|
||||||
|
@Excel(name = "输出W相电流")
|
||||||
|
private BigDecimal outputWCurrent;
|
||||||
|
|
||||||
|
/** 视在功率 */
|
||||||
|
@Excel(name = "视在功率")
|
||||||
|
private BigDecimal apparentPower;
|
||||||
|
|
||||||
|
/** 有功功率 */
|
||||||
|
@Excel(name = "有功功率")
|
||||||
|
private BigDecimal activePower;
|
||||||
|
|
||||||
|
/** 无功功率 */
|
||||||
|
@Excel(name = "无功功率")
|
||||||
|
private BigDecimal reactivePower;
|
||||||
|
|
||||||
|
/** 功率因数 */
|
||||||
|
@Excel(name = "功率因数")
|
||||||
|
private BigDecimal powerFactor;
|
||||||
|
|
||||||
|
/** 频率 */
|
||||||
|
@Excel(name = "频率")
|
||||||
|
private BigDecimal frequency;
|
||||||
|
|
||||||
|
/** 内部温度 */
|
||||||
|
@Excel(name = "内部温度")
|
||||||
|
private BigDecimal internalTemp;
|
||||||
|
|
||||||
|
/** U相IGBT温度 */
|
||||||
|
@Excel(name = "U相IGBT温度")
|
||||||
|
private BigDecimal uIgbtTemp;
|
||||||
|
|
||||||
|
/** V相IGBT温度 */
|
||||||
|
@Excel(name = "V相IGBT温度")
|
||||||
|
private BigDecimal vIgbtTemp;
|
||||||
|
|
||||||
|
/** W相IGBT温度 */
|
||||||
|
@Excel(name = "W相IGBT温度")
|
||||||
|
private BigDecimal wIgbtTemp;
|
||||||
|
|
||||||
|
/** 并离网状态 */
|
||||||
|
@Excel(name = "并离网状态")
|
||||||
|
private String gridStatus;
|
||||||
|
|
||||||
|
/** 可用功率 */
|
||||||
|
@Excel(name = "可用功率")
|
||||||
|
private BigDecimal availablePower;
|
||||||
|
|
||||||
|
/** 总负载比 */
|
||||||
|
@Excel(name = "总负载比")
|
||||||
|
private BigDecimal totalLoadRatio;
|
||||||
|
|
||||||
|
/** 交流漏电流 */
|
||||||
|
@Excel(name = "交流漏电流")
|
||||||
|
private BigDecimal acLeakageCurrent;
|
||||||
|
|
||||||
|
/** 绝缘阻抗 */
|
||||||
|
@Excel(name = "绝缘阻抗")
|
||||||
|
private BigDecimal insulationResistance;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
this.id = id;
|
this.id = id;
|
||||||
@ -98,22 +178,22 @@ public class EmsPcsBranchData extends BaseEntity
|
|||||||
return dcCurrent;
|
return dcCurrent;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
@ -128,6 +208,206 @@ public class EmsPcsBranchData extends BaseEntity
|
|||||||
return branchId;
|
return branchId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setGridUVoltage(BigDecimal gridUVoltage)
|
||||||
|
{
|
||||||
|
this.gridUVoltage = gridUVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getGridUVoltage()
|
||||||
|
{
|
||||||
|
return gridUVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGridVVoltage(BigDecimal gridVVoltage)
|
||||||
|
{
|
||||||
|
this.gridVVoltage = gridVVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getGridVVoltage()
|
||||||
|
{
|
||||||
|
return gridVVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGridWVoltage(BigDecimal gridWVoltage)
|
||||||
|
{
|
||||||
|
this.gridWVoltage = gridWVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getGridWVoltage()
|
||||||
|
{
|
||||||
|
return gridWVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOutputUCurrent(BigDecimal outputUCurrent)
|
||||||
|
{
|
||||||
|
this.outputUCurrent = outputUCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getOutputUCurrent()
|
||||||
|
{
|
||||||
|
return outputUCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOutputVCurrent(BigDecimal outputVCurrent)
|
||||||
|
{
|
||||||
|
this.outputVCurrent = outputVCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getOutputVCurrent()
|
||||||
|
{
|
||||||
|
return outputVCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOutputWCurrent(BigDecimal outputWCurrent)
|
||||||
|
{
|
||||||
|
this.outputWCurrent = outputWCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getOutputWCurrent()
|
||||||
|
{
|
||||||
|
return outputWCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApparentPower(BigDecimal apparentPower)
|
||||||
|
{
|
||||||
|
this.apparentPower = apparentPower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getApparentPower()
|
||||||
|
{
|
||||||
|
return apparentPower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActivePower(BigDecimal activePower)
|
||||||
|
{
|
||||||
|
this.activePower = activePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getActivePower()
|
||||||
|
{
|
||||||
|
return activePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setReactivePower(BigDecimal reactivePower)
|
||||||
|
{
|
||||||
|
this.reactivePower = reactivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getReactivePower()
|
||||||
|
{
|
||||||
|
return reactivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPowerFactor(BigDecimal powerFactor)
|
||||||
|
{
|
||||||
|
this.powerFactor = powerFactor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getPowerFactor()
|
||||||
|
{
|
||||||
|
return powerFactor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFrequency(BigDecimal frequency)
|
||||||
|
{
|
||||||
|
this.frequency = frequency;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getFrequency()
|
||||||
|
{
|
||||||
|
return frequency;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInternalTemp(BigDecimal internalTemp)
|
||||||
|
{
|
||||||
|
this.internalTemp = internalTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getInternalTemp()
|
||||||
|
{
|
||||||
|
return internalTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setuIgbtTemp(BigDecimal uIgbtTemp)
|
||||||
|
{
|
||||||
|
this.uIgbtTemp = uIgbtTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getuIgbtTemp()
|
||||||
|
{
|
||||||
|
return uIgbtTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setvIgbtTemp(BigDecimal vIgbtTemp)
|
||||||
|
{
|
||||||
|
this.vIgbtTemp = vIgbtTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getvIgbtTemp()
|
||||||
|
{
|
||||||
|
return vIgbtTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setwIgbtTemp(BigDecimal wIgbtTemp)
|
||||||
|
{
|
||||||
|
this.wIgbtTemp = wIgbtTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getwIgbtTemp()
|
||||||
|
{
|
||||||
|
return wIgbtTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGridStatus(String gridStatus)
|
||||||
|
{
|
||||||
|
this.gridStatus = gridStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGridStatus()
|
||||||
|
{
|
||||||
|
return gridStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvailablePower(BigDecimal availablePower)
|
||||||
|
{
|
||||||
|
this.availablePower = availablePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvailablePower()
|
||||||
|
{
|
||||||
|
return availablePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalLoadRatio(BigDecimal totalLoadRatio)
|
||||||
|
{
|
||||||
|
this.totalLoadRatio = totalLoadRatio;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalLoadRatio()
|
||||||
|
{
|
||||||
|
return totalLoadRatio;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAcLeakageCurrent(BigDecimal acLeakageCurrent)
|
||||||
|
{
|
||||||
|
this.acLeakageCurrent = acLeakageCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAcLeakageCurrent()
|
||||||
|
{
|
||||||
|
return acLeakageCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInsulationResistance(BigDecimal insulationResistance)
|
||||||
|
{
|
||||||
|
this.insulationResistance = insulationResistance;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getInsulationResistance()
|
||||||
|
{
|
||||||
|
return insulationResistance;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
@ -144,6 +424,26 @@ public class EmsPcsBranchData extends BaseEntity
|
|||||||
.append("siteId", getSiteId())
|
.append("siteId", getSiteId())
|
||||||
.append("deviceId", getDeviceId())
|
.append("deviceId", getDeviceId())
|
||||||
.append("branchId", getBranchId())
|
.append("branchId", getBranchId())
|
||||||
|
.append("gridUVoltage", getGridUVoltage())
|
||||||
|
.append("gridVVoltage", getGridVVoltage())
|
||||||
|
.append("gridWVoltage", getGridWVoltage())
|
||||||
|
.append("outputUCurrent", getOutputUCurrent())
|
||||||
|
.append("outputVCurrent", getOutputVCurrent())
|
||||||
|
.append("outputWCurrent", getOutputWCurrent())
|
||||||
|
.append("apparentPower", getApparentPower())
|
||||||
|
.append("activePower", getActivePower())
|
||||||
|
.append("reactivePower", getReactivePower())
|
||||||
|
.append("powerFactor", getPowerFactor())
|
||||||
|
.append("frequency", getFrequency())
|
||||||
|
.append("internalTemp", getInternalTemp())
|
||||||
|
.append("uIgbtTemp", getuIgbtTemp())
|
||||||
|
.append("vIgbtTemp", getvIgbtTemp())
|
||||||
|
.append("wIgbtTemp", getwIgbtTemp())
|
||||||
|
.append("gridStatus", getGridStatus())
|
||||||
|
.append("availablePower", getAvailablePower())
|
||||||
|
.append("totalLoadRatio", getTotalLoadRatio())
|
||||||
|
.append("acLeakageCurrent", getAcLeakageCurrent())
|
||||||
|
.append("insulationResistance", getInsulationResistance())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* PCS数据对象 ems_pcs_data
|
* PCS数据对象 ems_pcs_data
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-17
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsPcsData extends BaseEntity
|
public class EmsPcsData extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -22,7 +22,7 @@ public class EmsPcsData extends BaseEntity
|
|||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/** 数据更新时间 */
|
/** 数据更新时间 */
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
@Excel(name = "数据更新时间", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "数据更新时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date dataUpdateTime;
|
private Date dataUpdateTime;
|
||||||
|
|
||||||
@ -124,19 +124,71 @@ public class EmsPcsData extends BaseEntity
|
|||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
@Excel(name = "站点id")
|
@Excel(name = "站点id")
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
@Excel(name = "设备唯一标识符")
|
@Excel(name = "设备唯一标识符")
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
/** 月 */
|
/** 月 */
|
||||||
@Excel(name = "月")
|
@Excel(name = "月")
|
||||||
private int dateMonth;
|
private Long dateMonth;
|
||||||
|
|
||||||
/** 日 */
|
/** 日 */
|
||||||
@Excel(name = "日")
|
@Excel(name = "日")
|
||||||
private int dateDay;
|
private Long dateDay;
|
||||||
|
|
||||||
|
/** 总交流充电量 (kWh) */
|
||||||
|
@Excel(name = "总交流充电量 (kWh)")
|
||||||
|
private BigDecimal totalAcChargeEnergy;
|
||||||
|
|
||||||
|
/** 总交流放电量 (kWh) */
|
||||||
|
@Excel(name = "总交流放电量 (kWh)")
|
||||||
|
private BigDecimal totalAcDischargeEnergy;
|
||||||
|
|
||||||
|
/** 交流侧充电有功功率 */
|
||||||
|
@Excel(name = "交流侧充电有功功率")
|
||||||
|
private BigDecimal acChargeActivePower;
|
||||||
|
|
||||||
|
/** 交流侧容性无功功率 */
|
||||||
|
@Excel(name = "交流侧容性无功功率")
|
||||||
|
private BigDecimal acCapacitiveReactivePower;
|
||||||
|
|
||||||
|
/** 交流侧放电有功功率 */
|
||||||
|
@Excel(name = "交流侧放电有功功率")
|
||||||
|
private BigDecimal acDischargeActivePower;
|
||||||
|
|
||||||
|
/** 交流侧感性无功功率 */
|
||||||
|
@Excel(name = "交流侧感性无功功率")
|
||||||
|
private BigDecimal acInductiveReactivePower;
|
||||||
|
|
||||||
|
/** 最大容性无功能力 */
|
||||||
|
@Excel(name = "最大容性无功能力")
|
||||||
|
private BigDecimal maxCapacitivePowerCapacity;
|
||||||
|
|
||||||
|
/** 最大感性无功能力 */
|
||||||
|
@Excel(name = "最大感性无功能力")
|
||||||
|
private BigDecimal maxInductivePowerCapacity;
|
||||||
|
|
||||||
|
/** 最大可冲功率 */
|
||||||
|
@Excel(name = "最大可冲功率")
|
||||||
|
private BigDecimal maxChargePowerCapacity;
|
||||||
|
|
||||||
|
/** 最大可放功率 */
|
||||||
|
@Excel(name = "最大可放功率")
|
||||||
|
private BigDecimal maxDischargePowerCapacity;
|
||||||
|
|
||||||
|
/** 交流开关状态 */
|
||||||
|
@Excel(name = "交流开关状态")
|
||||||
|
private String acSwitchStatus;
|
||||||
|
|
||||||
|
/** 直流开关状态 */
|
||||||
|
@Excel(name = "直流开关状态")
|
||||||
|
private String dcSwitchStatus;
|
||||||
|
|
||||||
|
/** 远程投退状态 */
|
||||||
|
@Excel(name = "远程投退状态")
|
||||||
|
private String remoteControlStatus;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
@ -398,40 +450,174 @@ public class EmsPcsData extends BaseEntity
|
|||||||
return dcCurrent;
|
return dcCurrent;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId)
|
public void setSiteId(String siteId)
|
||||||
{
|
{
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId()
|
public String getSiteId()
|
||||||
{
|
{
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId)
|
public void setDeviceId(String deviceId)
|
||||||
{
|
{
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId()
|
public String getDeviceId()
|
||||||
{
|
{
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getDateMonth() {
|
public void setDateMonth(Long dateMonth)
|
||||||
return dateMonth;
|
{
|
||||||
}
|
|
||||||
|
|
||||||
public void setDateMonth(int dateMonth) {
|
|
||||||
this.dateMonth = dateMonth;
|
this.dateMonth = dateMonth;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getDateDay() {
|
public Long getDateMonth()
|
||||||
|
{
|
||||||
|
return dateMonth;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDateDay(Long dateDay)
|
||||||
|
{
|
||||||
|
this.dateDay = dateDay;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getDateDay()
|
||||||
|
{
|
||||||
return dateDay;
|
return dateDay;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDateDay(int dateDay) {
|
public void setTotalAcChargeEnergy(BigDecimal totalAcChargeEnergy)
|
||||||
this.dateDay = dateDay;
|
{
|
||||||
|
this.totalAcChargeEnergy = totalAcChargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalAcChargeEnergy()
|
||||||
|
{
|
||||||
|
return totalAcChargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalAcDischargeEnergy(BigDecimal totalAcDischargeEnergy)
|
||||||
|
{
|
||||||
|
this.totalAcDischargeEnergy = totalAcDischargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalAcDischargeEnergy()
|
||||||
|
{
|
||||||
|
return totalAcDischargeEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAcChargeActivePower(BigDecimal acChargeActivePower)
|
||||||
|
{
|
||||||
|
this.acChargeActivePower = acChargeActivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAcChargeActivePower()
|
||||||
|
{
|
||||||
|
return acChargeActivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAcCapacitiveReactivePower(BigDecimal acCapacitiveReactivePower)
|
||||||
|
{
|
||||||
|
this.acCapacitiveReactivePower = acCapacitiveReactivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAcCapacitiveReactivePower()
|
||||||
|
{
|
||||||
|
return acCapacitiveReactivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAcDischargeActivePower(BigDecimal acDischargeActivePower)
|
||||||
|
{
|
||||||
|
this.acDischargeActivePower = acDischargeActivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAcDischargeActivePower()
|
||||||
|
{
|
||||||
|
return acDischargeActivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAcInductiveReactivePower(BigDecimal acInductiveReactivePower)
|
||||||
|
{
|
||||||
|
this.acInductiveReactivePower = acInductiveReactivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAcInductiveReactivePower()
|
||||||
|
{
|
||||||
|
return acInductiveReactivePower;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxCapacitivePowerCapacity(BigDecimal maxCapacitivePowerCapacity)
|
||||||
|
{
|
||||||
|
this.maxCapacitivePowerCapacity = maxCapacitivePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxCapacitivePowerCapacity()
|
||||||
|
{
|
||||||
|
return maxCapacitivePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxInductivePowerCapacity(BigDecimal maxInductivePowerCapacity)
|
||||||
|
{
|
||||||
|
this.maxInductivePowerCapacity = maxInductivePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxInductivePowerCapacity()
|
||||||
|
{
|
||||||
|
return maxInductivePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxChargePowerCapacity(BigDecimal maxChargePowerCapacity)
|
||||||
|
{
|
||||||
|
this.maxChargePowerCapacity = maxChargePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxChargePowerCapacity()
|
||||||
|
{
|
||||||
|
return maxChargePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxDischargePowerCapacity(BigDecimal maxDischargePowerCapacity)
|
||||||
|
{
|
||||||
|
this.maxDischargePowerCapacity = maxDischargePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxDischargePowerCapacity()
|
||||||
|
{
|
||||||
|
return maxDischargePowerCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAcSwitchStatus(String acSwitchStatus)
|
||||||
|
{
|
||||||
|
this.acSwitchStatus = acSwitchStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAcSwitchStatus()
|
||||||
|
{
|
||||||
|
return acSwitchStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDcSwitchStatus(String dcSwitchStatus)
|
||||||
|
{
|
||||||
|
this.dcSwitchStatus = dcSwitchStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDcSwitchStatus()
|
||||||
|
{
|
||||||
|
return dcSwitchStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRemoteControlStatus(String remoteControlStatus)
|
||||||
|
{
|
||||||
|
this.remoteControlStatus = remoteControlStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRemoteControlStatus()
|
||||||
|
{
|
||||||
|
return remoteControlStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -472,7 +658,19 @@ public class EmsPcsData extends BaseEntity
|
|||||||
.append("deviceId", getDeviceId())
|
.append("deviceId", getDeviceId())
|
||||||
.append("dateMonth", getDateMonth())
|
.append("dateMonth", getDateMonth())
|
||||||
.append("dateDay", getDateDay())
|
.append("dateDay", getDateDay())
|
||||||
|
.append("totalAcChargeEnergy", getTotalAcChargeEnergy())
|
||||||
|
.append("totalAcDischargeEnergy", getTotalAcDischargeEnergy())
|
||||||
|
.append("acChargeActivePower", getAcChargeActivePower())
|
||||||
|
.append("acCapacitiveReactivePower", getAcCapacitiveReactivePower())
|
||||||
|
.append("acDischargeActivePower", getAcDischargeActivePower())
|
||||||
|
.append("acInductiveReactivePower", getAcInductiveReactivePower())
|
||||||
|
.append("maxCapacitivePowerCapacity", getMaxCapacitivePowerCapacity())
|
||||||
|
.append("maxInductivePowerCapacity", getMaxInductivePowerCapacity())
|
||||||
|
.append("maxChargePowerCapacity", getMaxChargePowerCapacity())
|
||||||
|
.append("maxDischargePowerCapacity", getMaxDischargePowerCapacity())
|
||||||
|
.append("acSwitchStatus", getAcSwitchStatus())
|
||||||
|
.append("dcSwitchStatus", getDcSwitchStatus())
|
||||||
|
.append("remoteControlStatus", getRemoteControlStatus())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ import com.xzzn.common.annotation.Excel;
|
|||||||
* 站点对象 ems_site_setting
|
* 站点对象 ems_site_setting
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-20
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public class EmsSiteSetting extends BaseEntity
|
public class EmsSiteSetting extends BaseEntity
|
||||||
{
|
{
|
||||||
@ -50,6 +50,10 @@ public class EmsSiteSetting extends BaseEntity
|
|||||||
@Excel(name = "装机功率")
|
@Excel(name = "装机功率")
|
||||||
private BigDecimal installPower;
|
private BigDecimal installPower;
|
||||||
|
|
||||||
|
/** 站点id */
|
||||||
|
@Excel(name = "站点id")
|
||||||
|
private String siteId;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
this.id = id;
|
this.id = id;
|
||||||
@ -130,6 +134,16 @@ public class EmsSiteSetting extends BaseEntity
|
|||||||
return installPower;
|
return installPower;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setSiteId(String siteId)
|
||||||
|
{
|
||||||
|
this.siteId = siteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSiteId()
|
||||||
|
{
|
||||||
|
return siteId;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
@ -146,6 +160,7 @@ public class EmsSiteSetting extends BaseEntity
|
|||||||
.append("updateBy", getUpdateBy())
|
.append("updateBy", getUpdateBy())
|
||||||
.append("createTime", getCreateTime())
|
.append("createTime", getCreateTime())
|
||||||
.append("updateTime", getUpdateTime())
|
.append("updateTime", getUpdateTime())
|
||||||
|
.append("siteId", getSiteId())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,65 @@
|
|||||||
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单站监控-故障告警请求
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class AlarmRecordListRequestVo {
|
||||||
|
/** 站点id */
|
||||||
|
private String siteId;
|
||||||
|
|
||||||
|
/** 设备类型 */
|
||||||
|
private String deviceType;
|
||||||
|
|
||||||
|
/** 告警等级 */
|
||||||
|
private String alarmLevel;
|
||||||
|
|
||||||
|
/** 告警发生时间 */
|
||||||
|
private String alarmStartTime;
|
||||||
|
|
||||||
|
/** 告警结束时间 */
|
||||||
|
private String alarmEndTime;
|
||||||
|
|
||||||
|
public String getSiteId() {
|
||||||
|
return siteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSiteId(String siteId) {
|
||||||
|
this.siteId = siteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDeviceType() {
|
||||||
|
return deviceType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceType(String deviceType) {
|
||||||
|
this.deviceType = deviceType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAlarmLevel() {
|
||||||
|
return alarmLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmLevel(String alarmLevel) {
|
||||||
|
this.alarmLevel = alarmLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAlarmStartTime() {
|
||||||
|
return alarmStartTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmStartTime(String alarmStartTime) {
|
||||||
|
this.alarmStartTime = alarmStartTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAlarmEndTime() {
|
||||||
|
return alarmEndTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmEndTime(String alarmEndTime) {
|
||||||
|
this.alarmEndTime = alarmEndTime;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
|
|
||||||
|
import com.xzzn.common.annotation.Excel;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单站监控-故障告警返回
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class AlarmRecordListResponseVo {
|
||||||
|
/** 设备名称 */
|
||||||
|
private String deviceName;
|
||||||
|
|
||||||
|
/** 告警等级 */
|
||||||
|
private String alarmLevel;
|
||||||
|
|
||||||
|
/** 告警内容 */
|
||||||
|
private String alarmContent;
|
||||||
|
|
||||||
|
/** 告警发生时间 */
|
||||||
|
private Date alarmStartTime;
|
||||||
|
|
||||||
|
/** 告警结束时间 */
|
||||||
|
private Date alarmEndTime;
|
||||||
|
|
||||||
|
/** 状态 */
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
public String getDeviceName() {
|
||||||
|
return deviceName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceName(String deviceName) {
|
||||||
|
this.deviceName = deviceName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAlarmLevel() {
|
||||||
|
return alarmLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmLevel(String alarmLevel) {
|
||||||
|
this.alarmLevel = alarmLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAlarmContent() {
|
||||||
|
return alarmContent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmContent(String alarmContent) {
|
||||||
|
this.alarmContent = alarmContent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getAlarmStartTime() {
|
||||||
|
return alarmStartTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmStartTime(Date alarmStartTime) {
|
||||||
|
this.alarmStartTime = alarmStartTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getAlarmEndTime() {
|
||||||
|
return alarmEndTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAlarmEndTime(Date alarmEndTime) {
|
||||||
|
this.alarmEndTime = alarmEndTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStatus(String status) {
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,98 @@
|
|||||||
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电表详细数据
|
||||||
|
*/
|
||||||
|
public class AmmeterDataDetailInfo
|
||||||
|
{
|
||||||
|
/** 类别 */
|
||||||
|
private String category;
|
||||||
|
|
||||||
|
/** 总 (kWh) */
|
||||||
|
private BigDecimal totalKwh;
|
||||||
|
|
||||||
|
/** 尖 (kWh) */
|
||||||
|
private BigDecimal sharpKwh;
|
||||||
|
|
||||||
|
/** 峰 (kWh) */
|
||||||
|
private BigDecimal peakKwh;
|
||||||
|
|
||||||
|
/** 平 (kWh) */
|
||||||
|
private BigDecimal flatKwh;
|
||||||
|
|
||||||
|
/** 谷 (kWh) */
|
||||||
|
private BigDecimal valleyKwh;
|
||||||
|
|
||||||
|
/** 总表设备Id */
|
||||||
|
private String deviceId;
|
||||||
|
|
||||||
|
/** 数据更新时间 */
|
||||||
|
private Date updateTime;
|
||||||
|
|
||||||
|
public BigDecimal getValleyKwh() {
|
||||||
|
return valleyKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValleyKwh(BigDecimal valleyKwh) {
|
||||||
|
this.valleyKwh = valleyKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getFlatKwh() {
|
||||||
|
return flatKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFlatKwh(BigDecimal flatKwh) {
|
||||||
|
this.flatKwh = flatKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getPeakKwh() {
|
||||||
|
return peakKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPeakKwh(BigDecimal peakKwh) {
|
||||||
|
this.peakKwh = peakKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getSharpKwh() {
|
||||||
|
return sharpKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSharpKwh(BigDecimal sharpKwh) {
|
||||||
|
this.sharpKwh = sharpKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTotalKwh() {
|
||||||
|
return totalKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalKwh(BigDecimal totalKwh) {
|
||||||
|
this.totalKwh = totalKwh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCategory() {
|
||||||
|
return category;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategory(String category) {
|
||||||
|
this.category = category;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDeviceId() {
|
||||||
|
return deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceId(String deviceId) {
|
||||||
|
this.deviceId = deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getUpdateTime() {
|
||||||
|
return updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateTime(Date updateTime) {
|
||||||
|
this.updateTime = updateTime;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电表数据
|
||||||
|
*/
|
||||||
|
public class AmmeterDataVo {
|
||||||
|
|
||||||
|
/** 电表名称 */
|
||||||
|
private String deviceName;
|
||||||
|
|
||||||
|
/** 通信状态 */
|
||||||
|
private String emsCommunicationStatus;
|
||||||
|
|
||||||
|
/** 数据更新时间 */
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date dataUpdateTime;
|
||||||
|
|
||||||
|
private List<AmmeterDataDetailInfo> ammeterDataDetailInfos;
|
||||||
|
|
||||||
|
public String getDeviceName() {
|
||||||
|
return deviceName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceName(String deviceName) {
|
||||||
|
this.deviceName = deviceName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmsCommunicationStatus() {
|
||||||
|
return emsCommunicationStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmsCommunicationStatus(String emsCommunicationStatus) {
|
||||||
|
this.emsCommunicationStatus = emsCommunicationStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getDataUpdateTime() {
|
||||||
|
return dataUpdateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDataUpdateTime(Date dataUpdateTime) {
|
||||||
|
this.dataUpdateTime = dataUpdateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<AmmeterDataDetailInfo> getAmmeterDataDetailInfos() {
|
||||||
|
return ammeterDataDetailInfos;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAmmeterDataDetailInfos(List<AmmeterDataDetailInfo> ammeterDataDetailInfos) {
|
||||||
|
this.ammeterDataDetailInfos = ammeterDataDetailInfos;
|
||||||
|
}
|
||||||
|
}
|
@ -18,13 +18,13 @@ public class BMSBatteryClusterDataList {
|
|||||||
private BigDecimal minData;
|
private BigDecimal minData;
|
||||||
|
|
||||||
/** 单体最小值ID */
|
/** 单体最小值ID */
|
||||||
private Long minDataID;
|
private String minDataID;
|
||||||
|
|
||||||
/** 单体最大值 */
|
/** 单体最大值 */
|
||||||
private BigDecimal maxData;
|
private BigDecimal maxData;
|
||||||
|
|
||||||
/** 单体最大值ID */
|
/** 单体最大值ID */
|
||||||
private Long maxDataID;
|
private String maxDataID;
|
||||||
|
|
||||||
public String getDataName() {
|
public String getDataName() {
|
||||||
return dataName;
|
return dataName;
|
||||||
@ -50,11 +50,11 @@ public class BMSBatteryClusterDataList {
|
|||||||
this.minData = minData;
|
this.minData = minData;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getMinDataID() {
|
public String getMinDataID() {
|
||||||
return minDataID;
|
return minDataID;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMinDataID(Long minDataID) {
|
public void setMinDataID(String minDataID) {
|
||||||
this.minDataID = minDataID;
|
this.minDataID = minDataID;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -66,11 +66,11 @@ public class BMSBatteryClusterDataList {
|
|||||||
this.maxData = maxData;
|
this.maxData = maxData;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getMaxDataID() {
|
public String getMaxDataID() {
|
||||||
return maxDataID;
|
return maxDataID;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMaxDataID(Long maxDataID) {
|
public void setMaxDataID(String maxDataID) {
|
||||||
this.maxDataID = maxDataID;
|
this.maxDataID = maxDataID;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -52,10 +52,55 @@ public class BMSBatteryClusterVo {
|
|||||||
private BigDecimal currentSoc;
|
private BigDecimal currentSoc;
|
||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
|
/** 单体温度平均值 */
|
||||||
|
private BigDecimal avgTemp;
|
||||||
|
|
||||||
|
/** 单体温度最小值 */
|
||||||
|
private BigDecimal minTemp;
|
||||||
|
|
||||||
|
/** 单体温度最小值ID */
|
||||||
|
private String minTempID;
|
||||||
|
|
||||||
|
/** 单体温度最大值 */
|
||||||
|
private BigDecimal maxTemp;
|
||||||
|
|
||||||
|
/** 单体温度最大值ID */
|
||||||
|
private String maxTempID;
|
||||||
|
|
||||||
|
/** 单体电压平均值 */
|
||||||
|
private BigDecimal avgVoltage;
|
||||||
|
|
||||||
|
/** 单体电压最小值 */
|
||||||
|
private BigDecimal minVoltage;
|
||||||
|
|
||||||
|
/** 单体电压最小值ID */
|
||||||
|
private String minVoltageID;
|
||||||
|
|
||||||
|
/** 单体电压最大值 */
|
||||||
|
private BigDecimal maxVoltage;
|
||||||
|
|
||||||
|
/** 单体电压最大值ID */
|
||||||
|
private String maxVoltageID;
|
||||||
|
|
||||||
|
/** 单体Soc平均值 */
|
||||||
|
private BigDecimal avgSoc;
|
||||||
|
|
||||||
|
/** 单体Soc最小值 */
|
||||||
|
private BigDecimal minSoc;
|
||||||
|
|
||||||
|
/** 单体Soc最小值ID */
|
||||||
|
private String minSocID;
|
||||||
|
|
||||||
|
/** 单体Soc最大值 */
|
||||||
|
private BigDecimal maxSoc;
|
||||||
|
|
||||||
|
/** 单体Soc最大值ID */
|
||||||
|
private String maxSocID;
|
||||||
|
|
||||||
private List<BMSBatteryClusterDataList> batteryDataList;
|
private List<BMSBatteryClusterDataList> batteryDataList;
|
||||||
|
|
||||||
@ -171,19 +216,19 @@ public class BMSBatteryClusterVo {
|
|||||||
this.currentSoc = currentSoc;
|
this.currentSoc = currentSoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId) {
|
public void setSiteId(String siteId) {
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId() {
|
public String getDeviceId() {
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId) {
|
public void setDeviceId(String deviceId) {
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -194,4 +239,124 @@ public class BMSBatteryClusterVo {
|
|||||||
public void setBatteryDataList(List<BMSBatteryClusterDataList> batteryDataList) {
|
public void setBatteryDataList(List<BMSBatteryClusterDataList> batteryDataList) {
|
||||||
this.batteryDataList = batteryDataList;
|
this.batteryDataList = batteryDataList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getMaxSocID() {
|
||||||
|
return maxSocID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxSocID(String maxSocID) {
|
||||||
|
this.maxSocID = maxSocID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxSoc() {
|
||||||
|
return maxSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxSoc(BigDecimal maxSoc) {
|
||||||
|
this.maxSoc = maxSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMinSocID() {
|
||||||
|
return minSocID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinSocID(String minSocID) {
|
||||||
|
this.minSocID = minSocID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinSoc() {
|
||||||
|
return minSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinSoc(BigDecimal minSoc) {
|
||||||
|
this.minSoc = minSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgSoc() {
|
||||||
|
return avgSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgSoc(BigDecimal avgSoc) {
|
||||||
|
this.avgSoc = avgSoc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMaxVoltageID() {
|
||||||
|
return maxVoltageID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxVoltageID(String maxVoltageID) {
|
||||||
|
this.maxVoltageID = maxVoltageID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxVoltage() {
|
||||||
|
return maxVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxVoltage(BigDecimal maxVoltage) {
|
||||||
|
this.maxVoltage = maxVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMinVoltageID() {
|
||||||
|
return minVoltageID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinVoltageID(String minVoltageID) {
|
||||||
|
this.minVoltageID = minVoltageID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinVoltage() {
|
||||||
|
return minVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinVoltage(BigDecimal minVoltage) {
|
||||||
|
this.minVoltage = minVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgVoltage() {
|
||||||
|
return avgVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgVoltage(BigDecimal avgVoltage) {
|
||||||
|
this.avgVoltage = avgVoltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMaxTempID() {
|
||||||
|
return maxTempID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxTempID(String maxTempID) {
|
||||||
|
this.maxTempID = maxTempID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMaxTemp() {
|
||||||
|
return maxTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxTemp(BigDecimal maxTemp) {
|
||||||
|
this.maxTemp = maxTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMinTempID() {
|
||||||
|
return minTempID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinTempID(String minTempID) {
|
||||||
|
this.minTempID = minTempID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getMinTemp() {
|
||||||
|
return minTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinTemp(BigDecimal minTemp) {
|
||||||
|
this.minTemp = minTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAvgTemp() {
|
||||||
|
return avgTemp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvgTemp(BigDecimal avgTemp) {
|
||||||
|
this.avgTemp = avgTemp;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@ public class BMSBatteryDataList {
|
|||||||
/**
|
/**
|
||||||
* 簇号
|
* 簇号
|
||||||
*/
|
*/
|
||||||
private Long clusterId;
|
private String clusterId;
|
||||||
|
|
||||||
/** 簇电压 (V) */
|
/** 簇电压 (V) */
|
||||||
private BigDecimal clusterVoltage;
|
private BigDecimal clusterVoltage;
|
||||||
@ -33,16 +33,16 @@ public class BMSBatteryDataList {
|
|||||||
private BigDecimal minTemperature;
|
private BigDecimal minTemperature;
|
||||||
|
|
||||||
/** 换电站id */
|
/** 换电站id */
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 堆id */
|
/** 堆id */
|
||||||
private Long stackDeviceId;
|
private String stackDeviceId;
|
||||||
|
|
||||||
public Long getClusterId() {
|
public String getClusterId() {
|
||||||
return clusterId;
|
return clusterId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setClusterId(Long clusterId) {
|
public void setClusterId(String clusterId) {
|
||||||
this.clusterId = clusterId;
|
this.clusterId = clusterId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -52,10 +52,10 @@ public class BMSOverViewVo {
|
|||||||
private BigDecimal currentSoc;
|
private BigDecimal currentSoc;
|
||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
private List<BMSBatteryDataList> batteryDataList;
|
private List<BMSBatteryDataList> batteryDataList;
|
||||||
|
|
||||||
@ -171,19 +171,19 @@ public class BMSOverViewVo {
|
|||||||
this.currentSoc = currentSoc;
|
this.currentSoc = currentSoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId() {
|
public String getDeviceId() {
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId) {
|
public void setDeviceId(String deviceId) {
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId) {
|
public void setSiteId(String siteId) {
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,10 +8,10 @@ import java.math.BigDecimal;
|
|||||||
public class BatteryClusterDataDetailVo {
|
public class BatteryClusterDataDetailVo {
|
||||||
|
|
||||||
/** 设备id */
|
/** 设备id */
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 电池簇id */
|
/** 电池簇id */
|
||||||
private Long clusterId;
|
private String clusterId;
|
||||||
|
|
||||||
/** 电压平均值 */
|
/** 电压平均值 */
|
||||||
private BigDecimal avgVoltage;
|
private BigDecimal avgVoltage;
|
||||||
@ -40,19 +40,19 @@ public class BatteryClusterDataDetailVo {
|
|||||||
/** soc最小值 */
|
/** soc最小值 */
|
||||||
private BigDecimal minSoc;
|
private BigDecimal minSoc;
|
||||||
|
|
||||||
public Long getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId) {
|
public void setSiteId(String siteId) {
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getClusterId() {
|
public String getClusterId() {
|
||||||
return clusterId;
|
return clusterId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setClusterId(Long clusterId) {
|
public void setClusterId(String clusterId) {
|
||||||
this.clusterId = clusterId;
|
this.clusterId = clusterId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,76 @@
|
|||||||
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单站监控-单体电池数据
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class BatteryDataStatsListVo {
|
||||||
|
/** 单体电池设备id */
|
||||||
|
private String deviceId;
|
||||||
|
|
||||||
|
/** 电压 (V) */
|
||||||
|
private BigDecimal voltage;
|
||||||
|
|
||||||
|
/** 温度 (℃) */
|
||||||
|
private BigDecimal temperature;
|
||||||
|
|
||||||
|
/** SOC (%) */
|
||||||
|
private BigDecimal soc;
|
||||||
|
|
||||||
|
/** SOH (%) */
|
||||||
|
private BigDecimal soh;
|
||||||
|
|
||||||
|
private Date updateTime;
|
||||||
|
|
||||||
|
public String getDeviceId() {
|
||||||
|
return deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceId(String deviceId) {
|
||||||
|
this.deviceId = deviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getVoltage() {
|
||||||
|
return voltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVoltage(BigDecimal voltage) {
|
||||||
|
this.voltage = voltage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getTemperature() {
|
||||||
|
return temperature;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTemperature(BigDecimal temperature) {
|
||||||
|
this.temperature = temperature;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getSoc() {
|
||||||
|
return soc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSoc(BigDecimal soc) {
|
||||||
|
this.soc = soc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getSoh() {
|
||||||
|
return soh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSoh(BigDecimal soh) {
|
||||||
|
this.soh = soh;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getUpdateTime() {
|
||||||
|
return updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateTime(Date updateTime) {
|
||||||
|
this.updateTime = updateTime;
|
||||||
|
}
|
||||||
|
}
|
@ -25,10 +25,10 @@ public class PcsBranchInfo
|
|||||||
private BigDecimal dcCurrent;
|
private BigDecimal dcCurrent;
|
||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
/** 支路id */
|
/** 支路id */
|
||||||
private Long branchId;
|
private Long branchId;
|
||||||
@ -65,19 +65,19 @@ public class PcsBranchInfo
|
|||||||
this.dcCurrent = dcCurrent;
|
this.dcCurrent = dcCurrent;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId) {
|
public void setSiteId(String siteId) {
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getDeviceId() {
|
public String getDeviceId() {
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId) {
|
public void setDeviceId(String deviceId) {
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -81,29 +81,29 @@ public class PcsDetailInfoVo {
|
|||||||
private BigDecimal acFrequency;
|
private BigDecimal acFrequency;
|
||||||
|
|
||||||
/** 站点id */
|
/** 站点id */
|
||||||
private Long siteId;
|
private String siteId;
|
||||||
|
|
||||||
/** 设备唯一标识符 */
|
/** 设备唯一标识符 */
|
||||||
private Long deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
/** 设备名称 */
|
/** 设备名称 */
|
||||||
private String deviceName;
|
private String deviceName;
|
||||||
|
|
||||||
private List<PcsBranchInfo> pcsBranchInfoList;
|
private List<PcsBranchInfo> pcsBranchInfoList;
|
||||||
|
|
||||||
public Long getDeviceId() {
|
public String getDeviceId() {
|
||||||
return deviceId;
|
return deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDeviceId(Long deviceId) {
|
public void setDeviceId(String deviceId) {
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Long getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteId(Long siteId) {
|
public void setSiteId(String siteId) {
|
||||||
this.siteId = siteId;
|
this.siteId = siteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import java.math.BigDecimal;
|
|||||||
* 单站监控-设备监控-实时运行头部行数据
|
* 单站监控-设备监控-实时运行头部行数据
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class SiteMonitorRuningHeadInfoVo {
|
public class SiteMonitorRunningHeadInfoVo {
|
||||||
/**
|
/**
|
||||||
* 实时有功功率
|
* 实时有功功率
|
||||||
*/
|
*/
|
||||||
@ -37,6 +37,11 @@ public class SiteMonitorRuningHeadInfoVo {
|
|||||||
*/
|
*/
|
||||||
private BigDecimal dayDisChargedCap;
|
private BigDecimal dayDisChargedCap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 站点id
|
||||||
|
*/
|
||||||
|
private String siteId;
|
||||||
|
|
||||||
public BigDecimal getTotalActivePower() {
|
public BigDecimal getTotalActivePower() {
|
||||||
return totalActivePower;
|
return totalActivePower;
|
||||||
}
|
}
|
||||||
@ -84,4 +89,12 @@ public class SiteMonitorRuningHeadInfoVo {
|
|||||||
public void setDayDisChargedCap(BigDecimal dayDisChargedCap) {
|
public void setDayDisChargedCap(BigDecimal dayDisChargedCap) {
|
||||||
this.dayDisChargedCap = dayDisChargedCap;
|
this.dayDisChargedCap = dayDisChargedCap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getSiteId() {
|
||||||
|
return siteId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSiteId(String siteId) {
|
||||||
|
this.siteId = siteId;
|
||||||
|
}
|
||||||
}
|
}
|
@ -2,9 +2,7 @@ package com.xzzn.ems.mapper;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import com.xzzn.ems.domain.EmsAlarmRecords;
|
import com.xzzn.ems.domain.EmsAlarmRecords;
|
||||||
import com.xzzn.ems.domain.vo.AlarmTrendList;
|
import com.xzzn.ems.domain.vo.*;
|
||||||
import com.xzzn.ems.domain.vo.DeviceAlarmProportionList;
|
|
||||||
import com.xzzn.ems.domain.vo.SiteMonitorHomeAlarmVo;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 告警记录Mapper接口
|
* 告警记录Mapper接口
|
||||||
@ -66,7 +64,7 @@ public interface EmsAlarmRecordsMapper
|
|||||||
* 根据站点id获取告警记录
|
* 根据站点id获取告警记录
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public List<SiteMonitorHomeAlarmVo> getAlarmRecordsBySiteId(Long siteId);
|
public List<SiteMonitorHomeAlarmVo> getAlarmRecordsBySiteId(String siteId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取告警趋势数据
|
* 获取告警趋势数据
|
||||||
@ -79,4 +77,6 @@ public interface EmsAlarmRecordsMapper
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public List<DeviceAlarmProportionList> getDeviceAlarmPropList();
|
public List<DeviceAlarmProportionList> getDeviceAlarmPropList();
|
||||||
|
|
||||||
|
public List<AlarmRecordListResponseVo> getAlarmRecordDetailList(AlarmRecordListRequestVo requestVo);
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,70 @@
|
|||||||
|
package com.xzzn.ems.mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.ems.domain.EmsAmmeterData;
|
||||||
|
import com.xzzn.ems.domain.vo.AmmeterDataDetailInfo;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总数据Mapper接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
public interface EmsAmmeterDataMapper
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询总数据
|
||||||
|
*
|
||||||
|
* @param id 总数据主键
|
||||||
|
* @return 总数据
|
||||||
|
*/
|
||||||
|
public EmsAmmeterData selectEmsAmmeterDataById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询总数据列表
|
||||||
|
*
|
||||||
|
* @param emsAmmeterData 总数据
|
||||||
|
* @return 总数据集合
|
||||||
|
*/
|
||||||
|
public List<EmsAmmeterData> selectEmsAmmeterDataList(EmsAmmeterData emsAmmeterData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增总数据
|
||||||
|
*
|
||||||
|
* @param emsAmmeterData 总数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsAmmeterData(EmsAmmeterData emsAmmeterData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改总数据
|
||||||
|
*
|
||||||
|
* @param emsAmmeterData 总数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsAmmeterData(EmsAmmeterData emsAmmeterData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除总数据
|
||||||
|
*
|
||||||
|
* @param id 总数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsAmmeterDataById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除总数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsAmmeterDataByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取总表详细数据
|
||||||
|
* @param siteId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<AmmeterDataDetailInfo> getAmmeterDetailInfo(@Param("siteId")String siteId,@Param("deviceId") String deviceId);
|
||||||
|
}
|
@ -67,7 +67,7 @@ public interface EmsBatteryClusterMapper
|
|||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<BMSBatteryClusterVo> getBMSBatteryCluster(Long siteId);
|
public List<BMSBatteryClusterVo> getBMSBatteryCluster(String siteId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据site_di和堆id获取簇数据和单体数据
|
* 根据site_di和堆id获取簇数据和单体数据
|
||||||
@ -75,5 +75,5 @@ public interface EmsBatteryClusterMapper
|
|||||||
* @param stackDeviceId
|
* @param stackDeviceId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<BMSBatteryDataList> getBmsBatteryData(@Param("siteId")Long siteId, @Param("stackDeviceId")Long stackDeviceId);
|
public List<BMSBatteryDataList> getBmsBatteryData(@Param("siteId")String siteId, @Param("stackDeviceId")String stackDeviceId);
|
||||||
}
|
}
|
||||||
|
@ -4,9 +4,8 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import com.xzzn.ems.domain.EmsBatteryData;
|
import com.xzzn.ems.domain.EmsBatteryData;
|
||||||
import com.xzzn.ems.domain.vo.BMSBatteryClusterDataList;
|
|
||||||
import com.xzzn.ems.domain.vo.BatteryClusterDataDetailVo;
|
import com.xzzn.ems.domain.vo.BatteryClusterDataDetailVo;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import com.xzzn.ems.domain.vo.BatteryDataStatsListVo;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -70,7 +69,7 @@ public interface EmsBatteryDataMapper
|
|||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public EmsBatteryData getBatteryDataBySiteId(Long siteId);
|
public EmsBatteryData getBatteryDataBySiteId(String siteId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据siteId和簇id获取单体数据
|
* 根据siteId和簇id获取单体数据
|
||||||
@ -78,7 +77,7 @@ public interface EmsBatteryDataMapper
|
|||||||
* @param clusterDeviceId
|
* @param clusterDeviceId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public BatteryClusterDataDetailVo getBatteryDataByClusterId(@Param("siteId")Long siteId, @Param("clusterDeviceId")Long clusterDeviceId);
|
public BatteryClusterDataDetailVo getBatteryDataByClusterId(@Param("siteId")String siteId, @Param("clusterDeviceId")String clusterDeviceId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取最大最小的单体id
|
* 获取最大最小的单体id
|
||||||
@ -86,4 +85,14 @@ public interface EmsBatteryDataMapper
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<Map<String, Object>> getDataIdsMap(BatteryClusterDataDetailVo dataVo);
|
public List<Map<String, Object>> getDataIdsMap(BatteryClusterDataDetailVo dataVo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据电池簇设备id获取下面所有单体电池
|
||||||
|
* @param clusterDeviceId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<BatteryDataStatsListVo> getAllBatteryDataByClusterId(String clusterDeviceId);
|
||||||
|
|
||||||
|
|
||||||
|
int insertEmsBatteryDataList(List<EmsBatteryData> emsBatteryDataList);
|
||||||
}
|
}
|
||||||
|
@ -65,5 +65,5 @@ public interface EmsBatteryStackMapper
|
|||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<BMSOverViewVo> selectEmsBatteryStackBySiteId(Long siteId);
|
public List<BMSOverViewVo> selectEmsBatteryStackBySiteId(String siteId);
|
||||||
}
|
}
|
||||||
|
@ -64,5 +64,5 @@ public interface EmsCoolingDataMapper
|
|||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<EmsCoolingData> getCoolingDataList(Long siteId);
|
public List<EmsCoolingData> getCoolingDataList(String siteId);
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
package com.xzzn.ems.mapper;
|
package com.xzzn.ems.mapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import com.xzzn.ems.domain.EmsDevicesSetting;
|
import com.xzzn.ems.domain.EmsDevicesSetting;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -58,4 +60,24 @@ public interface EmsDevicesSettingMapper
|
|||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteEmsDevicesSettingByIds(Long[] ids);
|
public int deleteEmsDevicesSettingByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据site_id获取所有电池堆
|
||||||
|
* @param siteId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<Map<String, Object>> getAllStackInfoBySiteId(String siteId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据电池堆id获取所有电池簇
|
||||||
|
* @param stackDeviceId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<Map<String, Object>> getAllClusterInfoByStackId(String stackDeviceId);
|
||||||
|
/**
|
||||||
|
* 获取该设备下的所有电表
|
||||||
|
* @param siteId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<EmsDevicesSetting> getAllBatteryDeviceBySiteId(String siteId);
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,62 @@
|
|||||||
|
package com.xzzn.ems.mapper;
|
||||||
|
|
||||||
|
import com.xzzn.ems.domain.EmsMqttMessage;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 【请填写功能名称】Mapper接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
public interface EmsMqttMessageMapper
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param id 【请填写功能名称】主键
|
||||||
|
* @return 【请填写功能名称】
|
||||||
|
*/
|
||||||
|
public EmsMqttMessage selectEmsMqttMessageById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询【请填写功能名称】列表
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 【请填写功能名称】集合
|
||||||
|
*/
|
||||||
|
public List<EmsMqttMessage> selectEmsMqttMessageList(EmsMqttMessage emsMqttMessage);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsMqttMessage(EmsMqttMessage emsMqttMessage);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsMqttMessage(EmsMqttMessage emsMqttMessage);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param id 【请填写功能名称】主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsMqttMessageById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsMqttMessageByIds(Long[] ids);
|
||||||
|
}
|
@ -9,7 +9,7 @@ import org.apache.ibatis.annotations.Param;
|
|||||||
* pcs支路数据Mapper接口
|
* pcs支路数据Mapper接口
|
||||||
*
|
*
|
||||||
* @author xzzn
|
* @author xzzn
|
||||||
* @date 2025-06-24
|
* @date 2025-06-29
|
||||||
*/
|
*/
|
||||||
public interface EmsPcsBranchDataMapper
|
public interface EmsPcsBranchDataMapper
|
||||||
{
|
{
|
||||||
@ -67,5 +67,7 @@ public interface EmsPcsBranchDataMapper
|
|||||||
* @param deviceId
|
* @param deviceId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<PcsBranchInfo> getPcsBranchInfoList(@Param("siteId")Long siteId, @Param("deviceId")Long deviceId);
|
public List<PcsBranchInfo> getPcsBranchInfoList(@Param("siteId")String siteId, @Param("deviceId")String deviceId);
|
||||||
|
|
||||||
|
int insertPcsBranchDataList(List<EmsPcsBranchData> list);
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,8 @@ import com.xzzn.ems.domain.EmsPcsData;
|
|||||||
import com.xzzn.ems.domain.vo.ElectricIndexList;
|
import com.xzzn.ems.domain.vo.ElectricIndexList;
|
||||||
import com.xzzn.ems.domain.vo.PcsDetailInfoVo;
|
import com.xzzn.ems.domain.vo.PcsDetailInfoVo;
|
||||||
import com.xzzn.ems.domain.vo.SiteMonitorDataVo;
|
import com.xzzn.ems.domain.vo.SiteMonitorDataVo;
|
||||||
import com.xzzn.ems.domain.vo.SiteMonitorRuningHeadInfoVo;
|
import com.xzzn.ems.domain.vo.SiteMonitorRunningHeadInfoVo;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PCS数据Mapper接口
|
* PCS数据Mapper接口
|
||||||
@ -71,21 +72,14 @@ public interface EmsPcsDataMapper
|
|||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<SiteMonitorDataVo> getPcsDataBySiteId(Long siteId);
|
public List<SiteMonitorDataVo> getPcsDataBySiteId(@Param("siteId")String siteId, @Param("limitTime")int limitTime);
|
||||||
|
|
||||||
/**
|
|
||||||
* 根据站点获取电网实时功率=sum(总交流有功电率)
|
|
||||||
* @param siteId
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public BigDecimal getGridNrtPower(Long siteId);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据站点获取设备监控的实时运行头信息
|
* 根据站点获取设备监控的实时运行头信息
|
||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public SiteMonitorRuningHeadInfoVo getSiteRunningHeadInfo(Long siteId);
|
public SiteMonitorRunningHeadInfoVo getSiteRunningHeadInfo(String siteId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取每月的充电量和放电量
|
* 获取每月的充电量和放电量
|
||||||
@ -98,11 +92,11 @@ public interface EmsPcsDataMapper
|
|||||||
* @param siteId
|
* @param siteId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<PcsDetailInfoVo> getPcsDetailInfoBySiteId(Long siteId);
|
public List<PcsDetailInfoVo> getPcsDetailInfoBySiteId(String siteId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取总充+总放
|
* 获取总充+总放
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Map<String, BigDecimal> getPcsTotalChargeData();
|
public Map<String, BigDecimal> getPcsTotalChargeData(String siteId);
|
||||||
}
|
}
|
||||||
|
@ -65,4 +65,11 @@ public interface EmsSiteSettingMapper
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public SiteTotalInfoVo getSiteTotalInfo();
|
public SiteTotalInfoVo getSiteTotalInfo();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据站点id获取站点信息
|
||||||
|
* @param siteId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public EmsSiteSetting selectEmsSiteSettingBySiteId(String siteId);
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,70 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.ems.domain.EmsAlarmRecords;
|
||||||
|
import com.xzzn.ems.domain.vo.AlarmRecordListRequestVo;
|
||||||
|
import com.xzzn.ems.domain.vo.AlarmRecordListResponseVo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 告警记录Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
public interface IEmsAlarmRecordsService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询告警记录
|
||||||
|
*
|
||||||
|
* @param id 告警记录主键
|
||||||
|
* @return 告警记录
|
||||||
|
*/
|
||||||
|
public EmsAlarmRecords selectEmsAlarmRecordsById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询告警记录列表
|
||||||
|
*
|
||||||
|
* @param emsAlarmRecords 告警记录
|
||||||
|
* @return 告警记录集合
|
||||||
|
*/
|
||||||
|
public List<EmsAlarmRecords> selectEmsAlarmRecordsList(EmsAlarmRecords emsAlarmRecords);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增告警记录
|
||||||
|
*
|
||||||
|
* @param emsAlarmRecords 告警记录
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsAlarmRecords(EmsAlarmRecords emsAlarmRecords);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改告警记录
|
||||||
|
*
|
||||||
|
* @param emsAlarmRecords 告警记录
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsAlarmRecords(EmsAlarmRecords emsAlarmRecords);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除告警记录
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的告警记录主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsAlarmRecordsByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除告警记录信息
|
||||||
|
*
|
||||||
|
* @param id 告警记录主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsAlarmRecordsById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取故障告警列表
|
||||||
|
* @param requestVo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<AlarmRecordListResponseVo> getAlarmRecordDetailList(AlarmRecordListRequestVo requestVo);
|
||||||
|
}
|
@ -0,0 +1,61 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryCluster;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电池簇数据Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
public interface IEmsBatteryClusterService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询电池簇数据
|
||||||
|
*
|
||||||
|
* @param id 电池簇数据主键
|
||||||
|
* @return 电池簇数据
|
||||||
|
*/
|
||||||
|
public EmsBatteryCluster selectEmsBatteryClusterById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询电池簇数据列表
|
||||||
|
*
|
||||||
|
* @param emsBatteryCluster 电池簇数据
|
||||||
|
* @return 电池簇数据集合
|
||||||
|
*/
|
||||||
|
public List<EmsBatteryCluster> selectEmsBatteryClusterList(EmsBatteryCluster emsBatteryCluster);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增电池簇数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryCluster 电池簇数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsBatteryCluster(EmsBatteryCluster emsBatteryCluster);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改电池簇数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryCluster 电池簇数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsBatteryCluster(EmsBatteryCluster emsBatteryCluster);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除电池簇数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的电池簇数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsBatteryClusterByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除电池簇数据信息
|
||||||
|
*
|
||||||
|
* @param id 电池簇数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsBatteryClusterById(Long id);
|
||||||
|
}
|
@ -0,0 +1,71 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryData;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单体电池实时数据Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
public interface IEmsBatteryDataService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param id 单体电池实时数据主键
|
||||||
|
* @return 单体电池实时数据
|
||||||
|
*/
|
||||||
|
public EmsBatteryData selectEmsBatteryDataById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询单体电池实时数据列表
|
||||||
|
*
|
||||||
|
* @param emsBatteryData 单体电池实时数据
|
||||||
|
* @return 单体电池实时数据集合
|
||||||
|
*/
|
||||||
|
public List<EmsBatteryData> selectEmsBatteryDataList(EmsBatteryData emsBatteryData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryData 单体电池实时数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsBatteryData(EmsBatteryData emsBatteryData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryData 单体电池实时数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsBatteryData(EmsBatteryData emsBatteryData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的单体电池实时数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsBatteryDataByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除单体电池实时数据信息
|
||||||
|
*
|
||||||
|
* @param id 单体电池实时数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsBatteryDataById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryDataList 单体电池实时数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsBatteryDataList(List<EmsBatteryData> emsBatteryDataList);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,61 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryStack;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电池堆数据Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
public interface IEmsBatteryStackService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询电池堆数据
|
||||||
|
*
|
||||||
|
* @param id 电池堆数据主键
|
||||||
|
* @return 电池堆数据
|
||||||
|
*/
|
||||||
|
public EmsBatteryStack selectEmsBatteryStackById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询电池堆数据列表
|
||||||
|
*
|
||||||
|
* @param emsBatteryStack 电池堆数据
|
||||||
|
* @return 电池堆数据集合
|
||||||
|
*/
|
||||||
|
public List<EmsBatteryStack> selectEmsBatteryStackList(EmsBatteryStack emsBatteryStack);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增电池堆数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryStack 电池堆数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsBatteryStack(EmsBatteryStack emsBatteryStack);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改电池堆数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryStack 电池堆数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsBatteryStack(EmsBatteryStack emsBatteryStack);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除电池堆数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的电池堆数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsBatteryStackByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除电池堆数据信息
|
||||||
|
*
|
||||||
|
* @param id 电池堆数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsBatteryStackById(Long id);
|
||||||
|
}
|
@ -0,0 +1,62 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import com.xzzn.ems.domain.EmsMqttMessage;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 【请填写功能名称】Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
public interface IEmsMqttMessageService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param id 【请填写功能名称】主键
|
||||||
|
* @return 【请填写功能名称】
|
||||||
|
*/
|
||||||
|
public EmsMqttMessage selectEmsMqttMessageById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询【请填写功能名称】列表
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 【请填写功能名称】集合
|
||||||
|
*/
|
||||||
|
public List<EmsMqttMessage> selectEmsMqttMessageList(EmsMqttMessage emsMqttMessage);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsMqttMessage(EmsMqttMessage emsMqttMessage);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsMqttMessage(EmsMqttMessage emsMqttMessage);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的【请填写功能名称】主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsMqttMessageByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除【请填写功能名称】信息
|
||||||
|
*
|
||||||
|
* @param id 【请填写功能名称】主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsMqttMessageById(Long id);
|
||||||
|
}
|
@ -0,0 +1,63 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.ems.domain.EmsPcsBranchData;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs支路数据Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
public interface IEmsPcsBranchDataService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询pcs支路数据
|
||||||
|
*
|
||||||
|
* @param id pcs支路数据主键
|
||||||
|
* @return pcs支路数据
|
||||||
|
*/
|
||||||
|
public EmsPcsBranchData selectEmsPcsBranchDataById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询pcs支路数据列表
|
||||||
|
*
|
||||||
|
* @param emsPcsBranchData pcs支路数据
|
||||||
|
* @return pcs支路数据集合
|
||||||
|
*/
|
||||||
|
public List<EmsPcsBranchData> selectEmsPcsBranchDataList(EmsPcsBranchData emsPcsBranchData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增pcs支路数据
|
||||||
|
*
|
||||||
|
* @param emsPcsBranchData pcs支路数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsPcsBranchData(EmsPcsBranchData emsPcsBranchData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改pcs支路数据
|
||||||
|
*
|
||||||
|
* @param emsPcsBranchData pcs支路数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsPcsBranchData(EmsPcsBranchData emsPcsBranchData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除pcs支路数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的pcs支路数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsPcsBranchDataByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除pcs支路数据信息
|
||||||
|
*
|
||||||
|
* @param id pcs支路数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsPcsBranchDataById(Long id);
|
||||||
|
|
||||||
|
int insertEmsPcsBranchDataList(List<EmsPcsBranchData> list);
|
||||||
|
}
|
@ -0,0 +1,62 @@
|
|||||||
|
package com.xzzn.ems.service;
|
||||||
|
|
||||||
|
import com.xzzn.ems.domain.EmsPcsData;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* PCS数据Service接口
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
public interface IEmsPcsDataService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询PCS数据
|
||||||
|
*
|
||||||
|
* @param id PCS数据主键
|
||||||
|
* @return PCS数据
|
||||||
|
*/
|
||||||
|
public EmsPcsData selectEmsPcsDataById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询PCS数据列表
|
||||||
|
*
|
||||||
|
* @param emsPcsData PCS数据
|
||||||
|
* @return PCS数据集合
|
||||||
|
*/
|
||||||
|
public List<EmsPcsData> selectEmsPcsDataList(EmsPcsData emsPcsData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增PCS数据
|
||||||
|
*
|
||||||
|
* @param emsPcsData PCS数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertEmsPcsData(EmsPcsData emsPcsData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改PCS数据
|
||||||
|
*
|
||||||
|
* @param emsPcsData PCS数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateEmsPcsData(EmsPcsData emsPcsData);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除PCS数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的PCS数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsPcsDataByIds(Long[] ids);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除PCS数据信息
|
||||||
|
*
|
||||||
|
* @param id PCS数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteEmsPcsDataById(Long id);
|
||||||
|
}
|
@ -4,6 +4,7 @@ import com.xzzn.ems.domain.EmsSiteSetting;
|
|||||||
import com.xzzn.ems.domain.vo.SiteTotalInfoVo;
|
import com.xzzn.ems.domain.vo.SiteTotalInfoVo;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 站点信息 服务层
|
* 站点信息 服务层
|
||||||
@ -16,4 +17,10 @@ public interface IEmsSiteService
|
|||||||
|
|
||||||
|
|
||||||
public SiteTotalInfoVo getSiteTotalInfo();
|
public SiteTotalInfoVo getSiteTotalInfo();
|
||||||
|
|
||||||
|
public List<Map<String,Object>> getAllStackInfo(String siteId);
|
||||||
|
|
||||||
|
public List<Map<String,Object>> getAllClusterInfo(String stackDeviceId);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,7 @@ public interface IHomePageService
|
|||||||
|
|
||||||
public SiteTotalInfoVo getSiteTotalInfo();
|
public SiteTotalInfoVo getSiteTotalInfo();
|
||||||
|
|
||||||
public SingleSiteBaseInfo getSingleSiteBaseInfo(Long siteId);
|
public SingleSiteBaseInfo getSingleSiteBaseInfo(String siteId);
|
||||||
|
|
||||||
public HomePageDataViewVo getHomePageDataList();
|
public HomePageDataViewVo getHomePageDataList();
|
||||||
}
|
}
|
||||||
|
@ -12,18 +12,22 @@ import java.util.List;
|
|||||||
public interface ISingleSiteService
|
public interface ISingleSiteService
|
||||||
{
|
{
|
||||||
|
|
||||||
public SiteMonitorHomeVo getSiteMonitorDataVo(Long siteId);
|
public SiteMonitorHomeVo getSiteMonitorDataVo(String siteId);
|
||||||
|
|
||||||
|
|
||||||
public SiteMonitorRuningHeadInfoVo getSiteRunningHeadInfo(Long siteId);
|
public SiteMonitorRunningHeadInfoVo getSiteRunningHeadInfo(String siteId);
|
||||||
|
|
||||||
public SiteMonitorRuningInfoVo getRunningGraph(Long siteId);
|
public SiteMonitorRuningInfoVo getRunningGraph(String siteId);
|
||||||
|
|
||||||
public List<PcsDetailInfoVo> getPcsDetailInfo(Long siteId);
|
public List<PcsDetailInfoVo> getPcsDetailInfo(String siteId);
|
||||||
|
|
||||||
public List<BMSOverViewVo> getBMSOverView(Long siteId);
|
public List<BMSOverViewVo> getBMSOverView(String siteId);
|
||||||
|
|
||||||
public List<BMSBatteryClusterVo> getBMSBatteryCluster(Long siteId);
|
public List<BMSBatteryClusterVo> getBMSBatteryCluster(String siteId);
|
||||||
|
|
||||||
public List<EmsCoolingData> getCoolingDataList(Long siteId);
|
public List<EmsCoolingData> getCoolingDataList(String siteId);
|
||||||
|
|
||||||
|
public List<BatteryDataStatsListVo> getClusterDataInfoList(String clusterDeviceId);
|
||||||
|
|
||||||
|
public List<AmmeterDataVo> getAmmeterDataList(String siteId);
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,103 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import com.xzzn.ems.domain.vo.AlarmRecordListRequestVo;
|
||||||
|
import com.xzzn.ems.domain.vo.AlarmRecordListResponseVo;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import com.xzzn.ems.mapper.EmsAlarmRecordsMapper;
|
||||||
|
import com.xzzn.ems.domain.EmsAlarmRecords;
|
||||||
|
import com.xzzn.ems.service.IEmsAlarmRecordsService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 告警记录Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsAlarmRecordsServiceImpl implements IEmsAlarmRecordsService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsAlarmRecordsMapper emsAlarmRecordsMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询告警记录
|
||||||
|
*
|
||||||
|
* @param id 告警记录主键
|
||||||
|
* @return 告警记录
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsAlarmRecords selectEmsAlarmRecordsById(Long id)
|
||||||
|
{
|
||||||
|
return emsAlarmRecordsMapper.selectEmsAlarmRecordsById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询告警记录列表
|
||||||
|
*
|
||||||
|
* @param emsAlarmRecords 告警记录
|
||||||
|
* @return 告警记录
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsAlarmRecords> selectEmsAlarmRecordsList(EmsAlarmRecords emsAlarmRecords)
|
||||||
|
{
|
||||||
|
return emsAlarmRecordsMapper.selectEmsAlarmRecordsList(emsAlarmRecords);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增告警记录
|
||||||
|
*
|
||||||
|
* @param emsAlarmRecords 告警记录
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsAlarmRecords(EmsAlarmRecords emsAlarmRecords)
|
||||||
|
{
|
||||||
|
emsAlarmRecords.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsAlarmRecordsMapper.insertEmsAlarmRecords(emsAlarmRecords);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改告警记录
|
||||||
|
*
|
||||||
|
* @param emsAlarmRecords 告警记录
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsAlarmRecords(EmsAlarmRecords emsAlarmRecords)
|
||||||
|
{
|
||||||
|
emsAlarmRecords.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsAlarmRecordsMapper.updateEmsAlarmRecords(emsAlarmRecords);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除告警记录
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的告警记录主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsAlarmRecordsByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsAlarmRecordsMapper.deleteEmsAlarmRecordsByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除告警记录信息
|
||||||
|
*
|
||||||
|
* @param id 告警记录主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsAlarmRecordsById(Long id)
|
||||||
|
{
|
||||||
|
return emsAlarmRecordsMapper.deleteEmsAlarmRecordsById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<AlarmRecordListResponseVo> getAlarmRecordDetailList(AlarmRecordListRequestVo requestVo) {
|
||||||
|
return emsAlarmRecordsMapper.getAlarmRecordDetailList(requestVo);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,96 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import com.xzzn.ems.mapper.EmsBatteryClusterMapper;
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryCluster;
|
||||||
|
import com.xzzn.ems.service.IEmsBatteryClusterService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电池簇数据Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsBatteryClusterServiceImpl implements IEmsBatteryClusterService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsBatteryClusterMapper emsBatteryClusterMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询电池簇数据
|
||||||
|
*
|
||||||
|
* @param id 电池簇数据主键
|
||||||
|
* @return 电池簇数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsBatteryCluster selectEmsBatteryClusterById(Long id)
|
||||||
|
{
|
||||||
|
return emsBatteryClusterMapper.selectEmsBatteryClusterById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询电池簇数据列表
|
||||||
|
*
|
||||||
|
* @param emsBatteryCluster 电池簇数据
|
||||||
|
* @return 电池簇数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsBatteryCluster> selectEmsBatteryClusterList(EmsBatteryCluster emsBatteryCluster)
|
||||||
|
{
|
||||||
|
return emsBatteryClusterMapper.selectEmsBatteryClusterList(emsBatteryCluster);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增电池簇数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryCluster 电池簇数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsBatteryCluster(EmsBatteryCluster emsBatteryCluster)
|
||||||
|
{
|
||||||
|
emsBatteryCluster.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsBatteryClusterMapper.insertEmsBatteryCluster(emsBatteryCluster);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改电池簇数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryCluster 电池簇数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsBatteryCluster(EmsBatteryCluster emsBatteryCluster)
|
||||||
|
{
|
||||||
|
emsBatteryCluster.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsBatteryClusterMapper.updateEmsBatteryCluster(emsBatteryCluster);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除电池簇数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的电池簇数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsBatteryClusterByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsBatteryClusterMapper.deleteEmsBatteryClusterByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除电池簇数据信息
|
||||||
|
*
|
||||||
|
* @param id 电池簇数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsBatteryClusterById(Long id)
|
||||||
|
{
|
||||||
|
return emsBatteryClusterMapper.deleteEmsBatteryClusterById(id);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,104 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryData;
|
||||||
|
import com.xzzn.ems.mapper.EmsBatteryDataMapper;
|
||||||
|
import com.xzzn.ems.service.IEmsBatteryDataService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单体电池实时数据Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsBatteryDataServiceImpl implements IEmsBatteryDataService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsBatteryDataMapper emsBatteryDataMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param id 单体电池实时数据主键
|
||||||
|
* @return 单体电池实时数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsBatteryData selectEmsBatteryDataById(Long id)
|
||||||
|
{
|
||||||
|
return emsBatteryDataMapper.selectEmsBatteryDataById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询单体电池实时数据列表
|
||||||
|
*
|
||||||
|
* @param emsBatteryData 单体电池实时数据
|
||||||
|
* @return 单体电池实时数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsBatteryData> selectEmsBatteryDataList(EmsBatteryData emsBatteryData)
|
||||||
|
{
|
||||||
|
return emsBatteryDataMapper.selectEmsBatteryDataList(emsBatteryData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryData 单体电池实时数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsBatteryData(EmsBatteryData emsBatteryData)
|
||||||
|
{
|
||||||
|
emsBatteryData.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsBatteryDataMapper.insertEmsBatteryData(emsBatteryData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryData 单体电池实时数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsBatteryData(EmsBatteryData emsBatteryData)
|
||||||
|
{
|
||||||
|
emsBatteryData.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsBatteryDataMapper.updateEmsBatteryData(emsBatteryData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除单体电池实时数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的单体电池实时数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsBatteryDataByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsBatteryDataMapper.deleteEmsBatteryDataByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除单体电池实时数据信息
|
||||||
|
*
|
||||||
|
* @param id 单体电池实时数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsBatteryDataById(Long id)
|
||||||
|
{
|
||||||
|
return emsBatteryDataMapper.deleteEmsBatteryDataById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int insertEmsBatteryDataList(List<EmsBatteryData> emsBatteryDataList) {
|
||||||
|
for (EmsBatteryData data : emsBatteryDataList) {
|
||||||
|
data.setCreateTime(DateUtils.getNowDate());
|
||||||
|
}
|
||||||
|
return emsBatteryDataMapper.insertEmsBatteryDataList(emsBatteryDataList);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,96 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import com.xzzn.ems.mapper.EmsBatteryStackMapper;
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryStack;
|
||||||
|
import com.xzzn.ems.service.IEmsBatteryStackService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电池堆数据Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsBatteryStackServiceImpl implements IEmsBatteryStackService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsBatteryStackMapper emsBatteryStackMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询电池堆数据
|
||||||
|
*
|
||||||
|
* @param id 电池堆数据主键
|
||||||
|
* @return 电池堆数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsBatteryStack selectEmsBatteryStackById(Long id)
|
||||||
|
{
|
||||||
|
return emsBatteryStackMapper.selectEmsBatteryStackById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询电池堆数据列表
|
||||||
|
*
|
||||||
|
* @param emsBatteryStack 电池堆数据
|
||||||
|
* @return 电池堆数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsBatteryStack> selectEmsBatteryStackList(EmsBatteryStack emsBatteryStack)
|
||||||
|
{
|
||||||
|
return emsBatteryStackMapper.selectEmsBatteryStackList(emsBatteryStack);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增电池堆数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryStack 电池堆数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsBatteryStack(EmsBatteryStack emsBatteryStack)
|
||||||
|
{
|
||||||
|
emsBatteryStack.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsBatteryStackMapper.insertEmsBatteryStack(emsBatteryStack);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改电池堆数据
|
||||||
|
*
|
||||||
|
* @param emsBatteryStack 电池堆数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsBatteryStack(EmsBatteryStack emsBatteryStack)
|
||||||
|
{
|
||||||
|
emsBatteryStack.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsBatteryStackMapper.updateEmsBatteryStack(emsBatteryStack);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除电池堆数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的电池堆数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsBatteryStackByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsBatteryStackMapper.deleteEmsBatteryStackByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除电池堆数据信息
|
||||||
|
*
|
||||||
|
* @param id 电池堆数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsBatteryStackById(Long id)
|
||||||
|
{
|
||||||
|
return emsBatteryStackMapper.deleteEmsBatteryStackById(id);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,96 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import com.xzzn.ems.domain.EmsMqttMessage;
|
||||||
|
import com.xzzn.ems.mapper.EmsMqttMessageMapper;
|
||||||
|
import com.xzzn.ems.service.IEmsMqttMessageService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 【请填写功能名称】Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsMqttMessageServiceImpl implements IEmsMqttMessageService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsMqttMessageMapper emsMqttMessageMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param id 【请填写功能名称】主键
|
||||||
|
* @return 【请填写功能名称】
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsMqttMessage selectEmsMqttMessageById(Long id)
|
||||||
|
{
|
||||||
|
return emsMqttMessageMapper.selectEmsMqttMessageById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询【请填写功能名称】列表
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 【请填写功能名称】
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsMqttMessage> selectEmsMqttMessageList(EmsMqttMessage emsMqttMessage)
|
||||||
|
{
|
||||||
|
return emsMqttMessageMapper.selectEmsMqttMessageList(emsMqttMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsMqttMessage(EmsMqttMessage emsMqttMessage)
|
||||||
|
{
|
||||||
|
emsMqttMessage.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsMqttMessageMapper.insertEmsMqttMessage(emsMqttMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param emsMqttMessage 【请填写功能名称】
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsMqttMessage(EmsMqttMessage emsMqttMessage)
|
||||||
|
{
|
||||||
|
emsMqttMessage.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsMqttMessageMapper.updateEmsMqttMessage(emsMqttMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除【请填写功能名称】
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的【请填写功能名称】主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsMqttMessageByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsMqttMessageMapper.deleteEmsMqttMessageByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除【请填写功能名称】信息
|
||||||
|
*
|
||||||
|
* @param id 【请填写功能名称】主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsMqttMessageById(Long id)
|
||||||
|
{
|
||||||
|
return emsMqttMessageMapper.deleteEmsMqttMessageById(id);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,105 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import com.xzzn.ems.mapper.EmsPcsBranchDataMapper;
|
||||||
|
import com.xzzn.ems.domain.EmsPcsBranchData;
|
||||||
|
import com.xzzn.ems.service.IEmsPcsBranchDataService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcs支路数据Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-29
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsPcsBranchDataServiceImpl implements IEmsPcsBranchDataService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsPcsBranchDataMapper emsPcsBranchDataMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询pcs支路数据
|
||||||
|
*
|
||||||
|
* @param id pcs支路数据主键
|
||||||
|
* @return pcs支路数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsPcsBranchData selectEmsPcsBranchDataById(Long id)
|
||||||
|
{
|
||||||
|
return emsPcsBranchDataMapper.selectEmsPcsBranchDataById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询pcs支路数据列表
|
||||||
|
*
|
||||||
|
* @param emsPcsBranchData pcs支路数据
|
||||||
|
* @return pcs支路数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsPcsBranchData> selectEmsPcsBranchDataList(EmsPcsBranchData emsPcsBranchData)
|
||||||
|
{
|
||||||
|
return emsPcsBranchDataMapper.selectEmsPcsBranchDataList(emsPcsBranchData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增pcs支路数据
|
||||||
|
*
|
||||||
|
* @param emsPcsBranchData pcs支路数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsPcsBranchData(EmsPcsBranchData emsPcsBranchData)
|
||||||
|
{
|
||||||
|
emsPcsBranchData.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsPcsBranchDataMapper.insertEmsPcsBranchData(emsPcsBranchData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改pcs支路数据
|
||||||
|
*
|
||||||
|
* @param emsPcsBranchData pcs支路数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsPcsBranchData(EmsPcsBranchData emsPcsBranchData)
|
||||||
|
{
|
||||||
|
emsPcsBranchData.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsPcsBranchDataMapper.updateEmsPcsBranchData(emsPcsBranchData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除pcs支路数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的pcs支路数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsPcsBranchDataByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsPcsBranchDataMapper.deleteEmsPcsBranchDataByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除pcs支路数据信息
|
||||||
|
*
|
||||||
|
* @param id pcs支路数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsPcsBranchDataById(Long id)
|
||||||
|
{
|
||||||
|
return emsPcsBranchDataMapper.deleteEmsPcsBranchDataById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int insertEmsPcsBranchDataList(List<EmsPcsBranchData> list) {
|
||||||
|
for (EmsPcsBranchData item : list) {
|
||||||
|
item.setCreateTime(DateUtils.getNowDate());
|
||||||
|
}
|
||||||
|
return emsPcsBranchDataMapper.insertPcsBranchDataList(list);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,96 @@
|
|||||||
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
|
import com.xzzn.ems.domain.EmsPcsData;
|
||||||
|
import com.xzzn.ems.mapper.EmsPcsDataMapper;
|
||||||
|
import com.xzzn.ems.service.IEmsPcsDataService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* PCS数据Service业务层处理
|
||||||
|
*
|
||||||
|
* @author xzzn
|
||||||
|
* @date 2025-06-27
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class EmsPcsDataServiceImpl implements IEmsPcsDataService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private EmsPcsDataMapper emsPcsDataMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询PCS数据
|
||||||
|
*
|
||||||
|
* @param id PCS数据主键
|
||||||
|
* @return PCS数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public EmsPcsData selectEmsPcsDataById(Long id)
|
||||||
|
{
|
||||||
|
return emsPcsDataMapper.selectEmsPcsDataById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询PCS数据列表
|
||||||
|
*
|
||||||
|
* @param emsPcsData PCS数据
|
||||||
|
* @return PCS数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<EmsPcsData> selectEmsPcsDataList(EmsPcsData emsPcsData)
|
||||||
|
{
|
||||||
|
return emsPcsDataMapper.selectEmsPcsDataList(emsPcsData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增PCS数据
|
||||||
|
*
|
||||||
|
* @param emsPcsData PCS数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertEmsPcsData(EmsPcsData emsPcsData)
|
||||||
|
{
|
||||||
|
emsPcsData.setCreateTime(DateUtils.getNowDate());
|
||||||
|
return emsPcsDataMapper.insertEmsPcsData(emsPcsData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改PCS数据
|
||||||
|
*
|
||||||
|
* @param emsPcsData PCS数据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateEmsPcsData(EmsPcsData emsPcsData)
|
||||||
|
{
|
||||||
|
emsPcsData.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
return emsPcsDataMapper.updateEmsPcsData(emsPcsData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除PCS数据
|
||||||
|
*
|
||||||
|
* @param ids 需要删除的PCS数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsPcsDataByIds(Long[] ids)
|
||||||
|
{
|
||||||
|
return emsPcsDataMapper.deleteEmsPcsDataByIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除PCS数据信息
|
||||||
|
*
|
||||||
|
* @param id PCS数据主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteEmsPcsDataById(Long id)
|
||||||
|
{
|
||||||
|
return emsPcsDataMapper.deleteEmsPcsDataById(id);
|
||||||
|
}
|
||||||
|
}
|
@ -2,12 +2,14 @@ package com.xzzn.ems.service.impl;
|
|||||||
|
|
||||||
import com.xzzn.ems.domain.EmsSiteSetting;
|
import com.xzzn.ems.domain.EmsSiteSetting;
|
||||||
import com.xzzn.ems.domain.vo.SiteTotalInfoVo;
|
import com.xzzn.ems.domain.vo.SiteTotalInfoVo;
|
||||||
|
import com.xzzn.ems.mapper.EmsDevicesSettingMapper;
|
||||||
import com.xzzn.ems.mapper.EmsSiteSettingMapper;
|
import com.xzzn.ems.mapper.EmsSiteSettingMapper;
|
||||||
import com.xzzn.ems.service.IEmsSiteService;
|
import com.xzzn.ems.service.IEmsSiteService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 站点信息 服务层实现
|
* 站点信息 服务层实现
|
||||||
@ -19,6 +21,8 @@ public class EmsSiteServiceImpl implements IEmsSiteService
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private EmsSiteSettingMapper emsSiteMapper;
|
private EmsSiteSettingMapper emsSiteMapper;
|
||||||
|
@Autowired
|
||||||
|
private EmsDevicesSettingMapper emsDevicesMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<EmsSiteSetting> getAllSites() {
|
public List<EmsSiteSetting> getAllSites() {
|
||||||
@ -30,4 +34,24 @@ public class EmsSiteServiceImpl implements IEmsSiteService
|
|||||||
return emsSiteMapper.getSiteTotalInfo();
|
return emsSiteMapper.getSiteTotalInfo();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据site_id获取所有电池堆
|
||||||
|
* @param siteId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<Map<String, Object>> getAllStackInfo(String siteId) {
|
||||||
|
return emsDevicesMapper.getAllStackInfoBySiteId(siteId);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据电池堆Id获取电池簇
|
||||||
|
* @param stackDeviceId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<Map<String, Object>> getAllClusterInfo(String stackDeviceId) {
|
||||||
|
return emsDevicesMapper.getAllClusterInfoByStackId(stackDeviceId);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,7 @@ import java.util.*;
|
|||||||
@Service
|
@Service
|
||||||
public class HomePageServiceImpl implements IHomePageService
|
public class HomePageServiceImpl implements IHomePageService
|
||||||
{
|
{
|
||||||
|
private static final int LIMIT_TIME = 6;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IEmsSiteService emsSiteService;
|
private IEmsSiteService emsSiteService;
|
||||||
@ -37,21 +38,22 @@ public class HomePageServiceImpl implements IHomePageService
|
|||||||
SiteTotalInfoVo siteTotalInfoVo = new SiteTotalInfoVo();
|
SiteTotalInfoVo siteTotalInfoVo = new SiteTotalInfoVo();
|
||||||
siteTotalInfoVo = emsSiteService.getSiteTotalInfo();
|
siteTotalInfoVo = emsSiteService.getSiteTotalInfo();
|
||||||
// 获取总充+总放
|
// 获取总充+总放
|
||||||
Map<String,BigDecimal> pcsMap = new HashMap<>();
|
Map<String,BigDecimal> pcsMap = emsPcsDataMapper.getPcsTotalChargeData(null);
|
||||||
pcsMap = emsPcsDataMapper.getPcsTotalChargeData();
|
if(pcsMap != null){
|
||||||
siteTotalInfoVo.setTotalChargedCap(pcsMap.get("totalChargedCap"));
|
siteTotalInfoVo.setTotalChargedCap(pcsMap.get("totalChargedCap"));
|
||||||
siteTotalInfoVo.setTotalDischargedCap(pcsMap.get("totalDischargedCap"));
|
siteTotalInfoVo.setTotalDischargedCap(pcsMap.get("totalDischargedCap"));
|
||||||
|
}
|
||||||
return siteTotalInfoVo;
|
return siteTotalInfoVo;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 单站点基本信息
|
// 单站点基本信息
|
||||||
@Override
|
@Override
|
||||||
public SingleSiteBaseInfo getSingleSiteBaseInfo(Long siteId) {
|
public SingleSiteBaseInfo getSingleSiteBaseInfo(String siteId) {
|
||||||
SingleSiteBaseInfo singleSiteBaseInfo = new SingleSiteBaseInfo();
|
SingleSiteBaseInfo singleSiteBaseInfo = new SingleSiteBaseInfo();
|
||||||
|
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
// 站点基本信息
|
// 站点基本信息
|
||||||
EmsSiteSetting emsSite = emsSiteMapper.selectEmsSiteSettingById(siteId);
|
EmsSiteSetting emsSite = emsSiteMapper.selectEmsSiteSettingBySiteId(siteId);
|
||||||
if (emsSite != null) {
|
if (emsSite != null) {
|
||||||
// 装机功率+装机容量
|
// 装机功率+装机容量
|
||||||
singleSiteBaseInfo.setSiteName(emsSite.getSiteName());
|
singleSiteBaseInfo.setSiteName(emsSite.getSiteName());
|
||||||
@ -62,9 +64,16 @@ public class HomePageServiceImpl implements IHomePageService
|
|||||||
siteLocation[1] = emsSite.getLatitude() == null ? "" : emsSite.getLatitude().toString();
|
siteLocation[1] = emsSite.getLatitude() == null ? "" : emsSite.getLatitude().toString();
|
||||||
singleSiteBaseInfo.setSiteLocation(siteLocation);//站点位置
|
singleSiteBaseInfo.setSiteLocation(siteLocation);//站点位置
|
||||||
singleSiteBaseInfo.setSiteAddress(emsSite.getSiteAddress());
|
singleSiteBaseInfo.setSiteAddress(emsSite.getSiteAddress());
|
||||||
singleSiteBaseInfo.setRunningTime(DateUtils.parseDateToStr("yyyy-MM-dd",emsSite.getRunningTime()));//投运时间
|
singleSiteBaseInfo.setRunningTime(emsSite.getRunningTime() == null ? null :
|
||||||
|
DateUtils.parseDateToStr("yyyy-MM-dd",emsSite.getRunningTime()));//投运时间
|
||||||
|
// 获取单站点的总充+总放
|
||||||
|
Map<String,BigDecimal> pcsMap = emsPcsDataMapper.getPcsTotalChargeData(siteId);
|
||||||
|
if (pcsMap != null) {
|
||||||
|
singleSiteBaseInfo.setTotalChargedCap(pcsMap.get("totalChargedCap"));
|
||||||
|
singleSiteBaseInfo.setTotalDisChargedCap(pcsMap.get("totalDischargedCap"));
|
||||||
|
}
|
||||||
// 七天放电数据统计
|
// 七天放电数据统计
|
||||||
List<SiteMonitorDataVo> siteMonitorDataVoList = emsPcsDataMapper.getPcsDataBySiteId(siteId);
|
List<SiteMonitorDataVo> siteMonitorDataVoList = emsPcsDataMapper.getPcsDataBySiteId(siteId,LIMIT_TIME);
|
||||||
singleSiteBaseInfo.setSevenDayDisChargeStats(siteMonitorDataVoList);
|
singleSiteBaseInfo.setSevenDayDisChargeStats(siteMonitorDataVoList);
|
||||||
// 充放电基本数据处理
|
// 充放电基本数据处理
|
||||||
dealSitePCSDate(singleSiteBaseInfo,siteMonitorDataVoList);
|
dealSitePCSDate(singleSiteBaseInfo,siteMonitorDataVoList);
|
||||||
@ -76,27 +85,15 @@ public class HomePageServiceImpl implements IHomePageService
|
|||||||
|
|
||||||
private void dealSitePCSDate(SingleSiteBaseInfo singleSiteBaseInfo, List<SiteMonitorDataVo> siteMonitorDataVoList) {
|
private void dealSitePCSDate(SingleSiteBaseInfo singleSiteBaseInfo, List<SiteMonitorDataVo> siteMonitorDataVoList) {
|
||||||
if (siteMonitorDataVoList != null && !siteMonitorDataVoList.isEmpty()) {
|
if (siteMonitorDataVoList != null && !siteMonitorDataVoList.isEmpty()) {
|
||||||
BigDecimal dayChargeCap = new BigDecimal(0);
|
|
||||||
BigDecimal dayDisChargeCap = new BigDecimal(0);
|
|
||||||
BigDecimal totalChargeCap = new BigDecimal(0);
|
|
||||||
BigDecimal totalDisChargeCap = new BigDecimal(0);
|
|
||||||
for (SiteMonitorDataVo sitePcsData : siteMonitorDataVoList) {
|
for (SiteMonitorDataVo sitePcsData : siteMonitorDataVoList) {
|
||||||
// 总充电量
|
|
||||||
totalChargeCap = totalChargeCap.add(sitePcsData.getChargedCap());
|
|
||||||
// 总放电量
|
|
||||||
totalDisChargeCap = totalDisChargeCap.add(sitePcsData.getDisChargedCap());
|
|
||||||
// 获取当天的充电量+放电量
|
// 获取当天的充电量+放电量
|
||||||
String pcsDate = sitePcsData.getAmmeterDate();
|
String pcsDate = sitePcsData.getAmmeterDate();
|
||||||
boolean isToday= checkIsToday(pcsDate);
|
boolean isToday= checkIsToday(pcsDate);
|
||||||
if(isToday){
|
if(isToday){
|
||||||
dayChargeCap = dayChargeCap.add(sitePcsData.getChargedCap());
|
singleSiteBaseInfo.setDayChargedCap(sitePcsData.getChargedCap());
|
||||||
dayDisChargeCap = dayDisChargeCap.add(sitePcsData.getDisChargedCap());
|
singleSiteBaseInfo.setDayDisChargedCap(sitePcsData.getDisChargedCap());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
singleSiteBaseInfo.setDayChargedCap(dayChargeCap);
|
|
||||||
singleSiteBaseInfo.setDayDisChargedCap(dayDisChargeCap);
|
|
||||||
singleSiteBaseInfo.setTotalChargedCap(totalChargeCap);
|
|
||||||
singleSiteBaseInfo.setTotalDisChargedCap(totalDisChargeCap);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -122,17 +119,14 @@ public class HomePageServiceImpl implements IHomePageService
|
|||||||
public HomePageDataViewVo getHomePageDataList() {
|
public HomePageDataViewVo getHomePageDataList() {
|
||||||
HomePageDataViewVo homePageDataViewVo = new HomePageDataViewVo();
|
HomePageDataViewVo homePageDataViewVo = new HomePageDataViewVo();
|
||||||
// 电量指标
|
// 电量指标
|
||||||
List<ElectricIndexList> electricDataList = new ArrayList();
|
List<ElectricIndexList> electricDataList = emsPcsDataMapper.getElectDataList();
|
||||||
electricDataList = emsPcsDataMapper.getElectDataList();
|
|
||||||
homePageDataViewVo.setElecDataList(electricDataList);
|
homePageDataViewVo.setElecDataList(electricDataList);
|
||||||
// 系统效率
|
// 系统效率
|
||||||
// 告警趋势
|
// 告警趋势
|
||||||
List<AlarmTrendList> alarmTrendList = new ArrayList();
|
List<AlarmTrendList> alarmTrendList = alarmRecordsMapper.getAlarmTrendList();
|
||||||
alarmTrendList = alarmRecordsMapper.getAlarmTrendList();
|
|
||||||
homePageDataViewVo.setAlarmDataList(alarmTrendList);
|
homePageDataViewVo.setAlarmDataList(alarmTrendList);
|
||||||
// 设备告警占比
|
// 设备告警占比
|
||||||
List<DeviceAlarmProportionList> deviceAlarmPropList = new ArrayList();
|
List<DeviceAlarmProportionList> deviceAlarmPropList = alarmRecordsMapper.getDeviceAlarmPropList();
|
||||||
deviceAlarmPropList = alarmRecordsMapper.getDeviceAlarmPropList();
|
|
||||||
homePageDataViewVo.setDeviceAlarmList(deviceAlarmPropList);
|
homePageDataViewVo.setDeviceAlarmList(deviceAlarmPropList);
|
||||||
// 告警等级分布
|
// 告警等级分布
|
||||||
return homePageDataViewVo;
|
return homePageDataViewVo;
|
||||||
|
@ -3,6 +3,7 @@ package com.xzzn.ems.service.impl;
|
|||||||
import com.xzzn.common.utils.StringUtils;
|
import com.xzzn.common.utils.StringUtils;
|
||||||
import com.xzzn.ems.domain.EmsBatteryData;
|
import com.xzzn.ems.domain.EmsBatteryData;
|
||||||
import com.xzzn.ems.domain.EmsCoolingData;
|
import com.xzzn.ems.domain.EmsCoolingData;
|
||||||
|
import com.xzzn.ems.domain.EmsDevicesSetting;
|
||||||
import com.xzzn.ems.domain.vo.*;
|
import com.xzzn.ems.domain.vo.*;
|
||||||
import com.xzzn.ems.mapper.*;
|
import com.xzzn.ems.mapper.*;
|
||||||
import com.xzzn.ems.service.ISingleSiteService;
|
import com.xzzn.ems.service.ISingleSiteService;
|
||||||
@ -11,7 +12,6 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.CollectionUtils;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.math.RoundingMode;
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@ -41,46 +41,43 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
private EmsPcsBranchDataMapper emsPcsBranchDataMapper;
|
private EmsPcsBranchDataMapper emsPcsBranchDataMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private EmsCoolingDataMapper emsCoolingDataMapper;
|
private EmsCoolingDataMapper emsCoolingDataMapper;
|
||||||
|
@Autowired
|
||||||
|
private EmsAmmeterDataMapper emsAmmeterDataMapper;
|
||||||
|
@Autowired
|
||||||
|
private EmsDevicesSettingMapper emsDevicesSettingMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SiteMonitorHomeVo getSiteMonitorDataVo(Long siteId) {
|
public SiteMonitorHomeVo getSiteMonitorDataVo(String siteId) {
|
||||||
SiteMonitorHomeVo siteMonitorHomeVo = new SiteMonitorHomeVo();
|
SiteMonitorHomeVo siteMonitorHomeVo = new SiteMonitorHomeVo();
|
||||||
|
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
|
// 获取单站点的总充+总放+电网实时功率
|
||||||
|
Map<String,BigDecimal> pcsMap = emsPcsDataMapper.getPcsTotalChargeData(siteId);
|
||||||
|
if (pcsMap != null) {
|
||||||
|
siteMonitorHomeVo.setTotalChargedCap(pcsMap.get("totalChargedCap"));
|
||||||
|
siteMonitorHomeVo.setTotalDischargedCap(pcsMap.get("totalDischargedCap"));
|
||||||
|
siteMonitorHomeVo.setGridNrtPower(pcsMap.get("gridNrtPower"));
|
||||||
|
}
|
||||||
// 实时告警数据 名称+状态+告警内容
|
// 实时告警数据 名称+状态+告警内容
|
||||||
List<SiteMonitorHomeAlarmVo> siteMonitorHomeAlarmVo = emsAlarmRecordsMapper.getAlarmRecordsBySiteId(siteId);
|
List<SiteMonitorHomeAlarmVo> siteMonitorHomeAlarmVo = emsAlarmRecordsMapper.getAlarmRecordsBySiteId(siteId);
|
||||||
siteMonitorHomeVo.setSiteMonitorHomeAlarmVo(siteMonitorHomeAlarmVo);
|
siteMonitorHomeVo.setSiteMonitorHomeAlarmVo(siteMonitorHomeAlarmVo);
|
||||||
// 能量数据
|
// 能量数据
|
||||||
List<SiteMonitorDataVo> siteMonitorDataVoList = emsPcsDataMapper.getPcsDataBySiteId(siteId);
|
List<SiteMonitorDataVo> siteMonitorDataVoList = emsPcsDataMapper.getPcsDataBySiteId(siteId,6);
|
||||||
if (!CollectionUtils.isEmpty(siteMonitorDataVoList)) {
|
if (!CollectionUtils.isEmpty(siteMonitorDataVoList)) {
|
||||||
BigDecimal dayChargeCap = new BigDecimal(0);
|
|
||||||
BigDecimal dayDisChargeCap = new BigDecimal(0);
|
|
||||||
BigDecimal totalChargeCap = new BigDecimal(0);
|
|
||||||
BigDecimal totalDisChargeCap = new BigDecimal(0);
|
|
||||||
for (SiteMonitorDataVo sitePcsData : siteMonitorDataVoList) {
|
for (SiteMonitorDataVo sitePcsData : siteMonitorDataVoList) {
|
||||||
// 总充电量
|
|
||||||
totalChargeCap = totalChargeCap.add(sitePcsData.getChargedCap());
|
|
||||||
// 总放电量
|
|
||||||
totalDisChargeCap = totalDisChargeCap.add(sitePcsData.getDisChargedCap());
|
|
||||||
// 获取当天的充电量+放电量
|
// 获取当天的充电量+放电量
|
||||||
String pcsDate = sitePcsData.getAmmeterDate();
|
String pcsDate = sitePcsData.getAmmeterDate();
|
||||||
boolean isToday= checkIsToday(pcsDate);
|
boolean isToday= checkIsToday(pcsDate);
|
||||||
if(isToday){
|
if(isToday){
|
||||||
dayChargeCap = dayChargeCap.add(sitePcsData.getChargedCap());
|
siteMonitorHomeVo.setDayChargedCap(sitePcsData.getChargedCap());
|
||||||
dayDisChargeCap = dayDisChargeCap.add(sitePcsData.getDisChargedCap());
|
siteMonitorHomeVo.setDayDisChargedCap(sitePcsData.getDisChargedCap());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
siteMonitorHomeVo.setDayChargedCap(dayChargeCap);
|
|
||||||
siteMonitorHomeVo.setDayDisChargedCap(dayDisChargeCap);
|
|
||||||
siteMonitorHomeVo.setTotalChargedCap(totalChargeCap);
|
|
||||||
siteMonitorHomeVo.setTotalDischargedCap(totalDisChargeCap);
|
|
||||||
// 储能可用电量
|
// 储能可用电量
|
||||||
BigDecimal energyStorageAvailElec = siteMonitorHomeVo.getTotalDischargedCap().subtract(siteMonitorHomeVo.getTotalChargedCap());
|
BigDecimal energyStorageAvailElec = siteMonitorHomeVo.getTotalDischargedCap().subtract(siteMonitorHomeVo.getTotalChargedCap());
|
||||||
siteMonitorHomeVo.setEnergyStorageAvailElec(energyStorageAvailElec);
|
siteMonitorHomeVo.setEnergyStorageAvailElec(energyStorageAvailElec);
|
||||||
}
|
}
|
||||||
siteMonitorHomeVo.setSiteMonitorDataVo(siteMonitorDataVoList);
|
siteMonitorHomeVo.setSiteMonitorDataVo(siteMonitorDataVoList);
|
||||||
// 电网实时功率
|
|
||||||
siteMonitorHomeVo.setGridNrtPower(emsPcsDataMapper.getGridNrtPower(siteId));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return siteMonitorHomeVo;
|
return siteMonitorHomeVo;
|
||||||
@ -103,10 +100,10 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
|
|
||||||
// 获取单站监控实时运行头部数据
|
// 获取单站监控实时运行头部数据
|
||||||
@Override
|
@Override
|
||||||
public SiteMonitorRuningHeadInfoVo getSiteRunningHeadInfo(Long siteId) {
|
public SiteMonitorRunningHeadInfoVo getSiteRunningHeadInfo(String siteId) {
|
||||||
SiteMonitorRuningHeadInfoVo siteMonitorRunningHeadInfoVo = new SiteMonitorRuningHeadInfoVo();
|
SiteMonitorRunningHeadInfoVo siteMonitorRunningHeadInfoVo = new SiteMonitorRunningHeadInfoVo();
|
||||||
|
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
// 实时有功功率/实时无功功率/今日充电量/今日放电量
|
// 实时有功功率/实时无功功率/今日充电量/今日放电量
|
||||||
siteMonitorRunningHeadInfoVo = emsPcsDataMapper.getSiteRunningHeadInfo(siteId);
|
siteMonitorRunningHeadInfoVo = emsPcsDataMapper.getSiteRunningHeadInfo(siteId);
|
||||||
// 电池簇SOC
|
// 电池簇SOC
|
||||||
@ -123,9 +120,9 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
|
|
||||||
// 获取单站监控实时运行曲线图数据
|
// 获取单站监控实时运行曲线图数据
|
||||||
@Override
|
@Override
|
||||||
public SiteMonitorRuningInfoVo getRunningGraph(Long siteId) {
|
public SiteMonitorRuningInfoVo getRunningGraph(String siteId) {
|
||||||
SiteMonitorRuningInfoVo siteMonitorRuningInfoVo = new SiteMonitorRuningInfoVo();
|
SiteMonitorRuningInfoVo siteMonitorRuningInfoVo = new SiteMonitorRuningInfoVo();
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
//储能功率list
|
//储能功率list
|
||||||
//pcs平均温度list
|
//pcs平均温度list
|
||||||
//电池平均soclist
|
//电池平均soclist
|
||||||
@ -136,17 +133,17 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
|
|
||||||
// 根据site_id获取pcs详细数据+支路数据
|
// 根据site_id获取pcs详细数据+支路数据
|
||||||
@Override
|
@Override
|
||||||
public List<PcsDetailInfoVo> getPcsDetailInfo(Long siteId) {
|
public List<PcsDetailInfoVo> getPcsDetailInfo(String siteId) {
|
||||||
List<PcsDetailInfoVo> pcsDetailInfoVoList = new ArrayList<>();
|
List<PcsDetailInfoVo> pcsDetailInfoVoList = new ArrayList<>();
|
||||||
|
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
// 获取pcs最新数据
|
// 获取pcs最新数据
|
||||||
pcsDetailInfoVoList = emsPcsDataMapper.getPcsDetailInfoBySiteId(siteId);
|
pcsDetailInfoVoList = emsPcsDataMapper.getPcsDetailInfoBySiteId(siteId);
|
||||||
if (!CollectionUtils.isEmpty(pcsDetailInfoVoList)) {
|
if (!CollectionUtils.isEmpty(pcsDetailInfoVoList)) {
|
||||||
for (PcsDetailInfoVo pcsDetailInfoVo : pcsDetailInfoVoList) {
|
for (PcsDetailInfoVo pcsDetailInfoVo : pcsDetailInfoVoList) {
|
||||||
Long deviceId = pcsDetailInfoVo.getDeviceId();
|
String deviceId = pcsDetailInfoVo.getDeviceId();
|
||||||
// 获取支路最新数据
|
// 获取支路最新数据
|
||||||
if (deviceId != null) {
|
if (!StringUtils.isEmpty(deviceId)) {
|
||||||
List<PcsBranchInfo> pcsBranchInfoList = emsPcsBranchDataMapper.getPcsBranchInfoList(siteId, deviceId);
|
List<PcsBranchInfo> pcsBranchInfoList = emsPcsBranchDataMapper.getPcsBranchInfoList(siteId, deviceId);
|
||||||
pcsDetailInfoVo.setPcsBranchInfoList(pcsBranchInfoList);
|
pcsDetailInfoVo.setPcsBranchInfoList(pcsBranchInfoList);
|
||||||
}
|
}
|
||||||
@ -158,19 +155,18 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
|
|
||||||
// 获取BMS总览数据
|
// 获取BMS总览数据
|
||||||
@Override
|
@Override
|
||||||
public List<BMSOverViewVo> getBMSOverView(Long siteId) {
|
public List<BMSOverViewVo> getBMSOverView(String siteId) {
|
||||||
List<BMSOverViewVo> bmsOverViewVoList = new ArrayList<>();
|
List<BMSOverViewVo> bmsOverViewVoList = new ArrayList<>();
|
||||||
|
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
// 获取电池堆list
|
// 获取电池堆list
|
||||||
bmsOverViewVoList = emsBatteryStackMapper.selectEmsBatteryStackBySiteId(siteId);
|
bmsOverViewVoList = emsBatteryStackMapper.selectEmsBatteryStackBySiteId(siteId);
|
||||||
if (!CollectionUtils.isEmpty(bmsOverViewVoList)) {
|
if (!CollectionUtils.isEmpty(bmsOverViewVoList)) {
|
||||||
for (BMSOverViewVo bmsOverViewVo : bmsOverViewVoList) {
|
for (BMSOverViewVo bmsOverViewVo : bmsOverViewVoList) {
|
||||||
// 获取单体电池数据-待确认
|
// 获取单体电池数据
|
||||||
Long stackDeviceId = bmsOverViewVo.getDeviceId();
|
String stackDeviceId = bmsOverViewVo.getDeviceId();
|
||||||
if (stackDeviceId != null) {
|
if (!StringUtils.isEmpty(stackDeviceId)) {
|
||||||
List<BMSBatteryDataList> batteryDataList = new ArrayList<>();
|
List<BMSBatteryDataList> batteryDataList = emsBatteryClusterMapper.getBmsBatteryData(siteId,stackDeviceId);
|
||||||
batteryDataList = emsBatteryClusterMapper.getBmsBatteryData(siteId,stackDeviceId);
|
|
||||||
bmsOverViewVo.setBatteryDataList(batteryDataList);
|
bmsOverViewVo.setBatteryDataList(batteryDataList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -181,65 +177,46 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
|
|
||||||
// 获取BMS电池簇数据
|
// 获取BMS电池簇数据
|
||||||
@Override
|
@Override
|
||||||
public List<BMSBatteryClusterVo> getBMSBatteryCluster(Long siteId) {
|
public List<BMSBatteryClusterVo> getBMSBatteryCluster(String siteId) {
|
||||||
List<BMSBatteryClusterVo> bmsBatteryClusterVoList = new ArrayList<>();
|
List<BMSBatteryClusterVo> bmsBatteryClusterVoList = new ArrayList<>();
|
||||||
|
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
bmsBatteryClusterVoList = emsBatteryClusterMapper.getBMSBatteryCluster(siteId);
|
bmsBatteryClusterVoList = emsBatteryClusterMapper.getBMSBatteryCluster(siteId);
|
||||||
if (!CollectionUtils.isEmpty(bmsBatteryClusterVoList)) {
|
if (!CollectionUtils.isEmpty(bmsBatteryClusterVoList)) {
|
||||||
for (BMSBatteryClusterVo bmsBatteryClusterVo : bmsBatteryClusterVoList) {
|
for (BMSBatteryClusterVo bmsBatteryClusterVo : bmsBatteryClusterVoList) {
|
||||||
|
|
||||||
Long clusterDeviceId = bmsBatteryClusterVo.getDeviceId();
|
String clusterDeviceId = bmsBatteryClusterVo.getDeviceId();
|
||||||
List<BMSBatteryClusterDataList> clusterDataList = new ArrayList<>();
|
List<BMSBatteryClusterDataList> clusterDataList = new ArrayList<>();
|
||||||
if (clusterDeviceId != null) {
|
if (!StringUtils.isEmpty(clusterDeviceId)) {
|
||||||
// 获取单体电池数据-平均/最大/最小
|
// 获取单体电池数据-平均/最大/最小
|
||||||
BatteryClusterDataDetailVo batteryClusterDataDetailVo = emsBatteryDataMapper.getBatteryDataByClusterId(siteId,clusterDeviceId);
|
//BatteryClusterDataDetailVo batteryClusterDataDetailVo = emsBatteryDataMapper.getBatteryDataByClusterId(siteId,clusterDeviceId);
|
||||||
// 处理数据
|
// 处理数据
|
||||||
if (batteryClusterDataDetailVo != null) {
|
BMSBatteryClusterDataList voltageData = new BMSBatteryClusterDataList();
|
||||||
BMSBatteryClusterDataList voltageData = new BMSBatteryClusterDataList();
|
BMSBatteryClusterDataList tempData = new BMSBatteryClusterDataList();
|
||||||
BMSBatteryClusterDataList tempData = new BMSBatteryClusterDataList();
|
BMSBatteryClusterDataList socData = new BMSBatteryClusterDataList();
|
||||||
BMSBatteryClusterDataList socData = new BMSBatteryClusterDataList();
|
// 设值
|
||||||
// 设值
|
voltageData.setDataName(CLUSTER_DATA_VOLTAGE);
|
||||||
voltageData.setDataName(CLUSTER_DATA_VOLTAGE);
|
voltageData.setAvgData(bmsBatteryClusterVo.getAvgVoltage());
|
||||||
voltageData.setAvgData(batteryClusterDataDetailVo.getAvgVoltage());
|
voltageData.setMaxData(bmsBatteryClusterVo.getMaxVoltage());
|
||||||
voltageData.setMaxData(batteryClusterDataDetailVo.getMaxVoltage());
|
voltageData.setMaxDataID(bmsBatteryClusterVo.getMaxVoltageID());
|
||||||
voltageData.setMinData(batteryClusterDataDetailVo.getMinVoltage());
|
voltageData.setMinData(bmsBatteryClusterVo.getMinVoltage());
|
||||||
tempData.setDataName(CLUSTER_DATA_TEP);
|
voltageData.setMinDataID(bmsBatteryClusterVo.getMinVoltageID());
|
||||||
tempData.setAvgData(batteryClusterDataDetailVo.getAvgTemp());
|
tempData.setDataName(CLUSTER_DATA_TEP);
|
||||||
tempData.setMaxData(batteryClusterDataDetailVo.getMaxTemp());
|
tempData.setAvgData(bmsBatteryClusterVo.getAvgTemp());
|
||||||
tempData.setMinData(batteryClusterDataDetailVo.getMinTemp());
|
tempData.setMaxData(bmsBatteryClusterVo.getMaxTemp());
|
||||||
socData.setDataName(CLUSTER_DATA_SOC);
|
tempData.setMaxDataID(bmsBatteryClusterVo.getMaxTempID());
|
||||||
socData.setAvgData(batteryClusterDataDetailVo.getAvgSoc());
|
tempData.setMinData(bmsBatteryClusterVo.getMinTemp());
|
||||||
socData.setMaxData(batteryClusterDataDetailVo.getMaxSoc());
|
tempData.setMinDataID(bmsBatteryClusterVo.getMinTempID());
|
||||||
socData.setMinData(batteryClusterDataDetailVo.getMinSoc());
|
socData.setDataName(CLUSTER_DATA_SOC);
|
||||||
|
socData.setAvgData(bmsBatteryClusterVo.getAvgSoc());
|
||||||
|
socData.setMaxData(bmsBatteryClusterVo.getMaxSoc());
|
||||||
|
socData.setMaxDataID(bmsBatteryClusterVo.getMaxSocID());
|
||||||
|
socData.setMinData(bmsBatteryClusterVo.getMinSoc());
|
||||||
|
socData.setMinDataID(bmsBatteryClusterVo.getMinSocID());
|
||||||
|
|
||||||
// 设置对应单体id
|
clusterDataList.add(voltageData);
|
||||||
List<Map<String,Object>> dataIdMapList = emsBatteryDataMapper.getDataIdsMap(batteryClusterDataDetailVo);
|
clusterDataList.add(tempData);
|
||||||
Map<String,Long> resultIdMap = new HashMap<>();
|
clusterDataList.add(socData);
|
||||||
if (!CollectionUtils.isEmpty(dataIdMapList)) {
|
|
||||||
resultIdMap = dataIdMapList.stream()
|
|
||||||
.filter(map -> map.containsKey("type") && map.containsKey("device_id")) // 过滤无效数据
|
|
||||||
.filter(map -> map.get("type") instanceof String && map.get("device_id") instanceof Number) // 确保类型正确
|
|
||||||
.collect(Collectors.toMap(
|
|
||||||
map -> (String) map.get("type"), // 键:type 字段
|
|
||||||
map -> ((Number) map.get("device_id")).longValue(), // 值:device_id 转为 int
|
|
||||||
(existing, replacement) -> existing // 处理键冲突的策略
|
|
||||||
));
|
|
||||||
|
|
||||||
// 电压
|
|
||||||
voltageData.setMaxDataID(resultIdMap.get("maxVoltageId"));
|
|
||||||
voltageData.setMaxDataID(resultIdMap.get("maxVoltageId"));
|
|
||||||
// 温度
|
|
||||||
tempData.setMaxDataID(resultIdMap.get("maxTempId"));
|
|
||||||
tempData.setMinDataID(resultIdMap.get("minTempId"));
|
|
||||||
// soc
|
|
||||||
socData.setMaxDataID(resultIdMap.get("maxSocId"));
|
|
||||||
socData.setMinDataID(resultIdMap.get("minSocId"));
|
|
||||||
}
|
|
||||||
clusterDataList.add(voltageData);
|
|
||||||
clusterDataList.add(tempData);
|
|
||||||
clusterDataList.add(socData);
|
|
||||||
}
|
|
||||||
bmsBatteryClusterVo.setBatteryDataList(clusterDataList);
|
bmsBatteryClusterVo.setBatteryDataList(clusterDataList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -250,12 +227,56 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
|
|
||||||
// 获取液冷设备参数
|
// 获取液冷设备参数
|
||||||
@Override
|
@Override
|
||||||
public List<EmsCoolingData> getCoolingDataList(Long siteId) {
|
public List<EmsCoolingData> getCoolingDataList(String siteId) {
|
||||||
List<EmsCoolingData> emsCoolingDataList = new ArrayList<>();
|
List<EmsCoolingData> emsCoolingDataList = new ArrayList<>();
|
||||||
if (siteId != null) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
emsCoolingDataList = emsCoolingDataMapper.getCoolingDataList(siteId);
|
emsCoolingDataList = emsCoolingDataMapper.getCoolingDataList(siteId);
|
||||||
}
|
}
|
||||||
return emsCoolingDataList;
|
return emsCoolingDataList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据电池堆获取单体柱状数据
|
||||||
|
* @param clusterDeviceId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<BatteryDataStatsListVo> getClusterDataInfoList(String clusterDeviceId) {
|
||||||
|
List<BatteryDataStatsListVo> batteryDataStatsListVo = new ArrayList<>();
|
||||||
|
batteryDataStatsListVo = emsBatteryDataMapper.getAllBatteryDataByClusterId(clusterDeviceId);
|
||||||
|
return batteryDataStatsListVo;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电表数据信息
|
||||||
|
* @param siteId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<AmmeterDataVo> getAmmeterDataList(String siteId) {
|
||||||
|
List<AmmeterDataVo> ammeterDataVos = new ArrayList<>();
|
||||||
|
|
||||||
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
|
// 先获取所有电表设备
|
||||||
|
List<EmsDevicesSetting> devicesList = emsDevicesSettingMapper.getAllBatteryDeviceBySiteId(siteId);
|
||||||
|
if (!CollectionUtils.isEmpty(devicesList)) {
|
||||||
|
for (EmsDevicesSetting devicesSetting : devicesList) {
|
||||||
|
AmmeterDataVo ammeterDataVo = new AmmeterDataVo();
|
||||||
|
ammeterDataVo.setDeviceName(devicesSetting.getDeviceName());
|
||||||
|
ammeterDataVo.setEmsCommunicationStatus(devicesSetting.getCommunicationStatus());
|
||||||
|
String deviceId = devicesSetting.getDeviceId();
|
||||||
|
// 获取类别数据
|
||||||
|
List<AmmeterDataDetailInfo> ammeterDataDetailInfos = emsAmmeterDataMapper.getAmmeterDetailInfo(siteId,deviceId);
|
||||||
|
ammeterDataVo.setAmmeterDataDetailInfos(ammeterDataDetailInfos);
|
||||||
|
// 数据更新时间
|
||||||
|
ammeterDataVo.setDataUpdateTime(ammeterDataDetailInfos.get(0).getUpdateTime());
|
||||||
|
|
||||||
|
ammeterDataVos.add(ammeterDataVo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ammeterDataVos;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -35,8 +35,8 @@
|
|||||||
<if test="alarmStartTime != null "> and alarm_start_time = #{alarmStartTime}</if>
|
<if test="alarmStartTime != null "> and alarm_start_time = #{alarmStartTime}</if>
|
||||||
<if test="alarmEndTime != null "> and alarm_end_time = #{alarmEndTime}</if>
|
<if test="alarmEndTime != null "> and alarm_end_time = #{alarmEndTime}</if>
|
||||||
<if test="status != null and status != ''"> and status = #{status}</if>
|
<if test="status != null and status != ''"> and status = #{status}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
<if test="deviceName != null and deviceName != ''"> and device_name like concat('%', #{deviceName}, '%')</if>
|
<if test="deviceName != null and deviceName != ''"> and device_name like concat('%', #{deviceName}, '%')</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
@ -61,7 +61,7 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
<if test="deviceName != null and deviceName != ''">device_name,</if>
|
<if test="deviceName != null and deviceName != ''">device_name,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
@ -77,7 +77,7 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
<if test="deviceName != null and deviceName != ''">#{deviceName},</if>
|
<if test="deviceName != null and deviceName != ''">#{deviceName},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
@ -97,7 +97,7 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
<if test="deviceName != null and deviceName != ''">device_name = #{deviceName},</if>
|
<if test="deviceName != null and deviceName != ''">device_name = #{deviceName},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
@ -114,7 +114,7 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getAlarmRecordsBySiteId" parameterType="Long" resultType="com.xzzn.ems.domain.vo.SiteMonitorHomeAlarmVo">
|
<select id="getAlarmRecordsBySiteId" parameterType="String" resultType="com.xzzn.ems.domain.vo.SiteMonitorHomeAlarmVo">
|
||||||
select device_name as deviceName,
|
select device_name as deviceName,
|
||||||
status,alarm_content as alarmContent
|
status,alarm_content as alarmContent
|
||||||
from ems_alarm_records
|
from ems_alarm_records
|
||||||
@ -132,4 +132,24 @@
|
|||||||
from ems_alarm_records
|
from ems_alarm_records
|
||||||
group by device_type
|
group by device_type
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getAlarmRecordDetailList" parameterType="AlarmRecordListRequestVo" resultType="com.xzzn.ems.domain.vo.AlarmRecordListResponseVo">
|
||||||
|
select t.device_name as deviceName,t.alarm_level as alarmLevel,
|
||||||
|
t.alarm_content as alarmContent,t.status as status,
|
||||||
|
t.alarm_start_time as alarmStartTime,t.alarm_end_time as alarmEndTime
|
||||||
|
from ems_alarm_records t
|
||||||
|
where t.site_id = #{siteId}
|
||||||
|
<if test="deviceType != null and deviceType != 0">
|
||||||
|
AND t.device_type = #{deviceType}
|
||||||
|
</if>
|
||||||
|
<if test="alarmLevel != null and alarmLevel != ''">
|
||||||
|
AND t.alarm_level = #{alarmLevel}
|
||||||
|
</if>
|
||||||
|
<if test="alarmStartTime != null and alarmStartTime != ''">
|
||||||
|
AND date_format(t.alarm_start_time,'%Y%m%d') >= date_format(#{alarmStartTime},'%Y%m%d')
|
||||||
|
</if>
|
||||||
|
<if test="alarmEndTime != null and alarmEndTime != ''"><!-- 结束时间检索 -->
|
||||||
|
AND date_format(t.alarm_end_time,'%Y%m%d') <= date_format(#{alarmEndTime},'%Y%m%d')
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -0,0 +1,137 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.xzzn.ems.mapper.EmsAmmeterDataMapper">
|
||||||
|
|
||||||
|
<resultMap type="EmsAmmeterData" id="EmsAmmeterDataResult">
|
||||||
|
<result property="id" column="id" />
|
||||||
|
<result property="dataUpdateTime" column="data_update_time" />
|
||||||
|
<result property="category" column="category" />
|
||||||
|
<result property="totalKwh" column="total_kwh" />
|
||||||
|
<result property="sharpKwh" column="sharp_kwh" />
|
||||||
|
<result property="peakKwh" column="peak_kwh" />
|
||||||
|
<result property="flatKwh" column="flat_kwh" />
|
||||||
|
<result property="valleyKwh" column="valley_kwh" />
|
||||||
|
<result property="createBy" column="create_by" />
|
||||||
|
<result property="createTime" column="create_time" />
|
||||||
|
<result property="updateBy" column="update_by" />
|
||||||
|
<result property="updateTime" column="update_time" />
|
||||||
|
<result property="remark" column="remark" />
|
||||||
|
<result property="siteId" column="site_id" />
|
||||||
|
<result property="deviceId" column="device_id" />
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="selectEmsAmmeterDataVo">
|
||||||
|
select id, data_update_time, category, total_kwh, sharp_kwh, peak_kwh, flat_kwh, valley_kwh, create_by, create_time, update_by, update_time, remark, site_id, device_id from ems_ammeter_data
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<select id="selectEmsAmmeterDataList" parameterType="EmsAmmeterData" resultMap="EmsAmmeterDataResult">
|
||||||
|
<include refid="selectEmsAmmeterDataVo"/>
|
||||||
|
<where>
|
||||||
|
<if test="dataUpdateTime != null "> and data_update_time = #{dataUpdateTime}</if>
|
||||||
|
<if test="category != null and category != ''"> and category = #{category}</if>
|
||||||
|
<if test="totalKwh != null "> and total_kwh = #{totalKwh}</if>
|
||||||
|
<if test="sharpKwh != null "> and sharp_kwh = #{sharpKwh}</if>
|
||||||
|
<if test="peakKwh != null "> and peak_kwh = #{peakKwh}</if>
|
||||||
|
<if test="flatKwh != null "> and flat_kwh = #{flatKwh}</if>
|
||||||
|
<if test="valleyKwh != null "> and valley_kwh = #{valleyKwh}</if>
|
||||||
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectEmsAmmeterDataById" parameterType="Long" resultMap="EmsAmmeterDataResult">
|
||||||
|
<include refid="selectEmsAmmeterDataVo"/>
|
||||||
|
where id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<insert id="insertEmsAmmeterData" parameterType="EmsAmmeterData" useGeneratedKeys="true" keyProperty="id">
|
||||||
|
insert into ems_ammeter_data
|
||||||
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="dataUpdateTime != null">data_update_time,</if>
|
||||||
|
<if test="category != null">category,</if>
|
||||||
|
<if test="totalKwh != null">total_kwh,</if>
|
||||||
|
<if test="sharpKwh != null">sharp_kwh,</if>
|
||||||
|
<if test="peakKwh != null">peak_kwh,</if>
|
||||||
|
<if test="flatKwh != null">flat_kwh,</if>
|
||||||
|
<if test="valleyKwh != null">valley_kwh,</if>
|
||||||
|
<if test="createBy != null">create_by,</if>
|
||||||
|
<if test="createTime != null">create_time,</if>
|
||||||
|
<if test="updateBy != null">update_by,</if>
|
||||||
|
<if test="updateTime != null">update_time,</if>
|
||||||
|
<if test="remark != null">remark,</if>
|
||||||
|
<if test="siteId != null">site_id,</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
|
</trim>
|
||||||
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="dataUpdateTime != null">#{dataUpdateTime},</if>
|
||||||
|
<if test="category != null">#{category},</if>
|
||||||
|
<if test="totalKwh != null">#{totalKwh},</if>
|
||||||
|
<if test="sharpKwh != null">#{sharpKwh},</if>
|
||||||
|
<if test="peakKwh != null">#{peakKwh},</if>
|
||||||
|
<if test="flatKwh != null">#{flatKwh},</if>
|
||||||
|
<if test="valleyKwh != null">#{valleyKwh},</if>
|
||||||
|
<if test="createBy != null">#{createBy},</if>
|
||||||
|
<if test="createTime != null">#{createTime},</if>
|
||||||
|
<if test="updateBy != null">#{updateBy},</if>
|
||||||
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
|
<if test="remark != null">#{remark},</if>
|
||||||
|
<if test="siteId != null">#{siteId},</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
|
</trim>
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="updateEmsAmmeterData" parameterType="EmsAmmeterData">
|
||||||
|
update ems_ammeter_data
|
||||||
|
<trim prefix="SET" suffixOverrides=",">
|
||||||
|
<if test="dataUpdateTime != null">data_update_time = #{dataUpdateTime},</if>
|
||||||
|
<if test="category != null">category = #{category},</if>
|
||||||
|
<if test="totalKwh != null">total_kwh = #{totalKwh},</if>
|
||||||
|
<if test="sharpKwh != null">sharp_kwh = #{sharpKwh},</if>
|
||||||
|
<if test="peakKwh != null">peak_kwh = #{peakKwh},</if>
|
||||||
|
<if test="flatKwh != null">flat_kwh = #{flatKwh},</if>
|
||||||
|
<if test="valleyKwh != null">valley_kwh = #{valleyKwh},</if>
|
||||||
|
<if test="createBy != null">create_by = #{createBy},</if>
|
||||||
|
<if test="createTime != null">create_time = #{createTime},</if>
|
||||||
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
||||||
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
|
</trim>
|
||||||
|
where id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<delete id="deleteEmsAmmeterDataById" parameterType="Long">
|
||||||
|
delete from ems_ammeter_data where id = #{id}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<delete id="deleteEmsAmmeterDataByIds" parameterType="String">
|
||||||
|
delete from ems_ammeter_data where id in
|
||||||
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<select id="getAmmeterDetailInfo" resultType="com.xzzn.ems.domain.vo.AmmeterDataDetailInfo">
|
||||||
|
SELECT t.category as category,
|
||||||
|
t.total_kwh as totalKwh,
|
||||||
|
t.sharp_kwh as sharpKwh,
|
||||||
|
t.flat_kwh as flatKwh,
|
||||||
|
t.peak_kwh as peakKwh,
|
||||||
|
t.device_id as deviceId,
|
||||||
|
t.valley_kwh as valleyKwh,
|
||||||
|
Max(t.data_update_time) as updateTime
|
||||||
|
FROM ems_ammeter_data t
|
||||||
|
INNER JOIN (
|
||||||
|
SELECT p.site_id, p.device_id,p.category,MAX(p.data_update_time) AS max_update_time
|
||||||
|
FROM ems_ammeter_data p
|
||||||
|
WHERE p.site_id = #{siteId} and p.device_id = #{deviceId}
|
||||||
|
GROUP BY p.site_id,p.device_id,p.category
|
||||||
|
) latest on t.device_id = latest.device_id and t.data_update_time = latest.max_update_time
|
||||||
|
WHERE t.site_id = #{siteId} and t.device_id = #{deviceId}
|
||||||
|
group by t.category,t.total_kwh,t.sharp_kwh,t.flat_kwh,t.peak_kwh,t.valley_kwh,t.device_id
|
||||||
|
order by updateTime desc
|
||||||
|
</select>
|
||||||
|
</mapper>
|
@ -26,10 +26,43 @@
|
|||||||
<result property="remark" column="remark" />
|
<result property="remark" column="remark" />
|
||||||
<result property="siteId" column="site_id" />
|
<result property="siteId" column="site_id" />
|
||||||
<result property="deviceId" column="device_id" />
|
<result property="deviceId" column="device_id" />
|
||||||
|
<result property="stackDeviceId" column="stack_device_id" />
|
||||||
|
<result property="maxAllowedChargePower" column="max_allowed_charge_power" />
|
||||||
|
<result property="maxAllowedDischargePower" column="max_allowed_discharge_power" />
|
||||||
|
<result property="maxAllowedChargeVoltage" column="max_allowed_charge_voltage" />
|
||||||
|
<result property="maxAllowedDischargeVoltage" column="max_allowed_discharge_voltage" />
|
||||||
|
<result property="maxAllowedChargeCurrent" column="max_allowed_charge_current" />
|
||||||
|
<result property="maxAllowedDischargeCurrent" column="max_allowed_discharge_current" />
|
||||||
|
<result property="batteryPackVoltage" column="battery_pack_voltage" />
|
||||||
|
<result property="batteryPackCurrent" column="battery_pack_current" />
|
||||||
|
<result property="batteryPackTemp" column="battery_pack_temp" />
|
||||||
|
<result property="batteryPackSoc" column="battery_pack_soc" />
|
||||||
|
<result property="batteryPackSoh" column="battery_pack_soh" />
|
||||||
|
<result property="batteryPackInsulationResistance" column="battery_pack_insulation_resistance" />
|
||||||
|
<result property="avgCellVoltage" column="avg_cell_voltage" />
|
||||||
|
<result property="avgCellTemp" column="avg_cell_temp" />
|
||||||
|
<result property="maxCellVoltage" column="max_cell_voltage" />
|
||||||
|
<result property="maxCellVoltageId" column="max_cell_voltage_id" />
|
||||||
|
<result property="minCellVoltage" column="min_cell_voltage" />
|
||||||
|
<result property="minCellVoltageId" column="min_cell_voltage_id" />
|
||||||
|
<result property="maxCellTemp" column="max_cell_temp" />
|
||||||
|
<result property="maxCellTempId" column="max_cell_temp_id" />
|
||||||
|
<result property="minCellTemp" column="min_cell_temp" />
|
||||||
|
<result property="minCellTempId" column="min_cell_temp_id" />
|
||||||
|
<result property="maxCellSoc" column="max_cell_soc" />
|
||||||
|
<result property="maxCellSocId" column="max_cell_soc_id" />
|
||||||
|
<result property="minCellSoc" column="min_cell_soc" />
|
||||||
|
<result property="minCellSocId" column="min_cell_soc_id" />
|
||||||
|
<result property="maxCellSoh" column="max_cell_soh" />
|
||||||
|
<result property="maxCellSohId" column="max_cell_soh_id" />
|
||||||
|
<result property="minCellSoh" column="min_cell_soh" />
|
||||||
|
<result property="minCellSohId" column="min_cell_soh_id" />
|
||||||
|
<result property="totalChargeEnergy" column="total_charge_energy" />
|
||||||
|
<result property="totalDischargeEnergy" column="total_discharge_energy" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsBatteryClusterVo">
|
<sql id="selectEmsBatteryClusterVo">
|
||||||
select id, work_status, pcs_communication_status, ems_communication_status, cluster_voltage, chargeable_capacity, total_charged_capacity, cluster_current, dischargeable_capacity, total_discharged_capacity, soh, average_temperature, insulation_resistance, current_soc, create_by, create_time, update_by, update_time, remark, site_id, device_id from ems_battery_cluster
|
select id, work_status, pcs_communication_status, ems_communication_status, cluster_voltage, chargeable_capacity, total_charged_capacity, cluster_current, dischargeable_capacity, total_discharged_capacity, soh, average_temperature, insulation_resistance, current_soc, create_by, create_time, update_by, update_time, remark, site_id, device_id, stack_device_id, max_allowed_charge_power, max_allowed_discharge_power, max_allowed_charge_voltage, max_allowed_discharge_voltage, max_allowed_charge_current, max_allowed_discharge_current, battery_pack_voltage, battery_pack_current, battery_pack_temp, battery_pack_soc, battery_pack_soh, battery_pack_insulation_resistance, avg_cell_voltage, avg_cell_temp, max_cell_voltage, max_cell_voltage_id, min_cell_voltage, min_cell_voltage_id, max_cell_temp, max_cell_temp_id, min_cell_temp, min_cell_temp_id, max_cell_soc, max_cell_soc_id, min_cell_soc, min_cell_soc_id, max_cell_soh, max_cell_soh_id, min_cell_soh, min_cell_soh_id, total_charge_energy, total_discharge_energy from ems_battery_cluster
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsBatteryClusterList" parameterType="EmsBatteryCluster" resultMap="EmsBatteryClusterResult">
|
<select id="selectEmsBatteryClusterList" parameterType="EmsBatteryCluster" resultMap="EmsBatteryClusterResult">
|
||||||
@ -48,8 +81,41 @@
|
|||||||
<if test="averageTemperature != null "> and average_temperature = #{averageTemperature}</if>
|
<if test="averageTemperature != null "> and average_temperature = #{averageTemperature}</if>
|
||||||
<if test="insulationResistance != null "> and insulation_resistance = #{insulationResistance}</if>
|
<if test="insulationResistance != null "> and insulation_resistance = #{insulationResistance}</if>
|
||||||
<if test="currentSoc != null "> and current_soc = #{currentSoc}</if>
|
<if test="currentSoc != null "> and current_soc = #{currentSoc}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
|
<if test="stackDeviceId != null and stackDeviceId != ''"> and stack_device_id = #{stackDeviceId}</if>
|
||||||
|
<if test="maxAllowedChargePower != null "> and max_allowed_charge_power = #{maxAllowedChargePower}</if>
|
||||||
|
<if test="maxAllowedDischargePower != null "> and max_allowed_discharge_power = #{maxAllowedDischargePower}</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null "> and max_allowed_charge_voltage = #{maxAllowedChargeVoltage}</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null "> and max_allowed_discharge_voltage = #{maxAllowedDischargeVoltage}</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null "> and max_allowed_charge_current = #{maxAllowedChargeCurrent}</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null "> and max_allowed_discharge_current = #{maxAllowedDischargeCurrent}</if>
|
||||||
|
<if test="batteryPackVoltage != null "> and battery_pack_voltage = #{batteryPackVoltage}</if>
|
||||||
|
<if test="batteryPackCurrent != null "> and battery_pack_current = #{batteryPackCurrent}</if>
|
||||||
|
<if test="batteryPackTemp != null "> and battery_pack_temp = #{batteryPackTemp}</if>
|
||||||
|
<if test="batteryPackSoc != null "> and battery_pack_soc = #{batteryPackSoc}</if>
|
||||||
|
<if test="batteryPackSoh != null "> and battery_pack_soh = #{batteryPackSoh}</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null "> and battery_pack_insulation_resistance = #{batteryPackInsulationResistance}</if>
|
||||||
|
<if test="avgCellVoltage != null "> and avg_cell_voltage = #{avgCellVoltage}</if>
|
||||||
|
<if test="avgCellTemp != null "> and avg_cell_temp = #{avgCellTemp}</if>
|
||||||
|
<if test="maxCellVoltage != null "> and max_cell_voltage = #{maxCellVoltage}</if>
|
||||||
|
<if test="maxCellVoltageId != null "> and max_cell_voltage_id = #{maxCellVoltageId}</if>
|
||||||
|
<if test="minCellVoltage != null "> and min_cell_voltage = #{minCellVoltage}</if>
|
||||||
|
<if test="minCellVoltageId != null "> and min_cell_voltage_id = #{minCellVoltageId}</if>
|
||||||
|
<if test="maxCellTemp != null "> and max_cell_temp = #{maxCellTemp}</if>
|
||||||
|
<if test="maxCellTempId != null "> and max_cell_temp_id = #{maxCellTempId}</if>
|
||||||
|
<if test="minCellTemp != null "> and min_cell_temp = #{minCellTemp}</if>
|
||||||
|
<if test="minCellTempId != null "> and min_cell_temp_id = #{minCellTempId}</if>
|
||||||
|
<if test="maxCellSoc != null "> and max_cell_soc = #{maxCellSoc}</if>
|
||||||
|
<if test="maxCellSocId != null "> and max_cell_soc_id = #{maxCellSocId}</if>
|
||||||
|
<if test="minCellSoc != null "> and min_cell_soc = #{minCellSoc}</if>
|
||||||
|
<if test="minCellSocId != null "> and min_cell_soc_id = #{minCellSocId}</if>
|
||||||
|
<if test="maxCellSoh != null "> and max_cell_soh = #{maxCellSoh}</if>
|
||||||
|
<if test="maxCellSohId != null "> and max_cell_soh_id = #{maxCellSohId}</if>
|
||||||
|
<if test="minCellSoh != null "> and min_cell_soh = #{minCellSoh}</if>
|
||||||
|
<if test="minCellSohId != null "> and min_cell_soh_id = #{minCellSohId}</if>
|
||||||
|
<if test="totalChargeEnergy != null "> and total_charge_energy = #{totalChargeEnergy}</if>
|
||||||
|
<if test="totalDischargeEnergy != null "> and total_discharge_energy = #{totalDischargeEnergy}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -80,7 +146,40 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
|
<if test="stackDeviceId != null and stackDeviceId != ''">stack_device_id,</if>
|
||||||
|
<if test="maxAllowedChargePower != null">max_allowed_charge_power,</if>
|
||||||
|
<if test="maxAllowedDischargePower != null">max_allowed_discharge_power,</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null">max_allowed_charge_voltage,</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null">max_allowed_discharge_voltage,</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null">max_allowed_charge_current,</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null">max_allowed_discharge_current,</if>
|
||||||
|
<if test="batteryPackVoltage != null">battery_pack_voltage,</if>
|
||||||
|
<if test="batteryPackCurrent != null">battery_pack_current,</if>
|
||||||
|
<if test="batteryPackTemp != null">battery_pack_temp,</if>
|
||||||
|
<if test="batteryPackSoc != null">battery_pack_soc,</if>
|
||||||
|
<if test="batteryPackSoh != null">battery_pack_soh,</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null">battery_pack_insulation_resistance,</if>
|
||||||
|
<if test="avgCellVoltage != null">avg_cell_voltage,</if>
|
||||||
|
<if test="avgCellTemp != null">avg_cell_temp,</if>
|
||||||
|
<if test="maxCellVoltage != null">max_cell_voltage,</if>
|
||||||
|
<if test="maxCellVoltageId != null">max_cell_voltage_id,</if>
|
||||||
|
<if test="minCellVoltage != null">min_cell_voltage,</if>
|
||||||
|
<if test="minCellVoltageId != null">min_cell_voltage_id,</if>
|
||||||
|
<if test="maxCellTemp != null">max_cell_temp,</if>
|
||||||
|
<if test="maxCellTempId != null">max_cell_temp_id,</if>
|
||||||
|
<if test="minCellTemp != null">min_cell_temp,</if>
|
||||||
|
<if test="minCellTempId != null">min_cell_temp_id,</if>
|
||||||
|
<if test="maxCellSoc != null">max_cell_soc,</if>
|
||||||
|
<if test="maxCellSocId != null">max_cell_soc_id,</if>
|
||||||
|
<if test="minCellSoc != null">min_cell_soc,</if>
|
||||||
|
<if test="minCellSocId != null">min_cell_soc_id,</if>
|
||||||
|
<if test="maxCellSoh != null">max_cell_soh,</if>
|
||||||
|
<if test="maxCellSohId != null">max_cell_soh_id,</if>
|
||||||
|
<if test="minCellSoh != null">min_cell_soh,</if>
|
||||||
|
<if test="minCellSohId != null">min_cell_soh_id,</if>
|
||||||
|
<if test="totalChargeEnergy != null">total_charge_energy,</if>
|
||||||
|
<if test="totalDischargeEnergy != null">total_discharge_energy,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="workStatus != null">#{workStatus},</if>
|
<if test="workStatus != null">#{workStatus},</if>
|
||||||
@ -102,7 +201,40 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
|
<if test="stackDeviceId != null and stackDeviceId != ''">#{stackDeviceId},</if>
|
||||||
|
<if test="maxAllowedChargePower != null">#{maxAllowedChargePower},</if>
|
||||||
|
<if test="maxAllowedDischargePower != null">#{maxAllowedDischargePower},</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null">#{maxAllowedChargeVoltage},</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null">#{maxAllowedDischargeVoltage},</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null">#{maxAllowedChargeCurrent},</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null">#{maxAllowedDischargeCurrent},</if>
|
||||||
|
<if test="batteryPackVoltage != null">#{batteryPackVoltage},</if>
|
||||||
|
<if test="batteryPackCurrent != null">#{batteryPackCurrent},</if>
|
||||||
|
<if test="batteryPackTemp != null">#{batteryPackTemp},</if>
|
||||||
|
<if test="batteryPackSoc != null">#{batteryPackSoc},</if>
|
||||||
|
<if test="batteryPackSoh != null">#{batteryPackSoh},</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null">#{batteryPackInsulationResistance},</if>
|
||||||
|
<if test="avgCellVoltage != null">#{avgCellVoltage},</if>
|
||||||
|
<if test="avgCellTemp != null">#{avgCellTemp},</if>
|
||||||
|
<if test="maxCellVoltage != null">#{maxCellVoltage},</if>
|
||||||
|
<if test="maxCellVoltageId != null">#{maxCellVoltageId},</if>
|
||||||
|
<if test="minCellVoltage != null">#{minCellVoltage},</if>
|
||||||
|
<if test="minCellVoltageId != null">#{minCellVoltageId},</if>
|
||||||
|
<if test="maxCellTemp != null">#{maxCellTemp},</if>
|
||||||
|
<if test="maxCellTempId != null">#{maxCellTempId},</if>
|
||||||
|
<if test="minCellTemp != null">#{minCellTemp},</if>
|
||||||
|
<if test="minCellTempId != null">#{minCellTempId},</if>
|
||||||
|
<if test="maxCellSoc != null">#{maxCellSoc},</if>
|
||||||
|
<if test="maxCellSocId != null">#{maxCellSocId},</if>
|
||||||
|
<if test="minCellSoc != null">#{minCellSoc},</if>
|
||||||
|
<if test="minCellSocId != null">#{minCellSocId},</if>
|
||||||
|
<if test="maxCellSoh != null">#{maxCellSoh},</if>
|
||||||
|
<if test="maxCellSohId != null">#{maxCellSohId},</if>
|
||||||
|
<if test="minCellSoh != null">#{minCellSoh},</if>
|
||||||
|
<if test="minCellSohId != null">#{minCellSohId},</if>
|
||||||
|
<if test="totalChargeEnergy != null">#{totalChargeEnergy},</if>
|
||||||
|
<if test="totalDischargeEnergy != null">#{totalDischargeEnergy},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -128,7 +260,40 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
|
<if test="stackDeviceId != null and stackDeviceId != ''">stack_device_id = #{stackDeviceId},</if>
|
||||||
|
<if test="maxAllowedChargePower != null">max_allowed_charge_power = #{maxAllowedChargePower},</if>
|
||||||
|
<if test="maxAllowedDischargePower != null">max_allowed_discharge_power = #{maxAllowedDischargePower},</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null">max_allowed_charge_voltage = #{maxAllowedChargeVoltage},</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null">max_allowed_discharge_voltage = #{maxAllowedDischargeVoltage},</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null">max_allowed_charge_current = #{maxAllowedChargeCurrent},</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null">max_allowed_discharge_current = #{maxAllowedDischargeCurrent},</if>
|
||||||
|
<if test="batteryPackVoltage != null">battery_pack_voltage = #{batteryPackVoltage},</if>
|
||||||
|
<if test="batteryPackCurrent != null">battery_pack_current = #{batteryPackCurrent},</if>
|
||||||
|
<if test="batteryPackTemp != null">battery_pack_temp = #{batteryPackTemp},</if>
|
||||||
|
<if test="batteryPackSoc != null">battery_pack_soc = #{batteryPackSoc},</if>
|
||||||
|
<if test="batteryPackSoh != null">battery_pack_soh = #{batteryPackSoh},</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null">battery_pack_insulation_resistance = #{batteryPackInsulationResistance},</if>
|
||||||
|
<if test="avgCellVoltage != null">avg_cell_voltage = #{avgCellVoltage},</if>
|
||||||
|
<if test="avgCellTemp != null">avg_cell_temp = #{avgCellTemp},</if>
|
||||||
|
<if test="maxCellVoltage != null">max_cell_voltage = #{maxCellVoltage},</if>
|
||||||
|
<if test="maxCellVoltageId != null">max_cell_voltage_id = #{maxCellVoltageId},</if>
|
||||||
|
<if test="minCellVoltage != null">min_cell_voltage = #{minCellVoltage},</if>
|
||||||
|
<if test="minCellVoltageId != null">min_cell_voltage_id = #{minCellVoltageId},</if>
|
||||||
|
<if test="maxCellTemp != null">max_cell_temp = #{maxCellTemp},</if>
|
||||||
|
<if test="maxCellTempId != null">max_cell_temp_id = #{maxCellTempId},</if>
|
||||||
|
<if test="minCellTemp != null">min_cell_temp = #{minCellTemp},</if>
|
||||||
|
<if test="minCellTempId != null">min_cell_temp_id = #{minCellTempId},</if>
|
||||||
|
<if test="maxCellSoc != null">max_cell_soc = #{maxCellSoc},</if>
|
||||||
|
<if test="maxCellSocId != null">max_cell_soc_id = #{maxCellSocId},</if>
|
||||||
|
<if test="minCellSoc != null">min_cell_soc = #{minCellSoc},</if>
|
||||||
|
<if test="minCellSocId != null">min_cell_soc_id = #{minCellSocId},</if>
|
||||||
|
<if test="maxCellSoh != null">max_cell_soh = #{maxCellSoh},</if>
|
||||||
|
<if test="maxCellSohId != null">max_cell_soh_id = #{maxCellSohId},</if>
|
||||||
|
<if test="minCellSoh != null">min_cell_soh = #{minCellSoh},</if>
|
||||||
|
<if test="minCellSohId != null">min_cell_soh_id = #{minCellSohId},</if>
|
||||||
|
<if test="totalChargeEnergy != null">total_charge_energy = #{totalChargeEnergy},</if>
|
||||||
|
<if test="totalDischargeEnergy != null">total_discharge_energy = #{totalDischargeEnergy},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -144,17 +309,47 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getBMSBatteryCluster" parameterType="Long" resultType="com.xzzn.ems.domain.vo.BMSBatteryClusterVo">
|
<select id="getBMSBatteryCluster" parameterType="String" resultType="com.xzzn.ems.domain.vo.BMSBatteryClusterVo">
|
||||||
select td.device_name as deviceName, tmp.work_status as workStatus,
|
select td.device_name as deviceName, tmp.work_status as workStatus,
|
||||||
tmp.pcs_communication_status as pcsCommunicationStatus, tmp.ems_communication_status as emsCommunicationStatus,
|
tmp.pcs_communication_status as pcsCommunicationStatus, tmp.ems_communication_status as emsCommunicationStatus,
|
||||||
tmp.cluster_voltage as clusterVoltage,tmp.chargeable_capacity as chargeableCapacity, tmp.total_charged_capacity as totalChargedCapacity,
|
tmp.cluster_voltage as clusterVoltage,tmp.chargeable_capacity as chargeableCapacity,
|
||||||
tmp.cluster_current as clusterCurrent,tmp.dischargeable_capacity as dischargeableCapacity, tmp.total_discharged_capacity as totalDischargedCapacity,
|
tmp.total_charged_capacity as totalChargedCapacity,
|
||||||
tmp.soh as soh,tmp.average_temperature as averageTemperature,tmp.insulation_resistance as insulationResistance,
|
tmp.cluster_current as clusterCurrent,tmp.dischargeable_capacity as dischargeableCapacity,
|
||||||
tmp.current_soc as currentSoc,tmp.site_id as siteId,tmp.device_id as deviceId
|
tmp.total_discharged_capacity as totalDischargedCapacity,
|
||||||
from ems_battery_cluster tmp left join ems_devices_setting td on tmp.device_id = td.id and tmp.site_id = td.site_id
|
tmp.soh as soh,tmp.average_temperature as averageTemperature,tmp.insulation_resistance as insulationResistance,
|
||||||
|
tmp.current_soc as currentSoc,tmp.site_id as siteId,tmp.device_id as deviceId,
|
||||||
|
tmp.avg_cell_voltage as avgVoltage,tmp.avg_cell_temp as avgTemp,tmp.avg_cell_temp as avgSoc,
|
||||||
|
tmp.max_cell_voltage as maxVoltage,tmp.max_cell_voltage_id as maxVoltageId,
|
||||||
|
tmp.min_cell_voltage as minVolatage,tmp.min_cell_voltage_id as minVoltageId,
|
||||||
|
tmp.max_cell_temp as maxTem,tmp.max_cell_temp_id as maxTempId,
|
||||||
|
tmp.min_cell_temp as minTemp,tmp.min_cell_temp_id as minTempId,
|
||||||
|
tmp.max_cell_soc as maxSoc,tmp.max_cell_soc_id as maxSocId,
|
||||||
|
tmp.min_cell_soc as minSoc,tmp.min_cell_soc_id as minSocId
|
||||||
|
from ems_battery_cluster tmp left join ems_devices_setting td on tmp.device_id = td.device_id and tmp.site_id = td.site_id
|
||||||
|
INNER JOIN (
|
||||||
|
SELECT p.site_id, p.device_id, MAX(p.update_time) AS max_update_time
|
||||||
|
FROM ems_battery_cluster p
|
||||||
|
WHERE p.site_id = #{siteId}
|
||||||
|
GROUP BY p.site_id,p.device_id
|
||||||
|
) latest on tmp.device_id = latest.device_id and tmp.update_time = latest.max_update_time
|
||||||
where tmp.site_id = #{siteId}
|
where tmp.site_id = #{siteId}
|
||||||
and tmp.update_time = (select MAX(t.update_time) FROM ems_battery_cluster t where t.site_id = tmp.site_id
|
|
||||||
and t.device_id = tmp.device_id)
|
|
||||||
order by tmp.device_id
|
order by tmp.device_id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getBmsBatteryData" resultType="com.xzzn.ems.domain.vo.BMSBatteryDataList">
|
||||||
|
SELECT t.cluster_voltage as clusterVoltage,t.cluster_current as clusterCurrent,
|
||||||
|
t.current_soc as currentSoc,t.site_id as siteId,t.device_id as clusterId,
|
||||||
|
t.max_cell_voltage as maxVoltage,t.min_cell_voltage as minVoltage,
|
||||||
|
t.max_cell_temp as maxTemperature,t.min_cell_temp as minTemperature
|
||||||
|
FROM ems_battery_cluster t
|
||||||
|
INNER JOIN (
|
||||||
|
SELECT p.site_id, p.device_id, MAX(p.update_time) AS max_update_time
|
||||||
|
FROM ems_battery_cluster p
|
||||||
|
WHERE p.site_id = #{siteId} and p.stack_device_id = #{stackDeviceId}
|
||||||
|
GROUP BY p.site_id,p.device_id
|
||||||
|
) latest on t.device_id = latest.device_id and t.update_time = latest.max_update_time
|
||||||
|
where t.site_id = #{siteId} and t.stack_device_id = #{stackDeviceId}
|
||||||
|
group by t.cluster_voltage,t.cluster_current,t.current_soc,t.site_id,t.device_id,t.max_cell_voltage,t.min_cell_voltage,
|
||||||
|
t.max_cell_temp,t.min_cell_temp
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -21,10 +21,11 @@
|
|||||||
<result property="remark" column="remark" />
|
<result property="remark" column="remark" />
|
||||||
<result property="siteId" column="site_id" />
|
<result property="siteId" column="site_id" />
|
||||||
<result property="deviceId" column="device_id" />
|
<result property="deviceId" column="device_id" />
|
||||||
|
<result property="clusterDeviceId" column="cluster_device_id" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsBatteryDataVo">
|
<sql id="selectEmsBatteryDataVo">
|
||||||
select id, 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 from ems_battery_data
|
select id, 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 from ems_battery_data
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsBatteryDataList" parameterType="EmsBatteryData" resultMap="EmsBatteryDataResult">
|
<select id="selectEmsBatteryDataList" parameterType="EmsBatteryData" resultMap="EmsBatteryDataResult">
|
||||||
@ -38,8 +39,9 @@
|
|||||||
<if test="soc != null "> and soc = #{soc}</if>
|
<if test="soc != null "> and soc = #{soc}</if>
|
||||||
<if test="soh != null "> and soh = #{soh}</if>
|
<if test="soh != null "> and soh = #{soh}</if>
|
||||||
<if test="dataTimestamp != null "> and data_timestamp = #{dataTimestamp}</if>
|
<if test="dataTimestamp != null "> and data_timestamp = #{dataTimestamp}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
|
<if test="clusterDeviceId != null and clusterDeviceId != ''"> and cluster_device_id = #{clusterDeviceId}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -65,7 +67,8 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
|
<if test="clusterDeviceId != null and clusterDeviceId != ''">cluster_device_id,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="batteryPack != null">#{batteryPack},</if>
|
<if test="batteryPack != null">#{batteryPack},</if>
|
||||||
@ -82,7 +85,8 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
|
<if test="clusterDeviceId != null and clusterDeviceId != ''">#{clusterDeviceId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -103,7 +107,8 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
|
<if test="clusterDeviceId != null and clusterDeviceId != ''">cluster_device_id = #{clusterDeviceId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -119,9 +124,91 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getBatteryDataBySiteId" parameterType="Long" resultMap="EmsBatteryDataResult">
|
<select id="getBatteryDataBySiteId" parameterType="String" resultMap="EmsBatteryDataResult">
|
||||||
<include refid="selectEmsBatteryDataVo"/>
|
<include refid="selectEmsBatteryDataVo"/>
|
||||||
where site_id = #{siteId}
|
WHERE site_id = #{siteId} AND data_timestamp >= CURDATE()
|
||||||
and DATE(data_timestamp) = DATE(NOW())
|
ORDER BY data_timestamp desc limit 1
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getBatteryDataByClusterId" resultType="com.xzzn.ems.domain.vo.BatteryClusterDataDetailVo">
|
||||||
|
select t.site_id as siteId,t.cluster_device_id as clusterId,
|
||||||
|
AVG(t.voltage) as avgVoltage,MAX(t.voltage) as maxVoltage,MIN(t.voltage) as minVoltage,
|
||||||
|
AVG(t.temperature) as avgTemp,MAX(t.temperature) as maxTemp,MIN(t.temperature) as minTemp,
|
||||||
|
AVG(t.soc) as avgSoc,MAX(t.soc) as maxSoc,MIN(t.soc) as minSoc
|
||||||
|
from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId}
|
||||||
|
and t.cluster_device_id = #{clusterDeviceId}
|
||||||
|
and t.update_time = (select MAX(update_time) FROM ems_battery_data where site_id = t.site_id
|
||||||
|
and device_id = t.device_id and cluster_device_id = t.cluster_device_id)
|
||||||
|
group by t.site_id,t.cluster_device_id
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getDataIdsMap" parameterType="com.xzzn.ems.domain.vo.BatteryClusterDataDetailVo" resultType="java.util.Map">
|
||||||
|
<if test="maxVoltage != null">
|
||||||
|
select 'maxVoltageId' as type, t.device_id from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId} and t.cluster_device_id = #{clusterId} and t.voltage = #{maxVoltage}
|
||||||
|
union all
|
||||||
|
</if>
|
||||||
|
<if test="minVoltage != null">
|
||||||
|
select 'minVoltageId' as type, t.device_id from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId} and t.cluster_device_id = #{clusterId} and t.voltage = #{minVoltage}
|
||||||
|
union all
|
||||||
|
</if>
|
||||||
|
<if test="maxTemp != null">
|
||||||
|
select 'maxTempId' as type, t.device_id from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId} and t.cluster_device_id = #{clusterId} and t.temperature = #{maxTemp}
|
||||||
|
union all
|
||||||
|
</if>
|
||||||
|
<if test="minTemp != null">
|
||||||
|
select 'minTempId' as type, t.device_id from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId} and t.cluster_device_id = #{clusterId} and t.temperature = #{minTemp}
|
||||||
|
union all
|
||||||
|
</if>
|
||||||
|
<if test="maxSoc != null">
|
||||||
|
select 'maxSocId' as type, t.device_id from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId} and t.cluster_device_id = #{clusterId} and t.soc = #{maxSoc}
|
||||||
|
union all
|
||||||
|
</if>
|
||||||
|
<if test="minSoc != null">
|
||||||
|
select 'minSocId' as type, t.device_id from ems_battery_data t
|
||||||
|
where t.site_id = #{siteId} and t.cluster_device_id = #{clusterId} and t.soc = #{minSoc}
|
||||||
|
union all
|
||||||
|
</if>
|
||||||
|
SELECT NULL AS type, NULL AS device_id FROM DUAL WHERE 1=0
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getAllBatteryDataByClusterId" parameterType="String" resultType="com.xzzn.ems.domain.vo.BatteryDataStatsListVo">
|
||||||
|
SELECT
|
||||||
|
update_time as updateTime,
|
||||||
|
voltage, temperature, soc, soh,
|
||||||
|
device_id as deviceId
|
||||||
|
FROM (
|
||||||
|
SELECT
|
||||||
|
t.update_time, t.voltage, t.temperature, t.soc, t.soh, t.device_id,
|
||||||
|
ROW_NUMBER() OVER (
|
||||||
|
PARTITION BY t.device_id ORDER BY t.update_time DESC
|
||||||
|
) AS rn
|
||||||
|
FROM ems_battery_data t
|
||||||
|
WHERE t.cluster_device_id = #{clusterDeviceId}
|
||||||
|
) ranked
|
||||||
|
WHERE rn = 1
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<insert id="insertEmsBatteryDataList" parameterType="java.util.List">
|
||||||
|
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
|
||||||
|
<foreach collection="list" item="item" separator=",">
|
||||||
|
(
|
||||||
|
#{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}
|
||||||
|
)
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
</mapper>
|
</mapper>
|
@ -26,10 +26,42 @@
|
|||||||
<result property="remark" column="remark" />
|
<result property="remark" column="remark" />
|
||||||
<result property="siteId" column="site_id" />
|
<result property="siteId" column="site_id" />
|
||||||
<result property="deviceId" column="device_id" />
|
<result property="deviceId" column="device_id" />
|
||||||
|
<result property="maxAllowedChargePower" column="max_allowed_charge_power" />
|
||||||
|
<result property="maxAllowedDischargePower" column="max_allowed_discharge_power" />
|
||||||
|
<result property="maxAllowedChargeVoltage" column="max_allowed_charge_voltage" />
|
||||||
|
<result property="maxAllowedDischargeVoltage" column="max_allowed_discharge_voltage" />
|
||||||
|
<result property="maxAllowedChargeCurrent" column="max_allowed_charge_current" />
|
||||||
|
<result property="maxAllowedDischargeCurrent" column="max_allowed_discharge_current" />
|
||||||
|
<result property="batteryPackVoltage" column="battery_pack_voltage" />
|
||||||
|
<result property="batteryPackCurrent" column="battery_pack_current" />
|
||||||
|
<result property="batteryPackTemp" column="battery_pack_temp" />
|
||||||
|
<result property="batteryPackSoc" column="battery_pack_soc" />
|
||||||
|
<result property="batteryPackSoh" column="battery_pack_soh" />
|
||||||
|
<result property="batteryPackInsulationResistance" column="battery_pack_insulation_resistance" />
|
||||||
|
<result property="avgCellVoltage" column="avg_cell_voltage" />
|
||||||
|
<result property="avgCellTemp" column="avg_cell_temp" />
|
||||||
|
<result property="maxCellVoltage" column="max_cell_voltage" />
|
||||||
|
<result property="maxCellVoltageId" column="max_cell_voltage_id" />
|
||||||
|
<result property="minCellVoltage" column="min_cell_voltage" />
|
||||||
|
<result property="minCellVoltageId" column="min_cell_voltage_id" />
|
||||||
|
<result property="maxCellTemp" column="max_cell_temp" />
|
||||||
|
<result property="maxCellTempId" column="max_cell_temp_id" />
|
||||||
|
<result property="minCellTemp" column="min_cell_temp" />
|
||||||
|
<result property="minCellTempId" column="min_cell_temp_id" />
|
||||||
|
<result property="maxCellSoc" column="max_cell_soc" />
|
||||||
|
<result property="maxCellSocId" column="max_cell_soc_id" />
|
||||||
|
<result property="minCellSoc" column="min_cell_soc" />
|
||||||
|
<result property="minCellSocId" column="min_cell_soc_id" />
|
||||||
|
<result property="maxCellSoh" column="max_cell_soh" />
|
||||||
|
<result property="maxCellSohId" column="max_cell_soh_id" />
|
||||||
|
<result property="minCellSoh" column="min_cell_soh" />
|
||||||
|
<result property="minCellSohId" column="min_cell_soh_id" />
|
||||||
|
<result property="totalChargeEnergy" column="total_charge_energy" />
|
||||||
|
<result property="totalDischargeEnergy" column="total_discharge_energy" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsBatteryStackVo">
|
<sql id="selectEmsBatteryStackVo">
|
||||||
select id, work_status, pcs_communication_status, ems_communication_status, total_voltage, chargeable_capacity, total_charged_capacity, total_current, dischargeable_capacity, total_discharged_capacity, soh, average_temperature, insulation_resistance, current_soc, create_by, create_time, update_by, update_time, remark, site_id, device_id from ems_battery_stack
|
select id, work_status, pcs_communication_status, ems_communication_status, total_voltage, chargeable_capacity, total_charged_capacity, total_current, dischargeable_capacity, total_discharged_capacity, soh, average_temperature, insulation_resistance, current_soc, create_by, create_time, update_by, update_time, remark, site_id, device_id, max_allowed_charge_power, max_allowed_discharge_power, max_allowed_charge_voltage, max_allowed_discharge_voltage, max_allowed_charge_current, max_allowed_discharge_current, battery_pack_voltage, battery_pack_current, battery_pack_temp, battery_pack_soc, battery_pack_soh, battery_pack_insulation_resistance, avg_cell_voltage, avg_cell_temp, max_cell_voltage, max_cell_voltage_id, min_cell_voltage, min_cell_voltage_id, max_cell_temp, max_cell_temp_id, min_cell_temp, min_cell_temp_id, max_cell_soc, max_cell_soc_id, min_cell_soc, min_cell_soc_id, max_cell_soh, max_cell_soh_id, min_cell_soh, min_cell_soh_id, total_charge_energy, total_discharge_energy from ems_battery_stack
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsBatteryStackList" parameterType="EmsBatteryStack" resultMap="EmsBatteryStackResult">
|
<select id="selectEmsBatteryStackList" parameterType="EmsBatteryStack" resultMap="EmsBatteryStackResult">
|
||||||
@ -48,8 +80,40 @@
|
|||||||
<if test="averageTemperature != null "> and average_temperature = #{averageTemperature}</if>
|
<if test="averageTemperature != null "> and average_temperature = #{averageTemperature}</if>
|
||||||
<if test="insulationResistance != null "> and insulation_resistance = #{insulationResistance}</if>
|
<if test="insulationResistance != null "> and insulation_resistance = #{insulationResistance}</if>
|
||||||
<if test="currentSoc != null "> and current_soc = #{currentSoc}</if>
|
<if test="currentSoc != null "> and current_soc = #{currentSoc}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
|
<if test="maxAllowedChargePower != null "> and max_allowed_charge_power = #{maxAllowedChargePower}</if>
|
||||||
|
<if test="maxAllowedDischargePower != null "> and max_allowed_discharge_power = #{maxAllowedDischargePower}</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null "> and max_allowed_charge_voltage = #{maxAllowedChargeVoltage}</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null "> and max_allowed_discharge_voltage = #{maxAllowedDischargeVoltage}</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null "> and max_allowed_charge_current = #{maxAllowedChargeCurrent}</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null "> and max_allowed_discharge_current = #{maxAllowedDischargeCurrent}</if>
|
||||||
|
<if test="batteryPackVoltage != null "> and battery_pack_voltage = #{batteryPackVoltage}</if>
|
||||||
|
<if test="batteryPackCurrent != null "> and battery_pack_current = #{batteryPackCurrent}</if>
|
||||||
|
<if test="batteryPackTemp != null "> and battery_pack_temp = #{batteryPackTemp}</if>
|
||||||
|
<if test="batteryPackSoc != null "> and battery_pack_soc = #{batteryPackSoc}</if>
|
||||||
|
<if test="batteryPackSoh != null "> and battery_pack_soh = #{batteryPackSoh}</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null "> and battery_pack_insulation_resistance = #{batteryPackInsulationResistance}</if>
|
||||||
|
<if test="avgCellVoltage != null "> and avg_cell_voltage = #{avgCellVoltage}</if>
|
||||||
|
<if test="avgCellTemp != null "> and avg_cell_temp = #{avgCellTemp}</if>
|
||||||
|
<if test="maxCellVoltage != null "> and max_cell_voltage = #{maxCellVoltage}</if>
|
||||||
|
<if test="maxCellVoltageId != null "> and max_cell_voltage_id = #{maxCellVoltageId}</if>
|
||||||
|
<if test="minCellVoltage != null "> and min_cell_voltage = #{minCellVoltage}</if>
|
||||||
|
<if test="minCellVoltageId != null "> and min_cell_voltage_id = #{minCellVoltageId}</if>
|
||||||
|
<if test="maxCellTemp != null "> and max_cell_temp = #{maxCellTemp}</if>
|
||||||
|
<if test="maxCellTempId != null "> and max_cell_temp_id = #{maxCellTempId}</if>
|
||||||
|
<if test="minCellTemp != null "> and min_cell_temp = #{minCellTemp}</if>
|
||||||
|
<if test="minCellTempId != null "> and min_cell_temp_id = #{minCellTempId}</if>
|
||||||
|
<if test="maxCellSoc != null "> and max_cell_soc = #{maxCellSoc}</if>
|
||||||
|
<if test="maxCellSocId != null "> and max_cell_soc_id = #{maxCellSocId}</if>
|
||||||
|
<if test="minCellSoc != null "> and min_cell_soc = #{minCellSoc}</if>
|
||||||
|
<if test="minCellSocId != null "> and min_cell_soc_id = #{minCellSocId}</if>
|
||||||
|
<if test="maxCellSoh != null "> and max_cell_soh = #{maxCellSoh}</if>
|
||||||
|
<if test="maxCellSohId != null "> and max_cell_soh_id = #{maxCellSohId}</if>
|
||||||
|
<if test="minCellSoh != null "> and min_cell_soh = #{minCellSoh}</if>
|
||||||
|
<if test="minCellSohId != null "> and min_cell_soh_id = #{minCellSohId}</if>
|
||||||
|
<if test="totalChargeEnergy != null "> and total_charge_energy = #{totalChargeEnergy}</if>
|
||||||
|
<if test="totalDischargeEnergy != null "> and total_discharge_energy = #{totalDischargeEnergy}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -80,7 +144,39 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
|
<if test="maxAllowedChargePower != null">max_allowed_charge_power,</if>
|
||||||
|
<if test="maxAllowedDischargePower != null">max_allowed_discharge_power,</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null">max_allowed_charge_voltage,</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null">max_allowed_discharge_voltage,</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null">max_allowed_charge_current,</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null">max_allowed_discharge_current,</if>
|
||||||
|
<if test="batteryPackVoltage != null">battery_pack_voltage,</if>
|
||||||
|
<if test="batteryPackCurrent != null">battery_pack_current,</if>
|
||||||
|
<if test="batteryPackTemp != null">battery_pack_temp,</if>
|
||||||
|
<if test="batteryPackSoc != null">battery_pack_soc,</if>
|
||||||
|
<if test="batteryPackSoh != null">battery_pack_soh,</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null">battery_pack_insulation_resistance,</if>
|
||||||
|
<if test="avgCellVoltage != null">avg_cell_voltage,</if>
|
||||||
|
<if test="avgCellTemp != null">avg_cell_temp,</if>
|
||||||
|
<if test="maxCellVoltage != null">max_cell_voltage,</if>
|
||||||
|
<if test="maxCellVoltageId != null">max_cell_voltage_id,</if>
|
||||||
|
<if test="minCellVoltage != null">min_cell_voltage,</if>
|
||||||
|
<if test="minCellVoltageId != null">min_cell_voltage_id,</if>
|
||||||
|
<if test="maxCellTemp != null">max_cell_temp,</if>
|
||||||
|
<if test="maxCellTempId != null">max_cell_temp_id,</if>
|
||||||
|
<if test="minCellTemp != null">min_cell_temp,</if>
|
||||||
|
<if test="minCellTempId != null">min_cell_temp_id,</if>
|
||||||
|
<if test="maxCellSoc != null">max_cell_soc,</if>
|
||||||
|
<if test="maxCellSocId != null">max_cell_soc_id,</if>
|
||||||
|
<if test="minCellSoc != null">min_cell_soc,</if>
|
||||||
|
<if test="minCellSocId != null">min_cell_soc_id,</if>
|
||||||
|
<if test="maxCellSoh != null">max_cell_soh,</if>
|
||||||
|
<if test="maxCellSohId != null">max_cell_soh_id,</if>
|
||||||
|
<if test="minCellSoh != null">min_cell_soh,</if>
|
||||||
|
<if test="minCellSohId != null">min_cell_soh_id,</if>
|
||||||
|
<if test="totalChargeEnergy != null">total_charge_energy,</if>
|
||||||
|
<if test="totalDischargeEnergy != null">total_discharge_energy,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="workStatus != null">#{workStatus},</if>
|
<if test="workStatus != null">#{workStatus},</if>
|
||||||
@ -102,7 +198,39 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
|
<if test="maxAllowedChargePower != null">#{maxAllowedChargePower},</if>
|
||||||
|
<if test="maxAllowedDischargePower != null">#{maxAllowedDischargePower},</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null">#{maxAllowedChargeVoltage},</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null">#{maxAllowedDischargeVoltage},</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null">#{maxAllowedChargeCurrent},</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null">#{maxAllowedDischargeCurrent},</if>
|
||||||
|
<if test="batteryPackVoltage != null">#{batteryPackVoltage},</if>
|
||||||
|
<if test="batteryPackCurrent != null">#{batteryPackCurrent},</if>
|
||||||
|
<if test="batteryPackTemp != null">#{batteryPackTemp},</if>
|
||||||
|
<if test="batteryPackSoc != null">#{batteryPackSoc},</if>
|
||||||
|
<if test="batteryPackSoh != null">#{batteryPackSoh},</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null">#{batteryPackInsulationResistance},</if>
|
||||||
|
<if test="avgCellVoltage != null">#{avgCellVoltage},</if>
|
||||||
|
<if test="avgCellTemp != null">#{avgCellTemp},</if>
|
||||||
|
<if test="maxCellVoltage != null">#{maxCellVoltage},</if>
|
||||||
|
<if test="maxCellVoltageId != null">#{maxCellVoltageId},</if>
|
||||||
|
<if test="minCellVoltage != null">#{minCellVoltage},</if>
|
||||||
|
<if test="minCellVoltageId != null">#{minCellVoltageId},</if>
|
||||||
|
<if test="maxCellTemp != null">#{maxCellTemp},</if>
|
||||||
|
<if test="maxCellTempId != null">#{maxCellTempId},</if>
|
||||||
|
<if test="minCellTemp != null">#{minCellTemp},</if>
|
||||||
|
<if test="minCellTempId != null">#{minCellTempId},</if>
|
||||||
|
<if test="maxCellSoc != null">#{maxCellSoc},</if>
|
||||||
|
<if test="maxCellSocId != null">#{maxCellSocId},</if>
|
||||||
|
<if test="minCellSoc != null">#{minCellSoc},</if>
|
||||||
|
<if test="minCellSocId != null">#{minCellSocId},</if>
|
||||||
|
<if test="maxCellSoh != null">#{maxCellSoh},</if>
|
||||||
|
<if test="maxCellSohId != null">#{maxCellSohId},</if>
|
||||||
|
<if test="minCellSoh != null">#{minCellSoh},</if>
|
||||||
|
<if test="minCellSohId != null">#{minCellSohId},</if>
|
||||||
|
<if test="totalChargeEnergy != null">#{totalChargeEnergy},</if>
|
||||||
|
<if test="totalDischargeEnergy != null">#{totalDischargeEnergy},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -128,7 +256,39 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
|
<if test="maxAllowedChargePower != null">max_allowed_charge_power = #{maxAllowedChargePower},</if>
|
||||||
|
<if test="maxAllowedDischargePower != null">max_allowed_discharge_power = #{maxAllowedDischargePower},</if>
|
||||||
|
<if test="maxAllowedChargeVoltage != null">max_allowed_charge_voltage = #{maxAllowedChargeVoltage},</if>
|
||||||
|
<if test="maxAllowedDischargeVoltage != null">max_allowed_discharge_voltage = #{maxAllowedDischargeVoltage},</if>
|
||||||
|
<if test="maxAllowedChargeCurrent != null">max_allowed_charge_current = #{maxAllowedChargeCurrent},</if>
|
||||||
|
<if test="maxAllowedDischargeCurrent != null">max_allowed_discharge_current = #{maxAllowedDischargeCurrent},</if>
|
||||||
|
<if test="batteryPackVoltage != null">battery_pack_voltage = #{batteryPackVoltage},</if>
|
||||||
|
<if test="batteryPackCurrent != null">battery_pack_current = #{batteryPackCurrent},</if>
|
||||||
|
<if test="batteryPackTemp != null">battery_pack_temp = #{batteryPackTemp},</if>
|
||||||
|
<if test="batteryPackSoc != null">battery_pack_soc = #{batteryPackSoc},</if>
|
||||||
|
<if test="batteryPackSoh != null">battery_pack_soh = #{batteryPackSoh},</if>
|
||||||
|
<if test="batteryPackInsulationResistance != null">battery_pack_insulation_resistance = #{batteryPackInsulationResistance},</if>
|
||||||
|
<if test="avgCellVoltage != null">avg_cell_voltage = #{avgCellVoltage},</if>
|
||||||
|
<if test="avgCellTemp != null">avg_cell_temp = #{avgCellTemp},</if>
|
||||||
|
<if test="maxCellVoltage != null">max_cell_voltage = #{maxCellVoltage},</if>
|
||||||
|
<if test="maxCellVoltageId != null">max_cell_voltage_id = #{maxCellVoltageId},</if>
|
||||||
|
<if test="minCellVoltage != null">min_cell_voltage = #{minCellVoltage},</if>
|
||||||
|
<if test="minCellVoltageId != null">min_cell_voltage_id = #{minCellVoltageId},</if>
|
||||||
|
<if test="maxCellTemp != null">max_cell_temp = #{maxCellTemp},</if>
|
||||||
|
<if test="maxCellTempId != null">max_cell_temp_id = #{maxCellTempId},</if>
|
||||||
|
<if test="minCellTemp != null">min_cell_temp = #{minCellTemp},</if>
|
||||||
|
<if test="minCellTempId != null">min_cell_temp_id = #{minCellTempId},</if>
|
||||||
|
<if test="maxCellSoc != null">max_cell_soc = #{maxCellSoc},</if>
|
||||||
|
<if test="maxCellSocId != null">max_cell_soc_id = #{maxCellSocId},</if>
|
||||||
|
<if test="minCellSoc != null">min_cell_soc = #{minCellSoc},</if>
|
||||||
|
<if test="minCellSocId != null">min_cell_soc_id = #{minCellSocId},</if>
|
||||||
|
<if test="maxCellSoh != null">max_cell_soh = #{maxCellSoh},</if>
|
||||||
|
<if test="maxCellSohId != null">max_cell_soh_id = #{maxCellSohId},</if>
|
||||||
|
<if test="minCellSoh != null">min_cell_soh = #{minCellSoh},</if>
|
||||||
|
<if test="minCellSohId != null">min_cell_soh_id = #{minCellSohId},</if>
|
||||||
|
<if test="totalChargeEnergy != null">total_charge_energy = #{totalChargeEnergy},</if>
|
||||||
|
<if test="totalDischargeEnergy != null">total_discharge_energy = #{totalDischargeEnergy},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -144,17 +304,24 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="selectEmsBatteryStackBySiteId" parameterType="Long" resultType="com.xzzn.ems.domain.vo.BMSOverViewVo">
|
<select id="selectEmsBatteryStackBySiteId" parameterType="String" resultType="com.xzzn.ems.domain.vo.BMSOverViewVo">
|
||||||
select td.device_name as deviceName,tmp.work_status as workStatus,
|
SELECT td.device_name as deviceName,tmp.work_status as workStatus,
|
||||||
tmp.pcs_communication_status as pcsCommunicationStatus,tmp.ems_communication_status as emsCommunicationStatus,
|
tmp.pcs_communication_status as pcsCommunicationStatus,tmp.ems_communication_status as emsCommunicationStatus,
|
||||||
tmp.total_voltage as totalVoltage,tmp.chargeable_capacity as chargeableCapacity,tmp.total_charged_capacity as totalChargedCapacity,
|
tmp.total_voltage as totalVoltage,tmp.chargeable_capacity as chargeableCapacity,
|
||||||
tmp.total_current as totalCurrent,tmp.dischargeable_capacity as dischargeableCapacity,tmp.total_discharged_capacity as totalDischargedCapacity,
|
tmp.total_charged_capacity as totalChargedCapacity,
|
||||||
tmp.soh as soh,tmp.average_temperature as averageTemperature,tmp.insulation_resistance as insulationResistance,
|
tmp.total_current as totalCurrent,tmp.dischargeable_capacity as dischargeableCapacity,
|
||||||
tmp.current_soc as currentSoc,tmp.site_id as siteId,tmp.device_id as deviceId
|
tmp.total_discharged_capacity as totalDischargedCapacity,
|
||||||
from ems_battery_stack tmp left join ems_devices_setting td on tmp.device_id = td.id and tmp.site_id = td.site_id
|
tmp.soh as soh,tmp.average_temperature as averageTemperature,tmp.insulation_resistance as insulationResistance,
|
||||||
where tmp.site_id = #{siteId}
|
tmp.current_soc as currentSoc,tmp.site_id as siteId,tmp.device_id as deviceId
|
||||||
and tmp.update_time = (select MAX(t.update_time) FROM ems_battery_stack t where t.site_id = tmp.site_id
|
FROM ems_battery_stack tmp
|
||||||
and t.device_id = tmp.device_id)
|
left join ems_devices_setting td on tmp.device_id = td.device_id and tmp.site_id = td.site_id
|
||||||
|
INNER JOIN (
|
||||||
|
SELECT p.site_id, p.device_id, MAX(p.update_time) AS max_update_time
|
||||||
|
FROM ems_battery_stack p
|
||||||
|
WHERE p.site_id = #{siteId}
|
||||||
|
GROUP BY p.site_id,p.device_id
|
||||||
|
) latest on tmp.device_id = latest.device_id and tmp.update_time = latest.max_update_time
|
||||||
|
WHERE tmp.site_id = #{siteId}
|
||||||
order by tmp.device_id
|
order by tmp.device_id
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -40,8 +40,8 @@
|
|||||||
<if test="heatingStopPoint != null "> and heating_stop_point = #{heatingStopPoint}</if>
|
<if test="heatingStopPoint != null "> and heating_stop_point = #{heatingStopPoint}</if>
|
||||||
<if test="coolingStopPoint != null "> and cooling_stop_point = #{coolingStopPoint}</if>
|
<if test="coolingStopPoint != null "> and cooling_stop_point = #{coolingStopPoint}</if>
|
||||||
<if test="lowTempAlarmPoint != null "> and low_temp_alarm_point = #{lowTempAlarmPoint}</if>
|
<if test="lowTempAlarmPoint != null "> and low_temp_alarm_point = #{lowTempAlarmPoint}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -68,7 +68,7 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="systemName != null">#{systemName},</if>
|
<if test="systemName != null">#{systemName},</if>
|
||||||
@ -86,7 +86,7 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -108,7 +108,7 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -124,13 +124,13 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getCoolingDataList" parameterType="Long" resultMap="EmsCoolingDataResult">
|
<select id="getCoolingDataList" parameterType="String" resultMap="EmsCoolingDataResult">
|
||||||
select t.*
|
SELECT t.*
|
||||||
from ems_cooling_data t
|
FROM ( SELECT *, ROW_NUMBER() OVER (PARTITION BY device_id ORDER BY update_time DESC ) AS rn
|
||||||
where t.site_id = 1
|
FROM ems_cooling_data
|
||||||
and t.update_time = (
|
WHERE site_id = #{siteId}
|
||||||
select MAX(tcd.update_time) from ems_cooling_data tcd where tcd.site_id = t.site_id and tcd.device_id = t.device_id)
|
) t
|
||||||
order by t.system_name
|
WHERE rn = 1
|
||||||
|
ORDER BY system_name
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -23,10 +23,11 @@
|
|||||||
<result property="updatedAt" column="updated_at" />
|
<result property="updatedAt" column="updated_at" />
|
||||||
<result property="siteId" column="site_id" />
|
<result property="siteId" column="site_id" />
|
||||||
<result property="communicationStatus" column="communication_status" />
|
<result property="communicationStatus" column="communication_status" />
|
||||||
|
<result property="deviceId" column="device_id" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsDevicesSettingVo">
|
<sql id="selectEmsDevicesSettingVo">
|
||||||
select id, device_name, device_type, slave_id, timeout_ms, retries, ip_address, ip_port, serial_port, baud_rate, data_bits, stop_bits, parity, description, created_at, updated_at, site_id, communication_status from ems_devices_setting
|
select id, device_name, device_type, slave_id, timeout_ms, retries, ip_address, ip_port, serial_port, baud_rate, data_bits, stop_bits, parity, description, created_at, updated_at, site_id, communication_status, device_id from ems_devices_setting
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsDevicesSettingList" parameterType="EmsDevicesSetting" resultMap="EmsDevicesSettingResult">
|
<select id="selectEmsDevicesSettingList" parameterType="EmsDevicesSetting" resultMap="EmsDevicesSettingResult">
|
||||||
@ -47,8 +48,9 @@
|
|||||||
<if test="description != null and description != ''"> and description = #{description}</if>
|
<if test="description != null and description != ''"> and description = #{description}</if>
|
||||||
<if test="createdAt != null "> and created_at = #{createdAt}</if>
|
<if test="createdAt != null "> and created_at = #{createdAt}</if>
|
||||||
<if test="updatedAt != null "> and updated_at = #{updatedAt}</if>
|
<if test="updatedAt != null "> and updated_at = #{updatedAt}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="communicationStatus != null and communicationStatus != ''"> and communication_status = #{communicationStatus}</if>
|
<if test="communicationStatus != null and communicationStatus != ''"> and communication_status = #{communicationStatus}</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -77,6 +79,7 @@
|
|||||||
<if test="updatedAt != null">updated_at,</if>
|
<if test="updatedAt != null">updated_at,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="communicationStatus != null">communication_status,</if>
|
<if test="communicationStatus != null">communication_status,</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="deviceName != null and deviceName != ''">#{deviceName},</if>
|
<if test="deviceName != null and deviceName != ''">#{deviceName},</if>
|
||||||
@ -96,6 +99,7 @@
|
|||||||
<if test="updatedAt != null">#{updatedAt},</if>
|
<if test="updatedAt != null">#{updatedAt},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="communicationStatus != null">#{communicationStatus},</if>
|
<if test="communicationStatus != null">#{communicationStatus},</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -119,6 +123,7 @@
|
|||||||
<if test="updatedAt != null">updated_at = #{updatedAt},</if>
|
<if test="updatedAt != null">updated_at = #{updatedAt},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="communicationStatus != null">communication_status = #{communicationStatus},</if>
|
<if test="communicationStatus != null">communication_status = #{communicationStatus},</if>
|
||||||
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -133,4 +138,24 @@
|
|||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
|
<select id="getAllStackInfoBySiteId" parameterType="String" resultType="java.util.Map">
|
||||||
|
select device_id as id,device_name as deviceName from ems_devices_setting
|
||||||
|
where device_id in (
|
||||||
|
select distinct eb.device_id from ems_battery_stack eb where eb.site_id = #{siteId})
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getAllClusterInfoByStackId" parameterType="String" resultType="java.util.Map">
|
||||||
|
select device_id as id,device_name as deviceName
|
||||||
|
from ems_devices_setting
|
||||||
|
where device_id in (select distinct eb.device_id from ems_battery_cluster eb where eb.stack_device_id = #{stackDeviceId})
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getAllBatteryDeviceBySiteId" parameterType="String" resultType="com.xzzn.ems.domain.EmsDevicesSetting">
|
||||||
|
select distinct e.device_id as deviceId,
|
||||||
|
t.device_name as deviceName,
|
||||||
|
t.communication_status as communicationStatus
|
||||||
|
from ems_devices_setting t INNER JOIN ems_ammeter_data e on t.site_id = e.site_id and t.device_id = e.device_id
|
||||||
|
where t.site_id = #{siteId}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -0,0 +1,79 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.xzzn.ems.mapper.EmsMqttMessageMapper">
|
||||||
|
|
||||||
|
<resultMap type="EmsMqttMessage" id="EmsMqttMessageResult">
|
||||||
|
<result property="id" column="id" />
|
||||||
|
<result property="mqttTopic" column="mqtt_topic" />
|
||||||
|
<result property="mqttMessage" column="mqtt_message" />
|
||||||
|
<result property="createBy" column="create_by" />
|
||||||
|
<result property="createTime" column="create_time" />
|
||||||
|
<result property="updateBy" column="update_by" />
|
||||||
|
<result property="updateTime" column="update_time" />
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="selectEmsMqttMessageVo">
|
||||||
|
select id, mqtt_topic, mqtt_message, create_by, create_time, update_by, update_time from ems_mqtt_message
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<select id="selectEmsMqttMessageList" parameterType="EmsMqttMessage" resultMap="EmsMqttMessageResult">
|
||||||
|
<include refid="selectEmsMqttMessageVo"/>
|
||||||
|
<where>
|
||||||
|
<if test="mqttTopic != null and mqttTopic != ''"> and mqtt_topic = #{mqttTopic}</if>
|
||||||
|
<if test="mqttMessage != null and mqttMessage != ''"> and mqtt_message = #{mqttMessage}</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectEmsMqttMessageById" parameterType="Long" resultMap="EmsMqttMessageResult">
|
||||||
|
<include refid="selectEmsMqttMessageVo"/>
|
||||||
|
where id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<insert id="insertEmsMqttMessage" parameterType="EmsMqttMessage">
|
||||||
|
insert into ems_mqtt_message
|
||||||
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="id != null">id,</if>
|
||||||
|
<if test="mqttTopic != null">mqtt_topic,</if>
|
||||||
|
<if test="mqttMessage != null">mqtt_message,</if>
|
||||||
|
<if test="createBy != null">create_by,</if>
|
||||||
|
<if test="createTime != null">create_time,</if>
|
||||||
|
<if test="updateBy != null">update_by,</if>
|
||||||
|
<if test="updateTime != null">update_time,</if>
|
||||||
|
</trim>
|
||||||
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="id != null">#{id},</if>
|
||||||
|
<if test="mqttTopic != null">#{mqttTopic},</if>
|
||||||
|
<if test="mqttMessage != null">#{mqttMessage},</if>
|
||||||
|
<if test="createBy != null">#{createBy},</if>
|
||||||
|
<if test="createTime != null">#{createTime},</if>
|
||||||
|
<if test="updateBy != null">#{updateBy},</if>
|
||||||
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
|
</trim>
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="updateEmsMqttMessage" parameterType="EmsMqttMessage">
|
||||||
|
update ems_mqtt_message
|
||||||
|
<trim prefix="SET" suffixOverrides=",">
|
||||||
|
<if test="mqttTopic != null">mqtt_topic = #{mqttTopic},</if>
|
||||||
|
<if test="mqttMessage != null">mqtt_message = #{mqttMessage},</if>
|
||||||
|
<if test="createBy != null">create_by = #{createBy},</if>
|
||||||
|
<if test="createTime != null">create_time = #{createTime},</if>
|
||||||
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
||||||
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
|
</trim>
|
||||||
|
where id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<delete id="deleteEmsMqttMessageById" parameterType="Long">
|
||||||
|
delete from ems_mqtt_message where id = #{id}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<delete id="deleteEmsMqttMessageByIds" parameterType="String">
|
||||||
|
delete from ems_mqtt_message where id in
|
||||||
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</delete>
|
||||||
|
</mapper>
|
@ -18,10 +18,30 @@
|
|||||||
<result property="siteId" column="site_id" />
|
<result property="siteId" column="site_id" />
|
||||||
<result property="deviceId" column="device_id" />
|
<result property="deviceId" column="device_id" />
|
||||||
<result property="branchId" column="branch_id" />
|
<result property="branchId" column="branch_id" />
|
||||||
|
<result property="gridUVoltage" column="grid_u_voltage" />
|
||||||
|
<result property="gridVVoltage" column="grid_v_voltage" />
|
||||||
|
<result property="gridWVoltage" column="grid_w_voltage" />
|
||||||
|
<result property="outputUCurrent" column="output_u_current" />
|
||||||
|
<result property="outputVCurrent" column="output_v_current" />
|
||||||
|
<result property="outputWCurrent" column="output_w_current" />
|
||||||
|
<result property="apparentPower" column="apparent_power" />
|
||||||
|
<result property="activePower" column="active_power" />
|
||||||
|
<result property="reactivePower" column="reactive_power" />
|
||||||
|
<result property="powerFactor" column="power_factor" />
|
||||||
|
<result property="frequency" column="frequency" />
|
||||||
|
<result property="internalTemp" column="internal_temp" />
|
||||||
|
<result property="uIgbtTemp" column="u_igbt_temp" />
|
||||||
|
<result property="vIgbtTemp" column="v_igbt_temp" />
|
||||||
|
<result property="wIgbtTemp" column="w_igbt_temp" />
|
||||||
|
<result property="gridStatus" column="grid_status" />
|
||||||
|
<result property="availablePower" column="available_power" />
|
||||||
|
<result property="totalLoadRatio" column="total_load_ratio" />
|
||||||
|
<result property="acLeakageCurrent" column="ac_leakage_current" />
|
||||||
|
<result property="insulationResistance" column="insulation_resistance" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsPcsBranchDataVo">
|
<sql id="selectEmsPcsBranchDataVo">
|
||||||
select id, discharge_status, dc_power, dc_voltage, dc_current, create_by, create_time, update_by, update_time, remark, site_id, device_id, branch_id from ems_pcs_branch_data
|
select id, discharge_status, dc_power, dc_voltage, dc_current, create_by, create_time, update_by, update_time, remark, site_id, device_id, branch_id, grid_u_voltage, grid_v_voltage, grid_w_voltage, output_u_current, output_v_current, output_w_current, apparent_power, active_power, reactive_power, power_factor, frequency, internal_temp, u_igbt_temp, v_igbt_temp, w_igbt_temp, grid_status, available_power, total_load_ratio, ac_leakage_current, insulation_resistance from ems_pcs_branch_data
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsPcsBranchDataList" parameterType="EmsPcsBranchData" resultMap="EmsPcsBranchDataResult">
|
<select id="selectEmsPcsBranchDataList" parameterType="EmsPcsBranchData" resultMap="EmsPcsBranchDataResult">
|
||||||
@ -31,9 +51,29 @@
|
|||||||
<if test="dcPower != null "> and dc_power = #{dcPower}</if>
|
<if test="dcPower != null "> and dc_power = #{dcPower}</if>
|
||||||
<if test="dcVoltage != null "> and dc_voltage = #{dcVoltage}</if>
|
<if test="dcVoltage != null "> and dc_voltage = #{dcVoltage}</if>
|
||||||
<if test="dcCurrent != null "> and dc_current = #{dcCurrent}</if>
|
<if test="dcCurrent != null "> and dc_current = #{dcCurrent}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
<if test="branchId != null "> and branch_id = #{branchId}</if>
|
<if test="branchId != null "> and branch_id = #{branchId}</if>
|
||||||
|
<if test="gridUVoltage != null "> and grid_u_voltage = #{gridUVoltage}</if>
|
||||||
|
<if test="gridVVoltage != null "> and grid_v_voltage = #{gridVVoltage}</if>
|
||||||
|
<if test="gridWVoltage != null "> and grid_w_voltage = #{gridWVoltage}</if>
|
||||||
|
<if test="outputUCurrent != null "> and output_u_current = #{outputUCurrent}</if>
|
||||||
|
<if test="outputVCurrent != null "> and output_v_current = #{outputVCurrent}</if>
|
||||||
|
<if test="outputWCurrent != null "> and output_w_current = #{outputWCurrent}</if>
|
||||||
|
<if test="apparentPower != null "> and apparent_power = #{apparentPower}</if>
|
||||||
|
<if test="activePower != null "> and active_power = #{activePower}</if>
|
||||||
|
<if test="reactivePower != null "> and reactive_power = #{reactivePower}</if>
|
||||||
|
<if test="powerFactor != null "> and power_factor = #{powerFactor}</if>
|
||||||
|
<if test="frequency != null "> and frequency = #{frequency}</if>
|
||||||
|
<if test="internalTemp != null "> and internal_temp = #{internalTemp}</if>
|
||||||
|
<if test="uIgbtTemp != null "> and u_igbt_temp = #{uIgbtTemp}</if>
|
||||||
|
<if test="vIgbtTemp != null "> and v_igbt_temp = #{vIgbtTemp}</if>
|
||||||
|
<if test="wIgbtTemp != null "> and w_igbt_temp = #{wIgbtTemp}</if>
|
||||||
|
<if test="gridStatus != null and gridStatus != ''"> and grid_status = #{gridStatus}</if>
|
||||||
|
<if test="availablePower != null "> and available_power = #{availablePower}</if>
|
||||||
|
<if test="totalLoadRatio != null "> and total_load_ratio = #{totalLoadRatio}</if>
|
||||||
|
<if test="acLeakageCurrent != null "> and ac_leakage_current = #{acLeakageCurrent}</if>
|
||||||
|
<if test="insulationResistance != null "> and insulation_resistance = #{insulationResistance}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -55,8 +95,28 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
<if test="branchId != null">branch_id,</if>
|
<if test="branchId != null">branch_id,</if>
|
||||||
|
<if test="gridUVoltage != null">grid_u_voltage,</if>
|
||||||
|
<if test="gridVVoltage != null">grid_v_voltage,</if>
|
||||||
|
<if test="gridWVoltage != null">grid_w_voltage,</if>
|
||||||
|
<if test="outputUCurrent != null">output_u_current,</if>
|
||||||
|
<if test="outputVCurrent != null">output_v_current,</if>
|
||||||
|
<if test="outputWCurrent != null">output_w_current,</if>
|
||||||
|
<if test="apparentPower != null">apparent_power,</if>
|
||||||
|
<if test="activePower != null">active_power,</if>
|
||||||
|
<if test="reactivePower != null">reactive_power,</if>
|
||||||
|
<if test="powerFactor != null">power_factor,</if>
|
||||||
|
<if test="frequency != null">frequency,</if>
|
||||||
|
<if test="internalTemp != null">internal_temp,</if>
|
||||||
|
<if test="uIgbtTemp != null">u_igbt_temp,</if>
|
||||||
|
<if test="vIgbtTemp != null">v_igbt_temp,</if>
|
||||||
|
<if test="wIgbtTemp != null">w_igbt_temp,</if>
|
||||||
|
<if test="gridStatus != null">grid_status,</if>
|
||||||
|
<if test="availablePower != null">available_power,</if>
|
||||||
|
<if test="totalLoadRatio != null">total_load_ratio,</if>
|
||||||
|
<if test="acLeakageCurrent != null">ac_leakage_current,</if>
|
||||||
|
<if test="insulationResistance != null">insulation_resistance,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="dischargeStatus != null">#{dischargeStatus},</if>
|
<if test="dischargeStatus != null">#{dischargeStatus},</if>
|
||||||
@ -69,8 +129,28 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
<if test="branchId != null">#{branchId},</if>
|
<if test="branchId != null">#{branchId},</if>
|
||||||
|
<if test="gridUVoltage != null">#{gridUVoltage},</if>
|
||||||
|
<if test="gridVVoltage != null">#{gridVVoltage},</if>
|
||||||
|
<if test="gridWVoltage != null">#{gridWVoltage},</if>
|
||||||
|
<if test="outputUCurrent != null">#{outputUCurrent},</if>
|
||||||
|
<if test="outputVCurrent != null">#{outputVCurrent},</if>
|
||||||
|
<if test="outputWCurrent != null">#{outputWCurrent},</if>
|
||||||
|
<if test="apparentPower != null">#{apparentPower},</if>
|
||||||
|
<if test="activePower != null">#{activePower},</if>
|
||||||
|
<if test="reactivePower != null">#{reactivePower},</if>
|
||||||
|
<if test="powerFactor != null">#{powerFactor},</if>
|
||||||
|
<if test="frequency != null">#{frequency},</if>
|
||||||
|
<if test="internalTemp != null">#{internalTemp},</if>
|
||||||
|
<if test="uIgbtTemp != null">#{uIgbtTemp},</if>
|
||||||
|
<if test="vIgbtTemp != null">#{vIgbtTemp},</if>
|
||||||
|
<if test="wIgbtTemp != null">#{wIgbtTemp},</if>
|
||||||
|
<if test="gridStatus != null">#{gridStatus},</if>
|
||||||
|
<if test="availablePower != null">#{availablePower},</if>
|
||||||
|
<if test="totalLoadRatio != null">#{totalLoadRatio},</if>
|
||||||
|
<if test="acLeakageCurrent != null">#{acLeakageCurrent},</if>
|
||||||
|
<if test="insulationResistance != null">#{insulationResistance},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -87,8 +167,28 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
<if test="branchId != null">branch_id = #{branchId},</if>
|
<if test="branchId != null">branch_id = #{branchId},</if>
|
||||||
|
<if test="gridUVoltage != null">grid_u_voltage = #{gridUVoltage},</if>
|
||||||
|
<if test="gridVVoltage != null">grid_v_voltage = #{gridVVoltage},</if>
|
||||||
|
<if test="gridWVoltage != null">grid_w_voltage = #{gridWVoltage},</if>
|
||||||
|
<if test="outputUCurrent != null">output_u_current = #{outputUCurrent},</if>
|
||||||
|
<if test="outputVCurrent != null">output_v_current = #{outputVCurrent},</if>
|
||||||
|
<if test="outputWCurrent != null">output_w_current = #{outputWCurrent},</if>
|
||||||
|
<if test="apparentPower != null">apparent_power = #{apparentPower},</if>
|
||||||
|
<if test="activePower != null">active_power = #{activePower},</if>
|
||||||
|
<if test="reactivePower != null">reactive_power = #{reactivePower},</if>
|
||||||
|
<if test="powerFactor != null">power_factor = #{powerFactor},</if>
|
||||||
|
<if test="frequency != null">frequency = #{frequency},</if>
|
||||||
|
<if test="internalTemp != null">internal_temp = #{internalTemp},</if>
|
||||||
|
<if test="uIgbtTemp != null">u_igbt_temp = #{uIgbtTemp},</if>
|
||||||
|
<if test="vIgbtTemp != null">v_igbt_temp = #{vIgbtTemp},</if>
|
||||||
|
<if test="wIgbtTemp != null">w_igbt_temp = #{wIgbtTemp},</if>
|
||||||
|
<if test="gridStatus != null">grid_status = #{gridStatus},</if>
|
||||||
|
<if test="availablePower != null">available_power = #{availablePower},</if>
|
||||||
|
<if test="totalLoadRatio != null">total_load_ratio = #{totalLoadRatio},</if>
|
||||||
|
<if test="acLeakageCurrent != null">ac_leakage_current = #{acLeakageCurrent},</if>
|
||||||
|
<if test="insulationResistance != null">insulation_resistance = #{insulationResistance},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -105,14 +205,88 @@
|
|||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getPcsBranchInfoList" resultType="com.xzzn.ems.domain.vo.PcsBranchInfo">
|
<select id="getPcsBranchInfoList" resultType="com.xzzn.ems.domain.vo.PcsBranchInfo">
|
||||||
select tmp.branch_id as branchId, tmp.discharge_status as dischargeStatus,
|
SELECT tmp.branch_id as branchId, tmp.discharge_status as dischargeStatus,
|
||||||
tmp.dc_power as dcPower, tmp.dc_voltage as dcVoltage,
|
tmp.dc_power as dcPower, tmp.dc_voltage as dcVoltage,
|
||||||
tmp.dc_current as dcCurrent, tmp.site_id as siteId, tmp.device_id as deviceId
|
tmp.dc_current as dcCurrent, tmp.site_id as siteId, tmp.device_id as deviceId
|
||||||
from ems_pcs_branch_data tmp
|
FROM (
|
||||||
where tmp.site_id = #{siteId}
|
SELECT t.*, ROW_NUMBER() OVER ( PARTITION BY t.branch_id ORDER BY t.update_time DESC ) AS rn
|
||||||
and tmp.device_id = #{deviceId}
|
FROM ems_pcs_branch_data t
|
||||||
and tmp.update_time = (select MAX(t.update_time) FROM ems_pcs_branch_data t where t.site_id = tmp.site_id
|
WHERE t.site_id = #{siteId} AND t.device_id = #{deviceId}
|
||||||
and t.device_id = tmp.device_id and t.branch_id = tmp.branch_id)
|
) tmp
|
||||||
order by tmp.branch_id
|
WHERE rn = 1
|
||||||
|
ORDER BY tmp.branch_id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<insert id="insertPcsBranchDataList" parameterType="java.util.List">
|
||||||
|
INSERT INTO ems_pcs_branch_data (
|
||||||
|
discharge_status,
|
||||||
|
dc_power,
|
||||||
|
dc_voltage,
|
||||||
|
dc_current,
|
||||||
|
site_id,
|
||||||
|
device_id,
|
||||||
|
branch_id,
|
||||||
|
grid_u_voltage,
|
||||||
|
grid_v_voltage,
|
||||||
|
grid_w_voltage,
|
||||||
|
output_u_current,
|
||||||
|
output_v_current,
|
||||||
|
output_w_current,
|
||||||
|
apparent_power,
|
||||||
|
active_power,
|
||||||
|
reactive_power,
|
||||||
|
power_factor,
|
||||||
|
frequency,
|
||||||
|
internal_temp,
|
||||||
|
u_igbt_temp,
|
||||||
|
v_igbt_temp,
|
||||||
|
w_igbt_temp,
|
||||||
|
grid_status,
|
||||||
|
available_power,
|
||||||
|
total_load_ratio,
|
||||||
|
ac_leakage_current,
|
||||||
|
insulation_resistance,
|
||||||
|
create_by,
|
||||||
|
create_time,
|
||||||
|
update_by,
|
||||||
|
update_time,
|
||||||
|
remark
|
||||||
|
) VALUES
|
||||||
|
<foreach collection="list" item="item" separator=",">
|
||||||
|
(
|
||||||
|
#{item.dischargeStatus},
|
||||||
|
#{item.dcPower},
|
||||||
|
#{item.dcVoltage},
|
||||||
|
#{item.dcCurrent},
|
||||||
|
#{item.siteId},
|
||||||
|
#{item.deviceId},
|
||||||
|
#{item.branchId},
|
||||||
|
#{item.gridUVoltage},
|
||||||
|
#{item.gridVVoltage},
|
||||||
|
#{item.gridWVoltage},
|
||||||
|
#{item.outputUCurrent},
|
||||||
|
#{item.outputVCurrent},
|
||||||
|
#{item.outputWCurrent},
|
||||||
|
#{item.apparentPower},
|
||||||
|
#{item.activePower},
|
||||||
|
#{item.reactivePower},
|
||||||
|
#{item.powerFactor},
|
||||||
|
#{item.frequency},
|
||||||
|
#{item.internalTemp},
|
||||||
|
#{item.uIgbtTemp},
|
||||||
|
#{item.vIgbtTemp},
|
||||||
|
#{item.wIgbtTemp},
|
||||||
|
#{item.gridStatus},
|
||||||
|
#{item.availablePower},
|
||||||
|
#{item.totalLoadRatio},
|
||||||
|
#{item.acLeakageCurrent},
|
||||||
|
#{item.insulationResistance},
|
||||||
|
#{item.createBy},
|
||||||
|
#{item.createTime},
|
||||||
|
#{item.updateBy},
|
||||||
|
#{item.updateTime},
|
||||||
|
#{item.remark}
|
||||||
|
)
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
</mapper>
|
</mapper>
|
@ -40,11 +40,23 @@
|
|||||||
<result property="deviceId" column="device_id" />
|
<result property="deviceId" column="device_id" />
|
||||||
<result property="dateMonth" column="date_month" />
|
<result property="dateMonth" column="date_month" />
|
||||||
<result property="dateDay" column="date_day" />
|
<result property="dateDay" column="date_day" />
|
||||||
<result property="communicationStatus" column="communication_status" />
|
<result property="totalAcChargeEnergy" column="total_ac_charge_energy" />
|
||||||
|
<result property="totalAcDischargeEnergy" column="total_ac_discharge_energy" />
|
||||||
|
<result property="acChargeActivePower" column="ac_charge_active_power" />
|
||||||
|
<result property="acCapacitiveReactivePower" column="ac_capacitive_reactive_power" />
|
||||||
|
<result property="acDischargeActivePower" column="ac_discharge_active_power" />
|
||||||
|
<result property="acInductiveReactivePower" column="ac_inductive_reactive_power" />
|
||||||
|
<result property="maxCapacitivePowerCapacity" column="max_capacitive_power_capacity" />
|
||||||
|
<result property="maxInductivePowerCapacity" column="max_inductive_power_capacity" />
|
||||||
|
<result property="maxChargePowerCapacity" column="max_charge_power_capacity" />
|
||||||
|
<result property="maxDischargePowerCapacity" column="max_discharge_power_capacity" />
|
||||||
|
<result property="acSwitchStatus" column="ac_switch_status" />
|
||||||
|
<result property="dcSwitchStatus" column="dc_switch_status" />
|
||||||
|
<result property="remoteControlStatus" column="remote_control_status" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsPcsDataVo">
|
<sql id="selectEmsPcsDataVo">
|
||||||
select id, data_update_time, work_status, grid_status, device_status, control_mode, total_active_power, daily_ac_charge_energy, a_phase_voltage, a_phase_current, total_reactive_power, daily_ac_discharge_energy, b_phase_voltage, b_phase_current, total_apparent_power, pcs_module_temperature, c_phase_voltage, c_phase_current, total_power_factor, pcs_environment_temperature, ac_frequency, branch_status, discharge_status, dc_power, dc_voltage, dc_current, create_by, create_time, update_by, update_time, remark, site_id, device_id, date_month, date_day, communication_status from ems_pcs_data
|
select id, data_update_time, work_status, grid_status, device_status, control_mode, total_active_power, daily_ac_charge_energy, a_phase_voltage, a_phase_current, total_reactive_power, daily_ac_discharge_energy, b_phase_voltage, b_phase_current, total_apparent_power, pcs_module_temperature, c_phase_voltage, c_phase_current, total_power_factor, pcs_environment_temperature, ac_frequency, branch_status, discharge_status, dc_power, dc_voltage, dc_current, create_by, create_time, update_by, update_time, remark, site_id, device_id, date_month, date_day, total_ac_charge_energy, total_ac_discharge_energy, ac_charge_active_power, ac_capacitive_reactive_power, ac_discharge_active_power, ac_inductive_reactive_power, max_capacitive_power_capacity, max_inductive_power_capacity, max_charge_power_capacity, max_discharge_power_capacity, ac_switch_status, dc_switch_status, remote_control_status from ems_pcs_data
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsPcsDataList" parameterType="EmsPcsData" resultMap="EmsPcsDataResult">
|
<select id="selectEmsPcsDataList" parameterType="EmsPcsData" resultMap="EmsPcsDataResult">
|
||||||
@ -75,11 +87,23 @@
|
|||||||
<if test="dcPower != null "> and dc_power = #{dcPower}</if>
|
<if test="dcPower != null "> and dc_power = #{dcPower}</if>
|
||||||
<if test="dcVoltage != null "> and dc_voltage = #{dcVoltage}</if>
|
<if test="dcVoltage != null "> and dc_voltage = #{dcVoltage}</if>
|
||||||
<if test="dcCurrent != null "> and dc_current = #{dcCurrent}</if>
|
<if test="dcCurrent != null "> and dc_current = #{dcCurrent}</if>
|
||||||
<if test="siteId != null "> and site_id = #{siteId}</if>
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
<if test="deviceId != null "> and device_id = #{deviceId}</if>
|
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
|
||||||
<if test="dateMonth != null "> and date_month = #{dateMonth}</if>
|
<if test="dateMonth != null "> and date_month = #{dateMonth}</if>
|
||||||
<if test="dateDay != null "> and date_day = #{dateDay}</if>
|
<if test="dateDay != null "> and date_day = #{dateDay}</if>
|
||||||
<if test="communicationStatus != null and communicationStatus != ''"> and communication_status = #{communicationStatus}</if>
|
<if test="totalAcChargeEnergy != null "> and total_ac_charge_energy = #{totalAcChargeEnergy}</if>
|
||||||
|
<if test="totalAcDischargeEnergy != null "> and total_ac_discharge_energy = #{totalAcDischargeEnergy}</if>
|
||||||
|
<if test="acChargeActivePower != null "> and ac_charge_active_power = #{acChargeActivePower}</if>
|
||||||
|
<if test="acCapacitiveReactivePower != null "> and ac_capacitive_reactive_power = #{acCapacitiveReactivePower}</if>
|
||||||
|
<if test="acDischargeActivePower != null "> and ac_discharge_active_power = #{acDischargeActivePower}</if>
|
||||||
|
<if test="acInductiveReactivePower != null "> and ac_inductive_reactive_power = #{acInductiveReactivePower}</if>
|
||||||
|
<if test="maxCapacitivePowerCapacity != null "> and max_capacitive_power_capacity = #{maxCapacitivePowerCapacity}</if>
|
||||||
|
<if test="maxInductivePowerCapacity != null "> and max_inductive_power_capacity = #{maxInductivePowerCapacity}</if>
|
||||||
|
<if test="maxChargePowerCapacity != null "> and max_charge_power_capacity = #{maxChargePowerCapacity}</if>
|
||||||
|
<if test="maxDischargePowerCapacity != null "> and max_discharge_power_capacity = #{maxDischargePowerCapacity}</if>
|
||||||
|
<if test="acSwitchStatus != null and acSwitchStatus != ''"> and ac_switch_status = #{acSwitchStatus}</if>
|
||||||
|
<if test="dcSwitchStatus != null and dcSwitchStatus != ''"> and dc_switch_status = #{dcSwitchStatus}</if>
|
||||||
|
<if test="remoteControlStatus != null and remoteControlStatus != ''"> and remote_control_status = #{remoteControlStatus}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -122,10 +146,22 @@
|
|||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">remark,</if>
|
||||||
<if test="siteId != null">site_id,</if>
|
<if test="siteId != null">site_id,</if>
|
||||||
<if test="deviceId != null">device_id,</if>
|
<if test="deviceId != null and deviceId != ''">device_id,</if>
|
||||||
<if test="dateMonth != null">date_month,</if>
|
<if test="dateMonth != null">date_month,</if>
|
||||||
<if test="dateDay != null">date_day,</if>
|
<if test="dateDay != null">date_day,</if>
|
||||||
<if test="communicationStatus != null">communication_status,</if>
|
<if test="totalAcChargeEnergy != null">total_ac_charge_energy,</if>
|
||||||
|
<if test="totalAcDischargeEnergy != null">total_ac_discharge_energy,</if>
|
||||||
|
<if test="acChargeActivePower != null">ac_charge_active_power,</if>
|
||||||
|
<if test="acCapacitiveReactivePower != null">ac_capacitive_reactive_power,</if>
|
||||||
|
<if test="acDischargeActivePower != null">ac_discharge_active_power,</if>
|
||||||
|
<if test="acInductiveReactivePower != null">ac_inductive_reactive_power,</if>
|
||||||
|
<if test="maxCapacitivePowerCapacity != null">max_capacitive_power_capacity,</if>
|
||||||
|
<if test="maxInductivePowerCapacity != null">max_inductive_power_capacity,</if>
|
||||||
|
<if test="maxChargePowerCapacity != null">max_charge_power_capacity,</if>
|
||||||
|
<if test="maxDischargePowerCapacity != null">max_discharge_power_capacity,</if>
|
||||||
|
<if test="acSwitchStatus != null">ac_switch_status,</if>
|
||||||
|
<if test="dcSwitchStatus != null">dc_switch_status,</if>
|
||||||
|
<if test="remoteControlStatus != null">remote_control_status,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="dataUpdateTime != null">#{dataUpdateTime},</if>
|
<if test="dataUpdateTime != null">#{dataUpdateTime},</if>
|
||||||
@ -159,10 +195,22 @@
|
|||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
<if test="remark != null">#{remark},</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
<if test="siteId != null">#{siteId},</if>
|
<if test="siteId != null">#{siteId},</if>
|
||||||
<if test="deviceId != null">#{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">#{deviceId},</if>
|
||||||
<if test="dateMonth != null">#{dateMonth},</if>
|
<if test="dateMonth != null">#{dateMonth},</if>
|
||||||
<if test="dateDay != null">#{dateDay},</if>
|
<if test="dateDay != null">#{dateDay},</if>
|
||||||
<if test="communicationStatus != null">#{communicationStatus},</if>
|
<if test="totalAcChargeEnergy != null">#{totalAcChargeEnergy},</if>
|
||||||
|
<if test="totalAcDischargeEnergy != null">#{totalAcDischargeEnergy},</if>
|
||||||
|
<if test="acChargeActivePower != null">#{acChargeActivePower},</if>
|
||||||
|
<if test="acCapacitiveReactivePower != null">#{acCapacitiveReactivePower},</if>
|
||||||
|
<if test="acDischargeActivePower != null">#{acDischargeActivePower},</if>
|
||||||
|
<if test="acInductiveReactivePower != null">#{acInductiveReactivePower},</if>
|
||||||
|
<if test="maxCapacitivePowerCapacity != null">#{maxCapacitivePowerCapacity},</if>
|
||||||
|
<if test="maxInductivePowerCapacity != null">#{maxInductivePowerCapacity},</if>
|
||||||
|
<if test="maxChargePowerCapacity != null">#{maxChargePowerCapacity},</if>
|
||||||
|
<if test="maxDischargePowerCapacity != null">#{maxDischargePowerCapacity},</if>
|
||||||
|
<if test="acSwitchStatus != null">#{acSwitchStatus},</if>
|
||||||
|
<if test="dcSwitchStatus != null">#{dcSwitchStatus},</if>
|
||||||
|
<if test="remoteControlStatus != null">#{remoteControlStatus},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -200,10 +248,22 @@
|
|||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
<if test="remark != null">remark = #{remark},</if>
|
<if test="remark != null">remark = #{remark},</if>
|
||||||
<if test="siteId != null">site_id = #{siteId},</if>
|
<if test="siteId != null">site_id = #{siteId},</if>
|
||||||
<if test="deviceId != null">device_id = #{deviceId},</if>
|
<if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if>
|
||||||
<if test="dateMonth != null">date_month = #{dateMonth},</if>
|
<if test="dateMonth != null">date_month = #{dateMonth},</if>
|
||||||
<if test="dateDay != null">date_day = #{dateDay},</if>
|
<if test="dateDay != null">date_day = #{dateDay},</if>
|
||||||
<if test="communicationStatus != null">communication_status = #{communicationStatus},</if>
|
<if test="totalAcChargeEnergy != null">total_ac_charge_energy = #{totalAcChargeEnergy},</if>
|
||||||
|
<if test="totalAcDischargeEnergy != null">total_ac_discharge_energy = #{totalAcDischargeEnergy},</if>
|
||||||
|
<if test="acChargeActivePower != null">ac_charge_active_power = #{acChargeActivePower},</if>
|
||||||
|
<if test="acCapacitiveReactivePower != null">ac_capacitive_reactive_power = #{acCapacitiveReactivePower},</if>
|
||||||
|
<if test="acDischargeActivePower != null">ac_discharge_active_power = #{acDischargeActivePower},</if>
|
||||||
|
<if test="acInductiveReactivePower != null">ac_inductive_reactive_power = #{acInductiveReactivePower},</if>
|
||||||
|
<if test="maxCapacitivePowerCapacity != null">max_capacitive_power_capacity = #{maxCapacitivePowerCapacity},</if>
|
||||||
|
<if test="maxInductivePowerCapacity != null">max_inductive_power_capacity = #{maxInductivePowerCapacity},</if>
|
||||||
|
<if test="maxChargePowerCapacity != null">max_charge_power_capacity = #{maxChargePowerCapacity},</if>
|
||||||
|
<if test="maxDischargePowerCapacity != null">max_discharge_power_capacity = #{maxDischargePowerCapacity},</if>
|
||||||
|
<if test="acSwitchStatus != null">ac_switch_status = #{acSwitchStatus},</if>
|
||||||
|
<if test="dcSwitchStatus != null">dc_switch_status = #{dcSwitchStatus},</if>
|
||||||
|
<if test="remoteControlStatus != null">remote_control_status = #{remoteControlStatus},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -219,66 +279,78 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getPcsDataBySiteId" parameterType="Long" resultType="com.xzzn.ems.domain.vo.SiteMonitorDataVo">
|
<select id="getPcsDataBySiteId" resultType="com.xzzn.ems.domain.vo.SiteMonitorDataVo">
|
||||||
select CONCAT(date_month,'/',date_day) as ammeterDate,
|
select CONCAT(t.date_month,'/',t.date_day) as ammeterDate,
|
||||||
sum(daily_ac_charge_energy) as chargedCap,
|
sum(t.daily_ac_charge_energy) as chargedCap,
|
||||||
sum(daily_ac_discharge_energy) as disChargedCap
|
sum(t.daily_ac_discharge_energy) as disChargedCap
|
||||||
from ems_pcs_data
|
from (
|
||||||
where site_id = #{siteId}
|
SELECT p.site_id, p.device_id,p.date_month,p.date_day, MAX(p.data_update_time) AS max_update_time
|
||||||
and date_sub(CURDATE(), interval 6 day) <= create_time
|
FROM ems_pcs_data p
|
||||||
group by date_month,date_day
|
where p.site_id = #{siteId} and p.create_time >= CURDATE() - INTERVAL #{limitTime} DAY
|
||||||
</select>
|
GROUP BY p.site_id,p.device_id,p.date_month,p.date_day
|
||||||
|
) latest inner join ems_pcs_data t ON latest.site_id = t.site_id
|
||||||
<select id="getGridNrtPower" parameterType="Long" resultType="java.math.BigDecimal">
|
AND latest.device_id = t.device_id
|
||||||
select sum(total_active_power) as gridNrtPower
|
AND latest.max_update_time = t.data_update_time
|
||||||
from ems_pcs_data
|
and latest.date_month = t.date_month
|
||||||
where site_id = #{siteId}
|
and latest.date_day = t.date_day
|
||||||
|
group by ammeterDate
|
||||||
|
order by ammeterDate desc;
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getPcsTotalChargeData" resultType="map">
|
<select id="getPcsTotalChargeData" resultType="map">
|
||||||
select SUM(t.daily_ac_charge_energy) as totalChargedCap,
|
SELECT
|
||||||
SUM(t.daily_ac_discharge_energy) as totalDischargedCap
|
SUM(t.total_ac_charge_energy) AS totalChargedCap,
|
||||||
from ems_pcs_data t
|
SUM(t.total_ac_discharge_energy) AS totalDischargedCap,
|
||||||
where t.data_update_time = (select MAX(data_update_time) FROM ems_pcs_data
|
SUM(t.total_active_power) as gridNrtPower
|
||||||
where site_id = t.site_id and device_id = t.device_id and date_month = t.date_month and date_day = t.date_day)
|
FROM (
|
||||||
|
SELECT p.site_id, p.device_id, MAX(p.data_update_time) AS max_update_time
|
||||||
|
FROM ems_pcs_data p inner join ems_site_setting s on p.site_id = s.site_id
|
||||||
|
<if test="siteId != null and siteId != ''">
|
||||||
|
where p.site_id = #{siteId}
|
||||||
|
</if>
|
||||||
|
GROUP BY p.site_id,p.device_id
|
||||||
|
) latest inner join ems_pcs_data t ON latest.site_id = t.site_id
|
||||||
|
AND latest.device_id = t.device_id
|
||||||
|
AND latest.max_update_time = t.data_update_time
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getSiteRunningHeadInfo" parameterType="Long" resultType="com.xzzn.ems.domain.vo.SiteMonitorRuningHeadInfoVo">
|
<select id="getSiteRunningHeadInfo" parameterType="String" resultType="com.xzzn.ems.domain.vo.SiteMonitorRunningHeadInfoVo">
|
||||||
select sum(a.total_active_power) as totalActivePower,
|
SELECT
|
||||||
sum(a.total_reactive_power) as totalReactivePower,
|
SUM(t.total_active_power) as totalActivePower,
|
||||||
sum(a.daily_ac_charge_energy) as dayChargedCap,
|
SUM(t.total_reactive_power) as totalReactivePower,
|
||||||
sum(a.daily_ac_discharge_energy) as dayDisChargedCap
|
sum(t.daily_ac_charge_energy) as dayChargedCap,
|
||||||
from (
|
sum(t.daily_ac_discharge_energy) as dayDisChargedCap,
|
||||||
select t.total_active_power,t.total_reactive_power,
|
#{siteId} as siteId
|
||||||
t.daily_ac_charge_energy,t.daily_ac_discharge_energy,
|
FROM (
|
||||||
t.device_id,t.site_id,t.create_time
|
SELECT p.device_id, MAX(p.data_update_time) AS max_update_time
|
||||||
from ems_pcs_data t
|
FROM ems_pcs_data p
|
||||||
where t.site_id = #{siteId}
|
where p.site_id = #{siteId}
|
||||||
and t.create_time = (select MAX(create_time) FROM ems_pcs_data where site_id = t.site_id and device_id = t.device_id)
|
and p.data_update_time >= CURDATE()
|
||||||
group by t.device_id,t.total_active_power, total_reactive_power,
|
GROUP BY p.device_id
|
||||||
t.daily_ac_charge_energy,t.daily_ac_discharge_energy,t.site_id,t.create_time
|
) latest inner join ems_pcs_data t ON latest.device_id = t.device_id
|
||||||
) a
|
AND latest.max_update_time = t.data_update_time
|
||||||
|
AND t.site_id = #{siteId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getElectDataList" resultType="com.xzzn.ems.domain.vo.ElectricIndexList">
|
<select id="getElectDataList" resultType="com.xzzn.ems.domain.vo.ElectricIndexList">
|
||||||
select tmp.date_month as dateMonth,
|
select tmp.date_month as dateMonth,
|
||||||
SUM(tmp.daily_ac_charge_energy) as chargeEnergy,
|
SUM(tmp.daily_ac_charge_energy) as chargeEnergy,
|
||||||
SUM(tmp.daily_ac_discharge_energy) as disChargeEnergy
|
SUM(tmp.daily_ac_discharge_energy) as disChargeEnergy
|
||||||
from
|
from (
|
||||||
(
|
select date_month,date_day,t.daily_ac_charge_energy,t.daily_ac_discharge_energy,t.create_time
|
||||||
select date_month,date_day,
|
|
||||||
t.daily_ac_charge_energy,t.daily_ac_discharge_energy,t.create_time
|
|
||||||
from ems_pcs_data t
|
from ems_pcs_data t
|
||||||
where t.create_time = (select MAX(create_time) FROM ems_pcs_data where site_id = t.site_id
|
where t.create_time = (select MAX(create_time) FROM ems_pcs_data where site_id = t.site_id
|
||||||
and device_id = t.device_id and date_day = t.date_day and date_month = t.date_month)
|
and device_id = t.device_id and date_day = t.date_day and date_month = t.date_month)
|
||||||
|
|
||||||
) as tmp
|
) as tmp
|
||||||
group by dateMonth
|
group by dateMonth
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getPcsDetailInfoBySiteId" parameterType="Long" resultType="com.xzzn.ems.domain.vo.PcsDetailInfoVo">
|
<select id="getPcsDetailInfoBySiteId" parameterType="String" resultType="com.xzzn.ems.domain.vo.PcsDetailInfoVo">
|
||||||
select td.device_name as deviceName,td.communication_status as communicationStatus,
|
SELECT td.device_name as deviceName,
|
||||||
tmp.site_id as siteId,tmp.device_id as deviceId,
|
td.communication_status as communicationStatus,
|
||||||
|
tmp.site_id as siteId,
|
||||||
|
tmp.device_id as deviceId,
|
||||||
tmp.data_update_time as dataUpdateTime,tmp.work_status as workStatus,
|
tmp.data_update_time as dataUpdateTime,tmp.work_status as workStatus,
|
||||||
tmp.grid_status as gridStatus,tmp.device_status as deviceStatus,tmp.control_mode as controlMode,
|
tmp.grid_status as gridStatus,tmp.device_status as deviceStatus,tmp.control_mode as controlMode,
|
||||||
tmp.total_active_power as totalActivePower,tmp.daily_ac_charge_energy as dailyAcChargeEnergy,
|
tmp.total_active_power as totalActivePower,tmp.daily_ac_charge_energy as dailyAcChargeEnergy,
|
||||||
@ -289,10 +361,14 @@
|
|||||||
tmp.c_phase_current as cPhaseVoltage,tmp.c_phase_current as cPhaseCurrent,
|
tmp.c_phase_current as cPhaseVoltage,tmp.c_phase_current as cPhaseCurrent,
|
||||||
tmp.total_power_factor as totalPowerFactor,
|
tmp.total_power_factor as totalPowerFactor,
|
||||||
tmp.pcs_environment_temperature as pcsEnvironmentTemperature,tmp.ac_frequency as acFrequency
|
tmp.pcs_environment_temperature as pcsEnvironmentTemperature,tmp.ac_frequency as acFrequency
|
||||||
from ems_pcs_data tmp left join ems_devices_setting td on tmp.device_id = td.id and tmp.site_id = td.site_id
|
FROM ems_pcs_data tmp
|
||||||
where tmp.site_id = #{siteId}
|
LEFT JOIN ems_devices_setting td on tmp.device_id = td.device_id and tmp.site_id = td.site_id
|
||||||
and tmp.data_update_time = (select MAX(data_update_time) FROM ems_pcs_data where site_id = tmp.site_id
|
INNER JOIN ( SELECT p.site_id, p.device_id, MAX(p.data_update_time) AS max_update_time
|
||||||
and device_id = tmp.device_id)
|
FROM ems_pcs_data p
|
||||||
|
WHERE p.site_id = #{siteId}
|
||||||
|
GROUP BY p.site_id,p.device_id
|
||||||
|
) latest on tmp.device_id = latest.device_id and tmp.data_update_time = latest.max_update_time
|
||||||
|
WHERE tmp.site_id = #{siteId}
|
||||||
order by tmp.device_id
|
order by tmp.device_id
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -18,10 +18,11 @@
|
|||||||
<result property="updateBy" column="update_by" />
|
<result property="updateBy" column="update_by" />
|
||||||
<result property="createTime" column="create_time" />
|
<result property="createTime" column="create_time" />
|
||||||
<result property="updateTime" column="update_time" />
|
<result property="updateTime" column="update_time" />
|
||||||
|
<result property="siteId" column="site_id" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectEmsSiteSettingVo">
|
<sql id="selectEmsSiteSettingVo">
|
||||||
select id, site_name, site_address, running_time, latitude, longitude, install_capacity, install_power, remark, create_by, update_by, create_time, update_time from ems_site_setting
|
select id, site_name, site_address, running_time, latitude, longitude, install_capacity, install_power, remark, create_by, update_by, create_time, update_time, site_id from ems_site_setting
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectEmsSiteSettingList" parameterType="EmsSiteSetting" resultMap="EmsSiteSettingResult">
|
<select id="selectEmsSiteSettingList" parameterType="EmsSiteSetting" resultMap="EmsSiteSettingResult">
|
||||||
@ -34,6 +35,7 @@
|
|||||||
<if test="longitude != null "> and longitude = #{longitude}</if>
|
<if test="longitude != null "> and longitude = #{longitude}</if>
|
||||||
<if test="installCapacity != null "> and install_capacity = #{installCapacity}</if>
|
<if test="installCapacity != null "> and install_capacity = #{installCapacity}</if>
|
||||||
<if test="installPower != null "> and install_power = #{installPower}</if>
|
<if test="installPower != null "> and install_power = #{installPower}</if>
|
||||||
|
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
@ -57,6 +59,7 @@
|
|||||||
<if test="updateBy != null">update_by,</if>
|
<if test="updateBy != null">update_by,</if>
|
||||||
<if test="createTime != null">create_time,</if>
|
<if test="createTime != null">create_time,</if>
|
||||||
<if test="updateTime != null">update_time,</if>
|
<if test="updateTime != null">update_time,</if>
|
||||||
|
<if test="siteId != null and siteId != ''">site_id,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="siteName != null and siteName != ''">#{siteName},</if>
|
<if test="siteName != null and siteName != ''">#{siteName},</if>
|
||||||
@ -71,6 +74,7 @@
|
|||||||
<if test="updateBy != null">#{updateBy},</if>
|
<if test="updateBy != null">#{updateBy},</if>
|
||||||
<if test="createTime != null">#{createTime},</if>
|
<if test="createTime != null">#{createTime},</if>
|
||||||
<if test="updateTime != null">#{updateTime},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
|
<if test="siteId != null and siteId != ''">#{siteId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -89,6 +93,7 @@
|
|||||||
<if test="updateBy != null">update_by = #{updateBy},</if>
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
||||||
<if test="createTime != null">create_time = #{createTime},</if>
|
<if test="createTime != null">create_time = #{createTime},</if>
|
||||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
|
<if test="siteId != null and siteId != ''">site_id = #{siteId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@ -105,9 +110,14 @@
|
|||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getSiteTotalInfo" resultType="com.xzzn.ems.domain.vo.SiteTotalInfoVo">
|
<select id="getSiteTotalInfo" resultType="com.xzzn.ems.domain.vo.SiteTotalInfoVo">
|
||||||
select count(DISTINCT s.id) as siteNum,
|
select count(DISTINCT s.site_id) as siteNum,
|
||||||
SUM(s.install_capacity) as installCapacity,
|
SUM(s.install_capacity) as installCapacity,
|
||||||
SUM(s.install_power) as installPower
|
SUM(s.install_power) as installPower
|
||||||
from ems_site_setting s
|
from ems_site_setting s
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="selectEmsSiteSettingBySiteId" parameterType="String" resultMap="EmsSiteSettingResult">
|
||||||
|
<include refid="selectEmsSiteSettingVo"/>
|
||||||
|
where site_id = #{siteId}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
107
ems-system/src/main/resources/mapper/ems/EmsTicketMapper.xml
Normal file
107
ems-system/src/main/resources/mapper/ems/EmsTicketMapper.xml
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.xzzn.ems.mapper.EmsTicketMapper">
|
||||||
|
|
||||||
|
<resultMap type="EmsTicket" id="EmsTicketResult">
|
||||||
|
<result property="id" column="id" />
|
||||||
|
<result property="ticketNo" column="ticket_no" />
|
||||||
|
<result property="userId" column="user_id" />
|
||||||
|
<result property="title" column="title" />
|
||||||
|
<result property="content" column="content" />
|
||||||
|
<result property="images" column="images" />
|
||||||
|
<result property="status" column="status" />
|
||||||
|
<result property="createTime" column="create_time" />
|
||||||
|
<result property="completeTime" column="complete_time" />
|
||||||
|
<result property="createBy" column="create_by" />
|
||||||
|
<result property="updateBy" column="update_by" />
|
||||||
|
<result property="updateTime" column="update_time" />
|
||||||
|
<result property="workUserId" column="work_user_id" />
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="selectEmsTicketVo">
|
||||||
|
select id, ticket_no, user_id, title, content, images, status, create_time, complete_time, create_by, update_by, update_time, work_user_id from ems_ticket
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<select id="selectEmsTicketList" parameterType="EmsTicket" resultMap="EmsTicketResult">
|
||||||
|
<include refid="selectEmsTicketVo"/>
|
||||||
|
<where>
|
||||||
|
<if test="ticketNo != null and ticketNo != ''"> and ticket_no = #{ticketNo}</if>
|
||||||
|
<if test="userId != null and userId != ''"> and user_id = #{userId}</if>
|
||||||
|
<if test="title != null and title != ''"> and title = #{title}</if>
|
||||||
|
<if test="content != null and content != ''"> and content = #{content}</if>
|
||||||
|
<if test="images != null and images != ''"> and images = #{images}</if>
|
||||||
|
<if test="status != null "> and status = #{status}</if>
|
||||||
|
<if test="completeTime != null "> and complete_time = #{completeTime}</if>
|
||||||
|
<if test="workUserId != null "> and work_user_id = #{workUserId}</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectEmsTicketById" parameterType="String" resultMap="EmsTicketResult">
|
||||||
|
<include refid="selectEmsTicketVo"/>
|
||||||
|
where id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<insert id="insertEmsTicket" parameterType="EmsTicket" useGeneratedKeys="true" keyProperty="id">
|
||||||
|
insert into ems_ticket
|
||||||
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="ticketNo != null and ticketNo != ''">ticket_no,</if>
|
||||||
|
<if test="userId != null and userId != ''">user_id,</if>
|
||||||
|
<if test="title != null and title != ''">title,</if>
|
||||||
|
<if test="content != null and content != ''">content,</if>
|
||||||
|
<if test="images != null">images,</if>
|
||||||
|
<if test="status != null">status,</if>
|
||||||
|
<if test="createTime != null">create_time,</if>
|
||||||
|
<if test="completeTime != null">complete_time,</if>
|
||||||
|
<if test="createBy != null">create_by,</if>
|
||||||
|
<if test="updateBy != null">update_by,</if>
|
||||||
|
<if test="updateTime != null">update_time,</if>
|
||||||
|
<if test="workUserId != null">work_user_id,</if>
|
||||||
|
</trim>
|
||||||
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="ticketNo != null and ticketNo != ''">#{ticketNo},</if>
|
||||||
|
<if test="userId != null and userId != ''">#{userId},</if>
|
||||||
|
<if test="title != null and title != ''">#{title},</if>
|
||||||
|
<if test="content != null and content != ''">#{content},</if>
|
||||||
|
<if test="images != null">#{images},</if>
|
||||||
|
<if test="status != null">#{status},</if>
|
||||||
|
<if test="createTime != null">#{createTime},</if>
|
||||||
|
<if test="completeTime != null">#{completeTime},</if>
|
||||||
|
<if test="createBy != null">#{createBy},</if>
|
||||||
|
<if test="updateBy != null">#{updateBy},</if>
|
||||||
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
|
<if test="workUserId != null">#{workUserId},</if>
|
||||||
|
</trim>
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="updateEmsTicket" parameterType="EmsTicket">
|
||||||
|
update ems_ticket
|
||||||
|
<trim prefix="SET" suffixOverrides=",">
|
||||||
|
<if test="ticketNo != null and ticketNo != ''">ticket_no = #{ticketNo},</if>
|
||||||
|
<if test="userId != null and userId != ''">user_id = #{userId},</if>
|
||||||
|
<if test="title != null and title != ''">title = #{title},</if>
|
||||||
|
<if test="content != null and content != ''">content = #{content},</if>
|
||||||
|
<if test="images != null">images = #{images},</if>
|
||||||
|
<if test="status != null">status = #{status},</if>
|
||||||
|
<if test="createTime != null">create_time = #{createTime},</if>
|
||||||
|
<if test="completeTime != null">complete_time = #{completeTime},</if>
|
||||||
|
<if test="createBy != null">create_by = #{createBy},</if>
|
||||||
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
||||||
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||||
|
<if test="workUserId != null">work_user_id = #{workUserId},</if>
|
||||||
|
</trim>
|
||||||
|
where id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<delete id="deleteEmsTicketById" parameterType="String">
|
||||||
|
delete from ems_ticket where id = #{id}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<delete id="deleteEmsTicketByIds" parameterType="String">
|
||||||
|
delete from ems_ticket where id in
|
||||||
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</delete>
|
||||||
|
</mapper>
|
10
pom.xml
10
pom.xml
@ -154,6 +154,16 @@
|
|||||||
<artifactId>poi-ooxml</artifactId>
|
<artifactId>poi-ooxml</artifactId>
|
||||||
<version>${poi.version}</version>
|
<version>${poi.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<!-- -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.paho</groupId>
|
||||||
|
<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
|
||||||
|
<version>1.2.5</version> <!-- 检查最新版本 -->
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.integration</groupId>
|
||||||
|
<artifactId>spring-integration-mqtt</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- velocity代码生成使用模板 -->
|
<!-- velocity代码生成使用模板 -->
|
||||||
<dependency>
|
<dependency>
|
||||||
|
Reference in New Issue
Block a user