package com.zcxk.rmcp.web.service;

import com.zcxk.core.common.pojo.UserCondition;
import com.zcxk.core.mysql.pageing.Pagination;
import com.zcxk.rmcp.api.dto.readrate.ReadRateCountDto;
import com.zcxk.rmcp.api.dto.readrate.ReadRateDto;
import com.zcxk.rmcp.api.enums.ReadRateEnum;
import com.zcxk.rmcp.api.vo.ReadRatePageVo;
import com.zcxk.rmcp.api.vo.ReadRateVo;
import com.zcxk.rmcp.api.vo.StatisticsReadRateVo;

import java.util.List;

/**
 * @author Andy
 * @version V1.0
 * @description: 统计抄表率
 * @date 2021/7/26
 **/
public interface ReadRateService {

    /**
    * 统计抄表率按分类分组
    * @author Andy
    * @date 15:01 2021/8/3
    * @param :
    * @return java.util.List<com.zcxk.rmcp.api.vo.StatisticsReadRateVo>
    **/
    List<StatisticsReadRateVo> statReadRateGroupCategory();

    /**
    * 分页查询
    * @author Andy
    * @date 15:01 2021/8/3
    * @param dto:
    * @return com.zcxk.rmcp.api.vo.ReadRatePageVo<com.zcxk.rmcp.api.vo.ReadRateVo>
    **/
    Pagination<ReadRateVo> pageReadRate(ReadRateDto dto);

    /**
    * 集合查询
    * @author Andy
    * @date 15:02 2021/8/3
    * @param dto:
    * @return java.util.List<com.zcxk.rmcp.api.vo.ReadRateVo>
    **/
    List<ReadRateVo> listReadRate(ReadRateDto dto);


    /**
    * 统计抄表率
    * @author Andy
    * @date 14:05 2021/8/11
    * @param dto:
    * @return com.zcxk.rmcp.api.vo.StatisticsReadRateVo
    **/
    StatisticsReadRateVo countReadRate(ReadRateCountDto dto);

    /**
    * 获取统计天数类型
    * @author Andy
    * @date 15:02 2021/8/3
    * @param :
    * @return com.zcxk.rmcp.api.enums.ReadRateEnum
    **/
    ReadRateEnum getStatDays();
}
