package com.dxhy.domestic.service.customsrefund;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dxhy.api.model.config.UserInfo;
import com.dxhy.api.model.custom.TdxCustomsRecord;
import com.dxhy.common.service.MpBaseService;
import com.dxhy.vo.custom.BaseCustomsVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.http.ResponseEntity;

/**
 * 海关缴款书退税service
 * 
 * @author dxhy
 */
public interface DomesticCustomsRefundService extends MpBaseService<TdxCustomsRecord> {

    /**
     * 海关缴款书退税手工认证列表查询
     * 
     * @param page
     * @param reqVO
     * @return
     * @throws Exception
     */
    String queryManualConfirmList(Page page, BaseCustomsVO reqVO) throws Exception;

    /**
     * 海关缴款书退税手工认证
     * 
     * @param reqVO
     * @param userInfo
     * @return
     * @throws Exception
     */
    String manualConfirm(BaseCustomsVO reqVO, UserInfo userInfo) throws Exception;

    /**
     * 海关缴款书退税导入认证
     * 
     * @param baseCustomsVO
     * @return
     * @throws Exception
     */
    String importConfirmList(BaseCustomsVO baseCustomsVO) throws Exception;

    /**
     * 海关缴款书退税认证查询
     * 
     * @param page
     * @param reqVO
     * @return
     * @throws Exception
     */
    String queryConfirmList(Page page, BaseCustomsVO reqVO) throws Exception;

    /**
     * 退税统计
     * 
     * @param page
     * @param entity
     * @return
     * @throws Exception
     */
    String queryRefundCountList(@Param("page") Page page, @Param("queryParams") BaseCustomsVO entity) throws Exception;

    /**
     * 退税统计明细
     * 
     * @param page
     * @param entity
     * @return
     * @throws Exception
     */
    String queryRefundCountDetailPage(@Param("page") Page page, @Param("queryParams") BaseCustomsVO entity)
        throws Exception;

    /**
     * @Description 退税确认弹框界面
     * @param page
     * @param baseCustomsVO
     * @Return java.lang.Object
     * @Author wangruwei
     * @Date 2024/3/15 11:17
     **/
    String queryRefundAlertPage(Page<Object> page, BaseCustomsVO baseCustomsVO);

    /**
     * @Description 退税确认弹框点击申请
     * @param baseCustomsVO
     * @Return java.lang.Object
     * @Author wangruwei
     * @Date 2024/3/15 15:44
     **/
    ResponseEntity refundAlertApply(BaseCustomsVO baseCustomsVO);
}
