电量指标-时间筛选数据
This commit is contained in:
@ -1,6 +1,7 @@
|
|||||||
package com.xzzn.ems.domain.vo;
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时运行-电池平均SOC数据
|
* 实时运行-电池平均SOC数据
|
||||||
@ -8,26 +9,21 @@ import java.math.BigDecimal;
|
|||||||
*/
|
*/
|
||||||
public class BatteryAveSOCVo {
|
public class BatteryAveSOCVo {
|
||||||
/**
|
/**
|
||||||
* 月份 月+日
|
* 数据时间
|
||||||
*/
|
*/
|
||||||
private String monthDay;
|
private Date createDate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时SOC
|
* 实时SOC
|
||||||
*/
|
*/
|
||||||
private BigDecimal batterySOC;
|
private BigDecimal batterySOC;
|
||||||
|
|
||||||
/**
|
public Date getCreateDate() {
|
||||||
* 昨日SOC
|
return createDate;
|
||||||
*/
|
|
||||||
private BigDecimal ytdBatterySOC;
|
|
||||||
|
|
||||||
public String getMonthDay() {
|
|
||||||
return monthDay;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMonthDay(String monthDay) {
|
public void setCreateDate(Date createDate) {
|
||||||
this.monthDay = monthDay;
|
this.createDate = createDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getBatterySOC() {
|
public BigDecimal getBatterySOC() {
|
||||||
@ -37,12 +33,4 @@ public class BatteryAveSOCVo {
|
|||||||
public void setBatterySOC(BigDecimal batterySOC) {
|
public void setBatterySOC(BigDecimal batterySOC) {
|
||||||
this.batterySOC = batterySOC;
|
this.batterySOC = batterySOC;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getYtdBatterySOC() {
|
|
||||||
return ytdBatterySOC;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setYtdBatterySOC(BigDecimal ytdBatterySOC) {
|
|
||||||
this.ytdBatterySOC = ytdBatterySOC;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.xzzn.ems.domain.vo;
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时运行-电池平均温度数据
|
* 实时运行-电池平均温度数据
|
||||||
@ -8,27 +9,21 @@ import java.math.BigDecimal;
|
|||||||
*/
|
*/
|
||||||
public class BatteryAveTempVo {
|
public class BatteryAveTempVo {
|
||||||
/**
|
/**
|
||||||
* 月份 月+日
|
* 数据时间
|
||||||
*/
|
*/
|
||||||
private String monthDay;
|
private Date createDate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时温度
|
* 实时温度
|
||||||
*/
|
*/
|
||||||
private BigDecimal batteryTemp;
|
private BigDecimal batteryTemp;
|
||||||
|
|
||||||
/**
|
public Date getCreateDate() {
|
||||||
* 昨日温度
|
return createDate;
|
||||||
*/
|
|
||||||
private BigDecimal batteryYtdTemp;
|
|
||||||
|
|
||||||
|
|
||||||
public String getMonthDay() {
|
|
||||||
return monthDay;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMonthDay(String monthDay) {
|
public void setCreateDate(Date createDate) {
|
||||||
this.monthDay = monthDay;
|
this.createDate = createDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getBatteryTemp() {
|
public BigDecimal getBatteryTemp() {
|
||||||
@ -38,12 +33,4 @@ public class BatteryAveTempVo {
|
|||||||
public void setBatteryTemp(BigDecimal batteryTemp) {
|
public void setBatteryTemp(BigDecimal batteryTemp) {
|
||||||
this.batteryTemp = batteryTemp;
|
this.batteryTemp = batteryTemp;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getBatteryYtdTemp() {
|
|
||||||
return batteryYtdTemp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBatteryYtdTemp(BigDecimal batteryYtdTemp) {
|
|
||||||
this.batteryYtdTemp = batteryYtdTemp;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,11 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class ElectricDataInfoVo {
|
public class ElectricDataInfoVo {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 显示时间单位
|
||||||
|
*/
|
||||||
|
private String unit;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 总充电量
|
* 总充电量
|
||||||
*/
|
*/
|
||||||
@ -29,6 +34,14 @@ public class ElectricDataInfoVo {
|
|||||||
*/
|
*/
|
||||||
private List<SiteMonitorDataVo> sevenDayDisChargeStats;
|
private List<SiteMonitorDataVo> sevenDayDisChargeStats;
|
||||||
|
|
||||||
|
public String getUnit() {
|
||||||
|
return unit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUnit(String unit) {
|
||||||
|
this.unit = unit;
|
||||||
|
}
|
||||||
|
|
||||||
public BigDecimal getTotalChargedCap() {
|
public BigDecimal getTotalChargedCap() {
|
||||||
return totalChargedCap;
|
return totalChargedCap;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.xzzn.ems.domain.vo;
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时运行-储能功率数据
|
* 实时运行-储能功率数据
|
||||||
@ -8,9 +9,9 @@ import java.math.BigDecimal;
|
|||||||
*/
|
*/
|
||||||
public class EnergyStoragePowVo {
|
public class EnergyStoragePowVo {
|
||||||
/**
|
/**
|
||||||
* 月份 月+日
|
* 显示日期
|
||||||
*/
|
*/
|
||||||
private String monthDay;
|
private Date createDate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* pcs实时有功功率
|
* pcs实时有功功率
|
||||||
@ -22,22 +23,13 @@ public class EnergyStoragePowVo {
|
|||||||
*/
|
*/
|
||||||
private BigDecimal pcsTotalReactivePower;
|
private BigDecimal pcsTotalReactivePower;
|
||||||
|
|
||||||
/**
|
|
||||||
* pcs昨日有功功率
|
|
||||||
*/
|
|
||||||
private BigDecimal pcsYtdActPower;
|
|
||||||
|
|
||||||
/**
|
public Date getCreateDate() {
|
||||||
* pcs昨日无功功率
|
return createDate;
|
||||||
*/
|
|
||||||
private BigDecimal pcsYtdReactivePower;
|
|
||||||
|
|
||||||
public String getMonthDay() {
|
|
||||||
return monthDay;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMonthDay(String monthDay) {
|
public void setCreateDate(Date createDate) {
|
||||||
this.monthDay = monthDay;
|
this.createDate = createDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getPcsTotalActPower() {
|
public BigDecimal getPcsTotalActPower() {
|
||||||
@ -55,20 +47,4 @@ public class EnergyStoragePowVo {
|
|||||||
public void setPcsTotalReactivePower(BigDecimal pcsTotalReactivePower) {
|
public void setPcsTotalReactivePower(BigDecimal pcsTotalReactivePower) {
|
||||||
this.pcsTotalReactivePower = pcsTotalReactivePower;
|
this.pcsTotalReactivePower = pcsTotalReactivePower;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getPcsYtdActPower() {
|
|
||||||
return pcsYtdActPower;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPcsYtdActPower(BigDecimal pcsYtdActPower) {
|
|
||||||
this.pcsYtdActPower = pcsYtdActPower;
|
|
||||||
}
|
|
||||||
|
|
||||||
public BigDecimal getPcsYtdReactivePower() {
|
|
||||||
return pcsYtdReactivePower;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPcsYtdReactivePower(BigDecimal pcsYtdReactivePower) {
|
|
||||||
this.pcsYtdReactivePower = pcsYtdReactivePower;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.xzzn.ems.domain.vo;
|
package com.xzzn.ems.domain.vo;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时运行-pcs平均温度数据
|
* 实时运行-pcs平均温度数据
|
||||||
@ -8,26 +9,22 @@ import java.math.BigDecimal;
|
|||||||
*/
|
*/
|
||||||
public class PCSAveTempVo {
|
public class PCSAveTempVo {
|
||||||
/**
|
/**
|
||||||
* 月份 月+日
|
* 数据时间
|
||||||
*/
|
*/
|
||||||
private String monthDay;
|
private Date createDate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实时温度
|
* 实时温度
|
||||||
*/
|
*/
|
||||||
private BigDecimal pcsTemp;
|
private BigDecimal pcsTemp;
|
||||||
|
|
||||||
/**
|
|
||||||
* 昨日同时段温度(到分)
|
|
||||||
*/
|
|
||||||
private BigDecimal pcsYtdTemp;
|
|
||||||
|
|
||||||
public String getMonthDay() {
|
public Date getCreateDate() {
|
||||||
return monthDay;
|
return createDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMonthDay(String monthDay) {
|
public void setCreateDate(Date createDate) {
|
||||||
this.monthDay = monthDay;
|
this.createDate = createDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getPcsTemp() {
|
public BigDecimal getPcsTemp() {
|
||||||
@ -37,12 +34,4 @@ public class PCSAveTempVo {
|
|||||||
public void setPcsTemp(BigDecimal pcsTemp) {
|
public void setPcsTemp(BigDecimal pcsTemp) {
|
||||||
this.pcsTemp = pcsTemp;
|
this.pcsTemp = pcsTemp;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getPcsYtdTemp() {
|
|
||||||
return pcsYtdTemp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPcsYtdTemp(BigDecimal pcsYtdTemp) {
|
|
||||||
this.pcsYtdTemp = pcsYtdTemp;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -100,8 +100,48 @@ public interface EmsPcsDataMapper
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据时间按天获取充放电量
|
* 根据时间按天获取充放电量
|
||||||
* @param requestVo
|
* @param siteId
|
||||||
|
* @param startDate
|
||||||
|
* @param endDate
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<SiteMonitorDataVo> getPcsDataByDate(DateSearchRequest requestVo);
|
public List<SiteMonitorDataVo> getPcsDataByDay(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
|
/**
|
||||||
|
* 根据时间按月获取充放电量
|
||||||
|
* @param siteId
|
||||||
|
* @param startDate
|
||||||
|
* @param endDate
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<SiteMonitorDataVo> getPcsDataByMonth(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
|
/**
|
||||||
|
* 根据时间按小时获取充放电量
|
||||||
|
* @param siteId
|
||||||
|
* @param startDate
|
||||||
|
* @param endDate
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<SiteMonitorDataVo> getPcsDataByHour(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取实时运行-储能功率
|
||||||
|
* @param siteId
|
||||||
|
* @param startDate
|
||||||
|
* @param endDate
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<EnergyStoragePowVo> getStoragePowerList(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取实时运行-pcs平均温度
|
||||||
|
* @param siteId
|
||||||
|
* @param startDate
|
||||||
|
* @param endDate
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<PCSAveTempVo> getPcsAveTempList(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
|
|
||||||
|
public List<BatteryAveSOCVo> getAveSocList(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
|
|
||||||
|
public List<BatteryAveTempVo> getBatteryAveTempList(@Param("siteId")String siteId, @Param("startDate")Date startDate, @Param("endDate")Date endDate);
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@ import org.springframework.util.CollectionUtils;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.math.RoundingMode;
|
import java.math.RoundingMode;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -43,10 +44,28 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
|
|||||||
// 如果没有传时间,默认从今天往前7天
|
// 如果没有传时间,默认从今天往前7天
|
||||||
LocalDate sevenDaysAgo = LocalDate.now().minusDays(6);
|
LocalDate sevenDaysAgo = LocalDate.now().minusDays(6);
|
||||||
startDate = DateUtils.toDate(sevenDaysAgo);
|
startDate = DateUtils.toDate(sevenDaysAgo);
|
||||||
requestVo.setStartDate(startDate);
|
endDate = new Date();
|
||||||
|
}
|
||||||
|
|
||||||
|
List<SiteMonitorDataVo> dataList = new ArrayList();
|
||||||
|
// 开始日期和结束日期同一天,展示 0-24 小时数据
|
||||||
|
if (DateUtils.isSameDay(startDate, endDate)){
|
||||||
|
electricDataInfoVo.setUnit("时");
|
||||||
|
endDate = DateUtils.addDays(endDate, 1);
|
||||||
|
dataList = emsPcsDataMapper.getPcsDataByHour(requestVo.getSiteId(), startDate, endDate);
|
||||||
|
} else if (DateUtils.differentDaysByMillisecond(endDate, startDate) >= 1
|
||||||
|
&& DateUtils.differentDaysByMillisecond(endDate, startDate) < 30){
|
||||||
|
electricDataInfoVo.setUnit("日");
|
||||||
|
endDate = DateUtils.addDays(endDate, 1);
|
||||||
|
// 开始日期-结束日期大于 1 天,小于30 天,按天展示数据
|
||||||
|
dataList = emsPcsDataMapper.getPcsDataByDay(requestVo.getSiteId(), startDate, endDate);
|
||||||
|
} else if (DateUtils.differentDaysByMillisecond(endDate, startDate) >= 30){
|
||||||
|
electricDataInfoVo.setUnit("月");
|
||||||
|
endDate = DateUtils.addDays(endDate, 1);
|
||||||
|
// 开始日期-结束日期大于 1 个月,按月展示数据
|
||||||
|
dataList = emsPcsDataMapper.getPcsDataByMonth(requestVo.getSiteId(), startDate, endDate);
|
||||||
}
|
}
|
||||||
// 根据时间获取每天的充放电量
|
// 根据时间获取每天的充放电量
|
||||||
List<SiteMonitorDataVo> dataList = emsPcsDataMapper.getPcsDataByDate(requestVo);
|
|
||||||
if (!CollectionUtils.isEmpty(dataList)){
|
if (!CollectionUtils.isEmpty(dataList)){
|
||||||
// 总充、总放、效率
|
// 总充、总放、效率
|
||||||
BigDecimal totalDischarge = new BigDecimal(0);
|
BigDecimal totalDischarge = new BigDecimal(0);
|
||||||
|
@ -300,9 +300,9 @@ public class FXXDataProcessServiceImpl implements IFXXDataProcessService {
|
|||||||
pcsData.setControlMode(ControlModeStatus.REMOTE.getCode());
|
pcsData.setControlMode(ControlModeStatus.REMOTE.getCode());
|
||||||
|
|
||||||
// 功率与能量类字段
|
// 功率与能量类字段
|
||||||
pcsData.setTotalActivePower(StringUtils.getBigDecimal(obj.get("JLCCDYGGL")));
|
pcsData.setTotalActivePower(StringUtils.getBigDecimal(obj.get("YGGL")));
|
||||||
pcsData.setDailyAcChargeEnergy(StringUtils.getBigDecimal(obj.get("RCDL")));
|
pcsData.setDailyAcChargeEnergy(StringUtils.getBigDecimal(obj.get("RCDL")));
|
||||||
pcsData.setTotalReactivePower(StringUtils.getBigDecimal(obj.get("JLCRXWGGL")));
|
pcsData.setTotalReactivePower(StringUtils.getBigDecimal(obj.get("XTWGGL")));
|
||||||
pcsData.setDailyAcDischargeEnergy(StringUtils.getBigDecimal(obj.get("RFDL")));
|
pcsData.setDailyAcDischargeEnergy(StringUtils.getBigDecimal(obj.get("RFDL")));
|
||||||
pcsData.setTotalApparentPower(StringUtils.getBigDecimal(obj.get("XTSZGL")));
|
pcsData.setTotalApparentPower(StringUtils.getBigDecimal(obj.get("XTSZGL")));
|
||||||
pcsData.setTotalPowerFactor(StringUtils.getBigDecimal(obj.get("GLYS")));
|
pcsData.setTotalPowerFactor(StringUtils.getBigDecimal(obj.get("GLYS")));
|
||||||
|
@ -4,6 +4,7 @@ import com.xzzn.common.constant.RedisKeyConstants;
|
|||||||
import com.xzzn.common.core.redis.RedisCache;
|
import com.xzzn.common.core.redis.RedisCache;
|
||||||
import com.xzzn.common.enums.AmmeterCategory;
|
import com.xzzn.common.enums.AmmeterCategory;
|
||||||
import com.xzzn.common.enums.DeviceCategory;
|
import com.xzzn.common.enums.DeviceCategory;
|
||||||
|
import com.xzzn.common.utils.DateUtils;
|
||||||
import com.xzzn.common.utils.StringUtils;
|
import com.xzzn.common.utils.StringUtils;
|
||||||
import com.xzzn.ems.domain.*;
|
import com.xzzn.ems.domain.*;
|
||||||
import com.xzzn.ems.domain.vo.*;
|
import com.xzzn.ems.domain.vo.*;
|
||||||
@ -132,10 +133,21 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
|
|||||||
public SiteMonitorRuningInfoVo getRunningGraph(String siteId) {
|
public SiteMonitorRuningInfoVo getRunningGraph(String siteId) {
|
||||||
SiteMonitorRuningInfoVo siteMonitorRuningInfoVo = new SiteMonitorRuningInfoVo();
|
SiteMonitorRuningInfoVo siteMonitorRuningInfoVo = new SiteMonitorRuningInfoVo();
|
||||||
if (!StringUtils.isEmpty(siteId)) {
|
if (!StringUtils.isEmpty(siteId)) {
|
||||||
|
// 时间暂定今日+昨日
|
||||||
|
Date today = new Date();
|
||||||
|
Date yesterday = DateUtils.addDays(today, -1);
|
||||||
//储能功率list
|
//储能功率list
|
||||||
|
List<EnergyStoragePowVo> energyStoragePowList = emsPcsDataMapper.getStoragePowerList(siteId, yesterday, today);
|
||||||
|
siteMonitorRuningInfoVo.setEnergyStoragePowList(energyStoragePowList);
|
||||||
//pcs平均温度list
|
//pcs平均温度list
|
||||||
|
List<PCSAveTempVo> pcsAveTempVos = emsPcsDataMapper.getPcsAveTempList(siteId, yesterday, today);
|
||||||
|
siteMonitorRuningInfoVo.setPcsAveTempList(pcsAveTempVos);
|
||||||
//电池平均soclist
|
//电池平均soclist
|
||||||
|
List<BatteryAveSOCVo> batteryAveSOCList = emsPcsDataMapper.getAveSocList(siteId, yesterday, today);
|
||||||
|
siteMonitorRuningInfoVo.setBatteryAveSOCList(batteryAveSOCList);
|
||||||
//电池平均温度list
|
//电池平均温度list
|
||||||
|
List<BatteryAveTempVo> batteryAveTempList = emsPcsDataMapper.getBatteryAveTempList(siteId, yesterday, today);
|
||||||
|
siteMonitorRuningInfoVo.setBatteryAveTempList(batteryAveTempList);
|
||||||
}
|
}
|
||||||
return siteMonitorRuningInfoVo;
|
return siteMonitorRuningInfoVo;
|
||||||
}
|
}
|
||||||
|
@ -372,10 +372,10 @@
|
|||||||
order by tmp.device_id
|
order by tmp.device_id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getPcsDataByDate" resultType="com.xzzn.ems.domain.vo.SiteMonitorDataVo">
|
<select id="getPcsDataByDay" resultType="com.xzzn.ems.domain.vo.SiteMonitorDataVo">
|
||||||
select CONCAT(t.date_month,'/',t.date_day) as ammeterDate,
|
select CONCAT(t.date_month,'/',t.date_day) as ammeterDate,
|
||||||
sum(t.daily_ac_charge_energy) as chargedCap,
|
sum(t.total_ac_charge_energy) as chargedCap,
|
||||||
sum(t.daily_ac_discharge_energy) as disChargedCap
|
sum(t.total_ac_discharge_energy) as disChargedCap
|
||||||
from ( SELECT p.site_id, p.device_id,p.date_month,p.date_day, MAX(p.data_update_time) AS max_update_time
|
from ( SELECT p.site_id, p.device_id,p.date_month,p.date_day, MAX(p.data_update_time) AS max_update_time
|
||||||
FROM ems_pcs_data p
|
FROM ems_pcs_data p
|
||||||
where p.site_id = #{siteId}
|
where p.site_id = #{siteId}
|
||||||
@ -383,7 +383,7 @@
|
|||||||
and p.data_update_time >= #{startDate}
|
and p.data_update_time >= #{startDate}
|
||||||
</if>
|
</if>
|
||||||
<if test="endDate != null">
|
<if test="endDate != null">
|
||||||
and p.data_update_time < DATE_ADD(#{endDate}, INTERVAL 1 DAY)
|
and p.data_update_time < #{endDate}
|
||||||
</if>
|
</if>
|
||||||
GROUP BY p.site_id,p.device_id,p.date_month,p.date_day
|
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
|
) latest inner join ems_pcs_data t ON latest.site_id = t.site_id
|
||||||
@ -392,6 +392,106 @@
|
|||||||
and latest.date_month = t.date_month
|
and latest.date_month = t.date_month
|
||||||
and latest.date_day = t.date_day
|
and latest.date_day = t.date_day
|
||||||
group by ammeterDate
|
group by ammeterDate
|
||||||
order by ammeterDate desc;
|
order by ammeterDate desc
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getStoragePowerList" resultType="com.xzzn.ems.domain.vo.EnergyStoragePowVo">
|
||||||
|
select t.site_id,
|
||||||
|
t.total_active_power as pcsTotalActPower,
|
||||||
|
t.total_reactive_power as pcsTotalReactivePower,
|
||||||
|
t.create_time as createDate
|
||||||
|
from ems_pcs_data t
|
||||||
|
inner join (select site_id,create_time,MIN(device_id) as device_id
|
||||||
|
from ems_pcs_data
|
||||||
|
where site_id = #{siteId}
|
||||||
|
AND create_time >= Date(#{startDate})
|
||||||
|
AND create_time <= #{endDate}
|
||||||
|
GROUP BY site_id,create_time
|
||||||
|
) temp on t.site_id = temp.site_id and t.create_time = temp.create_time and t.device_id = temp.device_id
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getPcsAveTempList" resultType="com.xzzn.ems.domain.vo.PCSAveTempVo">
|
||||||
|
select t.site_id,
|
||||||
|
t.pcs_module_temperature as pcsTemp,
|
||||||
|
t.create_time as createDate
|
||||||
|
from ems_pcs_data t
|
||||||
|
inner join (select site_id,create_time,MIN(device_id) as device_id
|
||||||
|
from ems_pcs_data
|
||||||
|
where site_id = #{siteId}
|
||||||
|
AND create_time >= Date(#{startDate})
|
||||||
|
AND create_time <= #{endDate}
|
||||||
|
GROUP BY site_id,create_time
|
||||||
|
) temp on t.site_id = temp.site_id and t.create_time = temp.create_time and t.device_id = temp.device_id
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getAveSocList" resultType="com.xzzn.ems.domain.vo.BatteryAveSOCVo">
|
||||||
|
select t.site_id,
|
||||||
|
t.battery_pack_soc as batterySOC,
|
||||||
|
t.create_time as createDate
|
||||||
|
from ems_battery_cluster t
|
||||||
|
inner join (select site_id,create_time,MIN(device_id) as device_id
|
||||||
|
from ems_battery_cluster
|
||||||
|
where site_id = #{siteId}
|
||||||
|
AND create_time >= Date(#{startDate})
|
||||||
|
AND create_time <= #{endDate}
|
||||||
|
GROUP BY site_id,create_time
|
||||||
|
) temp on t.site_id = temp.site_id and t.create_time = temp.create_time and t.device_id = temp.device_id
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getBatteryAveTempList" resultType="com.xzzn.ems.domain.vo.BatteryAveTempVo">
|
||||||
|
select t.site_id,
|
||||||
|
t.avg_cell_temp as batteryTemp,
|
||||||
|
t.create_time as createDate
|
||||||
|
from ems_battery_cluster t
|
||||||
|
inner join (select site_id,create_time,MIN(device_id) as device_id
|
||||||
|
from ems_battery_cluster
|
||||||
|
where site_id = #{siteId}
|
||||||
|
AND create_time >= Date(#{startDate})
|
||||||
|
AND create_time <= #{endDate}
|
||||||
|
GROUP BY site_id,create_time
|
||||||
|
) temp on t.site_id = temp.site_id and t.create_time = temp.create_time and t.device_id = temp.device_id
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getPcsDataByMonth" resultType="com.xzzn.ems.domain.vo.SiteMonitorDataVo">
|
||||||
|
select t.date_month as ammeterDate,
|
||||||
|
sum(t.total_ac_charge_energy) as chargedCap,
|
||||||
|
sum(t.total_ac_discharge_energy) as disChargedCap
|
||||||
|
from ( SELECT p.site_id, p.device_id,p.date_month,MAX(p.data_update_time) AS max_update_time
|
||||||
|
FROM ems_pcs_data p
|
||||||
|
where p.site_id = #{siteId}
|
||||||
|
<if test="startDate != null">
|
||||||
|
and p.data_update_time >= #{startDate}
|
||||||
|
</if>
|
||||||
|
<if test="endDate != null">
|
||||||
|
and p.data_update_time < #{endDate}
|
||||||
|
</if>
|
||||||
|
GROUP BY p.site_id,p.device_id,p.date_month
|
||||||
|
) 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
|
||||||
|
and latest.date_month = t.date_month
|
||||||
|
group by ammeterDate
|
||||||
|
order by ammeterDate desc
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getPcsDataByHour" resultType="com.xzzn.ems.domain.vo.SiteMonitorDataVo">
|
||||||
|
select latest.dateHour as ammeterDate,
|
||||||
|
sum(t.total_ac_charge_energy) as chargedCap,
|
||||||
|
sum(t.total_ac_discharge_energy) as disChargedCap
|
||||||
|
from ( SELECT p.site_id, p.device_id,DATE_FORMAT(p.data_update_time, '%H') AS dateHour,MAX(p.data_update_time) as max_update_time
|
||||||
|
FROM ems_pcs_data p
|
||||||
|
where p.site_id = #{siteId}
|
||||||
|
<if test="startDate != null">
|
||||||
|
and p.data_update_time >= #{startDate}
|
||||||
|
</if>
|
||||||
|
<if test="endDate != null">
|
||||||
|
and p.data_update_time < #{endDate}
|
||||||
|
</if>
|
||||||
|
GROUP BY p.site_id,p.device_id,dateHour
|
||||||
|
) 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
|
||||||
|
group by ammeterDate
|
||||||
|
order by ammeterDate desc
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
Reference in New Issue
Block a user