单个单体电池数据曲线图
This commit is contained in:
@ -4,7 +4,9 @@ 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.common.core.page.TableDataInfo;
|
||||||
import com.xzzn.ems.domain.vo.BatteryDataStatsListVo;
|
import com.xzzn.ems.domain.vo.BatteryDataStatsListVo;
|
||||||
|
import com.xzzn.ems.domain.vo.DateSearchRequest;
|
||||||
import com.xzzn.ems.service.IEmsSiteService;
|
import com.xzzn.ems.service.IEmsSiteService;
|
||||||
|
import com.xzzn.ems.service.IEmsStatsReportService;
|
||||||
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.*;
|
||||||
@ -24,6 +26,8 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
private ISingleSiteService iSingleSiteService;
|
private ISingleSiteService iSingleSiteService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IEmsSiteService iEmsSiteService;
|
private IEmsSiteService iEmsSiteService;
|
||||||
|
@Autowired
|
||||||
|
private IEmsStatsReportService iemsStatsReportService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取单站首页数据
|
* 获取单站首页数据
|
||||||
@ -144,6 +148,15 @@ public class EmsSiteMonitorController extends BaseController{
|
|||||||
return getDataTable2(list);
|
return getDataTable2(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单个单体电池曲线图
|
||||||
|
*/
|
||||||
|
@GetMapping("/getSingleBatteryData")
|
||||||
|
public AjaxResult getSingleBatteryData(DateSearchRequest requestVo)
|
||||||
|
{
|
||||||
|
return success(iemsStatsReportService.getSingleBatteryData(requestVo));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 电表数据
|
* 电表数据
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -25,6 +25,8 @@ public class DateSearchRequest {
|
|||||||
|
|
||||||
private String dataType;
|
private String dataType;
|
||||||
|
|
||||||
|
private String clusterDeviceId;
|
||||||
|
|
||||||
public Date getStartDate() {
|
public Date getStartDate() {
|
||||||
return startDate;
|
return startDate;
|
||||||
}
|
}
|
||||||
@ -64,4 +66,12 @@ public class DateSearchRequest {
|
|||||||
public void setDataType(String dataType) {
|
public void setDataType(String dataType) {
|
||||||
this.dataType = dataType;
|
this.dataType = dataType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getClusterDeviceId() {
|
||||||
|
return clusterDeviceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setClusterDeviceId(String clusterDeviceId) {
|
||||||
|
this.clusterDeviceId = clusterDeviceId;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,6 +6,7 @@ import java.util.Map;
|
|||||||
import com.xzzn.ems.domain.EmsBatteryData;
|
import com.xzzn.ems.domain.EmsBatteryData;
|
||||||
import com.xzzn.ems.domain.vo.BatteryClusterDataDetailVo;
|
import com.xzzn.ems.domain.vo.BatteryClusterDataDetailVo;
|
||||||
import com.xzzn.ems.domain.vo.BatteryDataStatsListVo;
|
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;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -95,4 +96,11 @@ public interface EmsBatteryDataMapper
|
|||||||
|
|
||||||
|
|
||||||
int insertEmsBatteryDataList(List<EmsBatteryData> emsBatteryDataList);
|
int insertEmsBatteryDataList(List<EmsBatteryData> emsBatteryDataList);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单个单体电池数据
|
||||||
|
* @param requestVo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<BatteryDataStatsListVo> getSingleBatteryData(DateSearchRequest requestVo);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -27,4 +27,6 @@ public interface IEmsStatsReportService
|
|||||||
public List<AmmeterStatisListVo> getAmmeterDataResult(StatisAmmeterDateRequest requestVo);
|
public List<AmmeterStatisListVo> getAmmeterDataResult(StatisAmmeterDateRequest requestVo);
|
||||||
|
|
||||||
public List<PowerStatisListVo> getPowerDataList(DateSearchRequest requestVo);
|
public List<PowerStatisListVo> getPowerDataList(DateSearchRequest requestVo);
|
||||||
|
|
||||||
|
public List<BatteryDataStatsListVo> getSingleBatteryData(DateSearchRequest requestVo);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,6 +35,8 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
|
|||||||
private EmsAmmeterDataMapper emsAmmeterDataMapper;
|
private EmsAmmeterDataMapper emsAmmeterDataMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private EmsDevicesSettingMapper emsDevicesSettingMapper;
|
private EmsDevicesSettingMapper emsDevicesSettingMapper;
|
||||||
|
@Autowired
|
||||||
|
private EmsBatteryDataMapper emsBatteryDataMapper;
|
||||||
|
|
||||||
// 电量指标
|
// 电量指标
|
||||||
@Override
|
@Override
|
||||||
@ -280,4 +282,22 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
|
|||||||
requestVo.setEndDate(endDate);
|
requestVo.setEndDate(endDate);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单个单体电池数据-默认7天
|
||||||
|
* @param requestVo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<BatteryDataStatsListVo> getSingleBatteryData(DateSearchRequest requestVo) {
|
||||||
|
List<BatteryDataStatsListVo> dataList = new ArrayList<>();
|
||||||
|
// 默认时间-7天
|
||||||
|
dealRequestTime(requestVo);
|
||||||
|
|
||||||
|
// 按天比较endDate+1
|
||||||
|
Date endDate = requestVo.getEndDate();
|
||||||
|
requestVo.setEndDate(DateUtils.addDays(endDate, 1));
|
||||||
|
dataList = emsBatteryDataMapper.getSingleBatteryData(requestVo);
|
||||||
|
return dataList;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -197,7 +197,6 @@
|
|||||||
</if>
|
</if>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<insert id="insertEmsBatteryDataList" parameterType="java.util.List">
|
<insert id="insertEmsBatteryDataList" parameterType="java.util.List">
|
||||||
INSERT INTO ems_battery_data (
|
INSERT INTO ems_battery_data (
|
||||||
battery_pack, battery_cluster, battery_cell_id,
|
battery_pack, battery_cluster, battery_cell_id,
|
||||||
@ -214,4 +213,25 @@
|
|||||||
)
|
)
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<select id="getSingleBatteryData" parameterType="com.xzzn.ems.domain.vo.DateSearchRequest" resultType="com.xzzn.ems.domain.vo.BatteryDataStatsListVo">
|
||||||
|
SELECT latest.dateDay as dataTimestamp,
|
||||||
|
t.voltage,
|
||||||
|
t.temperature,
|
||||||
|
t.soc,
|
||||||
|
t.soh,
|
||||||
|
t.device_id as deviceId,
|
||||||
|
t.cluster_device_id as clusterDeviceId
|
||||||
|
FROM ems_battery_data t
|
||||||
|
INNER JOIN ( SELECT site_id,cluster_device_id,device_id,DATE(data_timestamp) as dateDay,MAX(data_timestamp) AS max_update_time
|
||||||
|
FROM ems_battery_data
|
||||||
|
WHERE site_id = #{siteId}
|
||||||
|
and cluster_device_id = #{clusterDeviceId}
|
||||||
|
and device_id = #{deviceId}
|
||||||
|
and data_timestamp >= #{startDate}
|
||||||
|
and data_timestamp < #{endDate}
|
||||||
|
GROUP BY site_id,cluster_device_id,device_id,dateDay
|
||||||
|
) latest ON t.site_id = latest.site_id and t.cluster_device_id = latest.cluster_device_id
|
||||||
|
and t.device_id = latest.device_id AND t.data_timestamp = latest.max_update_time
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
Reference in New Issue
Block a user