package com.dxhy.domestic.dao;

import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dxhy.domestic.entity.TdxExportCustoms;
import com.dxhy.domestic.model.dto.TdxExportCustomsModelDTO;

/**
 * TDxExportCustomsDao继承基类
 *
 * @author dxhy
 */
@Mapper
public interface DomesticExportCustomsDao extends BaseMapper<TdxExportCustoms> {

    /**
     * 待填
     * 
     * @param page
     *            page
     * @param dto
     *            dto
     * @return Map
     */
    Page<Map<String, Object>> querySgByPage(@Param("page") Page<Object> page,
        @Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param dto
     *            dto
     * @return Map
     */
    Map<String, Object> querySgBySum(@Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param page
     *            page
     * @param dto
     *            dto
     * @return Page
     */
    Page<Map<String, Object>> queryBdkByPage(@Param("page") Page<Object> page,
        @Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param dto
     *            dto
     * @return Map
     */
    Map<String, Object> queryBdkBySum(@Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param page
     *            page
     * @param dto
     *            dto
     * @return Page
     */
    Page<Map<String, Object>> queryRzcxByPage(@Param("page") Page<Object> page,
        @Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param dto
     *            dto
     * @return Map
     */
    Map<String, Object> queryRzcxBySum(@Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param page
     *            page
     * @param dto
     *            dto
     * @return Page
     */
    Page<Map<String, Object>> queryExportCustomsList(@Param("page") Page<Object> page,
        @Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 待填
     * 
     * @param dto
     *            dto
     * @return Map
     */
    Map<String, Object> queryExportCustomsSum(@Param("queryParams") TdxExportCustomsModelDTO dto);

    /**
     * 合计税号已抵扣的税额
     *
     * @param pramsMap
     *            pramsMap
     * @return TdxExportCustoms
     */
    TdxExportCustoms selectDkse(Map<String, Object> pramsMap);
}
