package com.tofly.watermeter.custom.service.meterBusiness;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tofly.watermeter.custom.entity.meterBusiness.dto.StatisticalFormDto;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * 统计报表模块接口
 */
public interface StatisticalFormService {

    /**
     * 出库统计 第一层
     */
    List<Map> outboundCount(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 出库统计 第二层
     */
    List<Map> outboundByCal(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 出库统计 第三层
     */
    Page<Map> outboundInfo(HttpServletResponse response, Page page, StatisticalFormDto dto);

    /**
     * 换表统计-第一层
     */
    List<Map> changeTableCount(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 换表统计-第二层
     */
    List<Map> changeTableByCal(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 换表统计-第三层
     */
    Page<Map> changeTableInfo(HttpServletResponse response, Page page, StatisticalFormDto dto);

    /**
     * 报废统计-第一层
     */
    List<Map> scrapCount(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 报废统计-第二层
     */
    List<Map> scrapByCal(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 报废统计-第三层
     */
    Page<Map> scrapInfo(HttpServletResponse response, Page page, StatisticalFormDto dto);

    /**
     * 争议统计-第一层
     */
    List<Map> disputeCount(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 争议统计-第二层
     */
    List<Map> disputeByCal(HttpServletResponse response, StatisticalFormDto dto);

    /**
     * 争议统计-第三层
     */
    Page<Map> disputeInfo(HttpServletResponse response, Page page, StatisticalFormDto dto);

}
