20250808优化-告警优化&主路线图优化
This commit is contained in:
@ -26,6 +26,9 @@ public class AlarmRecordListRequestVo {
|
|||||||
/** 设备id */
|
/** 设备id */
|
||||||
private String deviceId;
|
private String deviceId;
|
||||||
|
|
||||||
|
/** 告警状态 */
|
||||||
|
private String status;
|
||||||
|
|
||||||
public String getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
@ -73,4 +76,12 @@ public class AlarmRecordListRequestVo {
|
|||||||
public void setDeviceId(String deviceId) {
|
public void setDeviceId(String deviceId) {
|
||||||
this.deviceId = deviceId;
|
this.deviceId = deviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStatus(String status) {
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,6 +25,8 @@ public class SiteDeviceListVo {
|
|||||||
private String id;
|
private String id;
|
||||||
/** 父类id */
|
/** 父类id */
|
||||||
private String parentId;
|
private String parentId;
|
||||||
|
/** 单体电池个数-仅stack设备下有 */
|
||||||
|
private int batteryNum;
|
||||||
|
|
||||||
public String getSiteId() {
|
public String getSiteId() {
|
||||||
return siteId;
|
return siteId;
|
||||||
@ -105,4 +107,12 @@ public class SiteDeviceListVo {
|
|||||||
public void setParentId(String parentId) {
|
public void setParentId(String parentId) {
|
||||||
this.parentId = parentId;
|
this.parentId = parentId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getBatteryNum() {
|
||||||
|
return batteryNum;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryNum(int batteryNum) {
|
||||||
|
this.batteryNum = batteryNum;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,6 +4,8 @@ import java.time.LocalDateTime;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import com.xzzn.ems.domain.EmsBatteryDataDay;
|
import com.xzzn.ems.domain.EmsBatteryDataDay;
|
||||||
import com.xzzn.ems.domain.EmsBatteryDataHour;
|
import com.xzzn.ems.domain.EmsBatteryDataHour;
|
||||||
|
import com.xzzn.ems.domain.vo.BatteryDataStatsListVo;
|
||||||
|
import com.xzzn.ems.domain.vo.DateSearchRequest;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -69,4 +71,6 @@ public interface EmsBatteryDataDayMapper
|
|||||||
* 批量插入或更新天级数据(存在则更新,不存在则插入)
|
* 批量插入或更新天级数据(存在则更新,不存在则插入)
|
||||||
*/
|
*/
|
||||||
void batchInsertOrUpdate(@Param("list") List<EmsBatteryDataDay> dayDataList);
|
void batchInsertOrUpdate(@Param("list") List<EmsBatteryDataDay> dayDataList);
|
||||||
|
|
||||||
|
public List<BatteryDataStatsListVo> getBatteryDayData(DateSearchRequest requestVo);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -815,13 +815,13 @@ public class DDSDataProcessServiceImpl extends AbstractBatteryDataProcessor impl
|
|||||||
dataMete.setCurrentCombActiveFlat(StringUtils.getBigDecimal(obj.get("DQZHYGPDN")));
|
dataMete.setCurrentCombActiveFlat(StringUtils.getBigDecimal(obj.get("DQZHYGPDN")));
|
||||||
dataMete.setCurrentCombActiveValley(StringUtils.getBigDecimal(obj.get("DQZHYGGDN")));
|
dataMete.setCurrentCombActiveValley(StringUtils.getBigDecimal(obj.get("DQZHYGGDN")));
|
||||||
// 电能设置-正向有功
|
// 电能设置-正向有功
|
||||||
dataMete.setCurrentForwardActiveTotal(StringUtils.getBigDecimal(obj.get("DQZXYGZDN")));
|
dataMete.setCurrentForwardActiveTotal(StringUtils.getBigDecimal(obj.get("DQZXZYGDN")));
|
||||||
dataMete.setCurrentForwardActivePeak(StringUtils.getBigDecimal(obj.get("DQZXYGJDN")));
|
dataMete.setCurrentForwardActivePeak(StringUtils.getBigDecimal(obj.get("DQZXYGJDN")));
|
||||||
dataMete.setCurrentForwardActiveHigh(StringUtils.getBigDecimal(obj.get("DQZXYGFDN")));
|
dataMete.setCurrentForwardActiveHigh(StringUtils.getBigDecimal(obj.get("DQZXYGFDN")));
|
||||||
dataMete.setCurrentForwardActiveFlat(StringUtils.getBigDecimal(obj.get("DQZXYGPDN")));
|
dataMete.setCurrentForwardActiveFlat(StringUtils.getBigDecimal(obj.get("DQZXYGPDN")));
|
||||||
dataMete.setCurrentForwardActiveValley(StringUtils.getBigDecimal(obj.get("DQZXYGGDN")));
|
dataMete.setCurrentForwardActiveValley(StringUtils.getBigDecimal(obj.get("DQZXYGGDN")));
|
||||||
// 电能设置-反向有功
|
// 电能设置-反向有功
|
||||||
dataMete.setCurrentReverseActiveTotal(StringUtils.getBigDecimal(obj.get("DQFXYGZDN")));
|
dataMete.setCurrentReverseActiveTotal(StringUtils.getBigDecimal(obj.get("DQFXZYGDN")));
|
||||||
dataMete.setCurrentReverseActivePeak(StringUtils.getBigDecimal(obj.get("DQFXYGJDN")));
|
dataMete.setCurrentReverseActivePeak(StringUtils.getBigDecimal(obj.get("DQFXYGJDN")));
|
||||||
dataMete.setCurrentReverseActiveHigh(StringUtils.getBigDecimal(obj.get("DQFXYGFDN")));
|
dataMete.setCurrentReverseActiveHigh(StringUtils.getBigDecimal(obj.get("DQFXYGFDN")));
|
||||||
dataMete.setCurrentReverseActiveFlat(StringUtils.getBigDecimal(obj.get("DQFXYGPDN")));
|
dataMete.setCurrentReverseActiveFlat(StringUtils.getBigDecimal(obj.get("DQFXYGPDN")));
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
package com.xzzn.ems.service.impl;
|
package com.xzzn.ems.service.impl;
|
||||||
|
|
||||||
|
import com.xzzn.common.constant.RedisKeyConstants;
|
||||||
|
import com.xzzn.common.core.redis.RedisCache;
|
||||||
import com.xzzn.common.enums.DeviceCategory;
|
import com.xzzn.common.enums.DeviceCategory;
|
||||||
|
import com.xzzn.ems.domain.EmsBatteryData;
|
||||||
import com.xzzn.ems.domain.EmsSiteSetting;
|
import com.xzzn.ems.domain.EmsSiteSetting;
|
||||||
import com.xzzn.ems.domain.vo.SiteDeviceListVo;
|
import com.xzzn.ems.domain.vo.SiteDeviceListVo;
|
||||||
import com.xzzn.ems.domain.vo.SiteTotalInfoVo;
|
import com.xzzn.ems.domain.vo.SiteTotalInfoVo;
|
||||||
@ -25,6 +28,8 @@ public class EmsSiteServiceImpl implements IEmsSiteService
|
|||||||
private EmsSiteSettingMapper emsSiteMapper;
|
private EmsSiteSettingMapper emsSiteMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private EmsDevicesSettingMapper emsDevicesMapper;
|
private EmsDevicesSettingMapper emsDevicesMapper;
|
||||||
|
@Autowired
|
||||||
|
private RedisCache redisCache;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<EmsSiteSetting> getAllSites() {
|
public List<EmsSiteSetting> getAllSites() {
|
||||||
@ -76,7 +81,20 @@ public class EmsSiteServiceImpl implements IEmsSiteService
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<SiteDeviceListVo> getAllDeviceList(String siteId) {
|
public List<SiteDeviceListVo> getAllDeviceList(String siteId) {
|
||||||
return emsSiteMapper.getAllSiteDeviceList(siteId);
|
List<SiteDeviceListVo> resultData = emsSiteMapper.getAllSiteDeviceList(siteId);
|
||||||
|
if(resultData == null || resultData.size() == 0){
|
||||||
|
return resultData;
|
||||||
|
}
|
||||||
|
for (SiteDeviceListVo siteDeviceListVo : resultData) {
|
||||||
|
String clusterId = siteDeviceListVo.getDeviceId();
|
||||||
|
String deviceCategory = siteDeviceListVo.getDeviceCategory();
|
||||||
|
if(DeviceCategory.CLUSTER.getCode().equals(deviceCategory)){
|
||||||
|
// 获取该stack下面有多少单体电池
|
||||||
|
List<EmsBatteryData> batteryDataList = redisCache.getCacheList(RedisKeyConstants.BATTERY + siteId + "_" + clusterId);
|
||||||
|
siteDeviceListVo.setBatteryNum(batteryDataList == null ? 0 : batteryDataList.size());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return resultData;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -39,6 +39,8 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
|
|||||||
private EmsBatteryDataMapper emsBatteryDataMapper;
|
private EmsBatteryDataMapper emsBatteryDataMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private EmsBatteryDailyLatestMapper emsBatteryDailyLatestMapper;
|
private EmsBatteryDailyLatestMapper emsBatteryDailyLatestMapper;
|
||||||
|
@Autowired
|
||||||
|
private EmsBatteryDataDayMapper emsBatteryDataDayMapper;
|
||||||
|
|
||||||
// 电量指标
|
// 电量指标
|
||||||
@Override
|
@Override
|
||||||
@ -295,6 +297,6 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
|
|||||||
public List<BatteryDataStatsListVo> getSingleBatteryData(DateSearchRequest requestVo) {
|
public List<BatteryDataStatsListVo> getSingleBatteryData(DateSearchRequest requestVo) {
|
||||||
// 默认时间-7天
|
// 默认时间-7天
|
||||||
dealRequestTime(requestVo);
|
dealRequestTime(requestVo);
|
||||||
return emsBatteryDailyLatestMapper.getBatteryDailyLatest(requestVo);
|
return emsBatteryDataDayMapper.getBatteryDayData(requestVo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -162,6 +162,13 @@
|
|||||||
<if test="deviceId != null and deviceId != ''">
|
<if test="deviceId != null and deviceId != ''">
|
||||||
AND t.device_id = #{deviceId}
|
AND t.device_id = #{deviceId}
|
||||||
</if>
|
</if>
|
||||||
|
<if test="status != null and status != ''">
|
||||||
|
AND t.status IN (
|
||||||
|
<foreach collection="status.split(',')" item="item" separator=",">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="alarmStartTime != null and alarmStartTime != null and alarmEndTime != null and alarmEndTime != ''">
|
<if test="alarmStartTime != null and alarmStartTime != null and alarmEndTime != null and alarmEndTime != ''">
|
||||||
AND (date_format(t.alarm_start_time,'%Y%m%d') BETWEEN date_format(#{alarmStartTime},'%Y%m%d') and date_format(#{alarmEndTime},'%Y%m%d')
|
AND (date_format(t.alarm_start_time,'%Y%m%d') BETWEEN date_format(#{alarmStartTime},'%Y%m%d') and date_format(#{alarmEndTime},'%Y%m%d')
|
||||||
or date_format(t.alarm_end_time,'%Y%m%d') BETWEEN date_format(#{alarmStartTime},'%Y%m%d') and date_format(#{alarmEndTime},'%Y%m%d') )
|
or date_format(t.alarm_end_time,'%Y%m%d') BETWEEN date_format(#{alarmStartTime},'%Y%m%d') and date_format(#{alarmEndTime},'%Y%m%d') )
|
||||||
|
|||||||
@ -198,4 +198,19 @@
|
|||||||
update_by = IF(VALUES(temperature) > temperature, VALUES(update_by), update_by),
|
update_by = IF(VALUES(temperature) > temperature, VALUES(update_by), update_by),
|
||||||
temperature = IF(VALUES(temperature) > temperature, VALUES(temperature), temperature)
|
temperature = IF(VALUES(temperature) > temperature, VALUES(temperature), temperature)
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<select id="getBatteryDayData" parameterType="com.xzzn.ems.domain.vo.DateSearchRequest" resultType="com.xzzn.ems.domain.vo.BatteryDataStatsListVo">
|
||||||
|
SELECT day_time as dataTimestamp,
|
||||||
|
voltage, temperature, soc, soh,
|
||||||
|
device_id as deviceId,
|
||||||
|
cluster_device_id as clusterDeviceId
|
||||||
|
FROM ems_battery_data_day
|
||||||
|
WHERE site_id = #{siteId}
|
||||||
|
and cluster_device_id = #{clusterDeviceId}
|
||||||
|
and device_id = #{deviceId}
|
||||||
|
and day_time >= #{startDate}
|
||||||
|
and day_time <= #{endDate}
|
||||||
|
order by day_time
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
Reference in New Issue
Block a user