package com.zhitan.realtimedata.mapper; import com.zhitan.common.enums.Quality; import com.zhitan.common.enums.StatisticType; import com.zhitan.common.enums.TimeType; import com.zhitan.realtimedata.domain.DataItem; import com.zhitan.realtimedata.domain.ElectricityDataDetail; import com.zhitan.realtimedata.domain.StatisticResult; import org.apache.ibatis.annotations.Param; import java.util.Date; import java.util.List; import java.util.Map; /** * 阶段数据查询,数据访问接口. */ public interface PeriodDataMapper { void save(@Param("dataItem") DataItem dataItem); void insert(@Param("dataItem") DataItem dataItem); void insertTOUData(@Param("dataItem") ElectricityDataDetail dataItem); void insertTOUDataItems(@Param("dataItems") List dataItems); void update(@Param("dataItem") DataItem dataItem); DataItem getDataByIndex(@Param("indexId") String indexId, @Param("timeCode") String timeCode); List getDatasByIndex(@Param("indexIds") List indexIds, @Param("timeCode") String timeCode); List getPeriodDatasByIndex(@Param("indexIds") List indexIds, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime, @Param("timeType") TimeType timeType); Double dataStatisticsByIndex(@Param("indexId") String indexId, @Param("statisticType") StatisticType statisticType, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime); List dataStatisticsByIndexs(@Param("indexIds") List indexIds, @Param("statisticType") StatisticType statisticType, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime); List statistic(@Param("indexIds") List indexIds, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime); List statisticByCode(@Param("indexCodes") List indexCodes, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime); List getStatisticDatasById(@Param("indexIds") List indexIds, @Param("timeType") TimeType timeType); List getStatisticDatasByCode(@Param("indexCodes") List indexCodes, @Param("timeType") TimeType timeType); List dataStatisticsByCodes(@Param("indexCodes") List indexCodes, @Param("statisticType") StatisticType statisticType, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime); String hasExist(@Param("indexId") String indexId, @Param("timeCode") String timeCode); void saveDataList(@Param("dataItemVlues") List datas); List getPeriodDatasByIndexAndQuality(@Param("indexIds") List indexIds, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime, @Param("timeType") TimeType timeType, @Param("quality") Quality quality); List dataStatisticsFilterByCodes(@Param("indexCodes") List indexCodes, @Param("statisticType") StatisticType statisticType, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime, @Param("isFilter") boolean isFilter); void delete(@Param("indexId") String indexId, @Param("timeType") TimeType timeType, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime); DataItem getDataByIndexCode(String indexCode, String timeCode); List queryDataItemIsExist(@Param("queryMap") Map> queryMap); void insertDataList(List insertData); }