package cn.cecep.talroad.mapper.analysis;

import cn.cecep.talroad.data.analyse.task.entity.SimpleSRaFactoryTransferRateAnalysis;
import cn.cecep.talroad.domain.analysis.SRaFactoryTransferRateAnalysis;
import cn.cecep.talroad.vo.analysis.FactoryTransferRateParamVo;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.Date;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface SRaFactoryTransferRateAnalysisMapper extends BaseMapper<SRaFactoryTransferRateAnalysis> {
    /**
     * 查询企业传输率分析列表
     *
     * @param sRaFactoryTransferRateAnalysis 企业传输率分析
     * @return 企业传输率分析集合
     */
    List<SRaFactoryTransferRateAnalysis> selectSRaFactoryTransferRateAnalysisList(SRaFactoryTransferRateAnalysis sRaFactoryTransferRateAnalysis);

    List<FactoryTransferRateParamVo> selectFactoryTransferRateParamVoList(@Param("deviceId")String deviceId);

    List<SimpleSRaFactoryTransferRateAnalysis> selectAvgRateByDateTimeGroupFactoryId(@Param("dataTime") String dataTime,@Param("countType") String countType);

    List<SRaFactoryTransferRateAnalysis> selectDayRateOutletLt50List(@Param("factoryIds") List<String> factoryIds, @Param("outletCodes")List<String> outletCodes, @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    List<SRaFactoryTransferRateAnalysis> selectListByArea(@Param("lastDay") String lastDay,@Param("countType")String countType);

    List<SRaFactoryTransferRateAnalysis> selectStatisticsLastMonthData(@Param("lastMonth") String lastMonth,@Param("countType")String countType);

    List<SRaFactoryTransferRateAnalysis> selectStatisticsSeasonData(List<String> monthList);
}
