package com.sptg.estate.biz.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.sptg.common.core.beans.PageBean;
import com.sptg.common.core.beans.ResultBean;
import com.sptg.estate.api.dto.ApplyPayRefundDto;
import com.sptg.estate.api.entity.ApplyPayRefund;

import java.io.FileNotFoundException;
import java.util.List;
import java.util.Map;

/**
 * title: ApplyPayRefundInterface
 * package: com.sptg.estate.biz.security
 * description: 支付退款申请-业务层接口
 *
 *
 *
 */
public interface ApplyPayRefundInterface extends IService<ApplyPayRefund> {

    /**
     * 功能描述: 获取支付退款列表
     * @param applyPayRefundDto
     * @return Page<ApplyPayRefund>
     *
     *
     */
    ResultBean<Page<ApplyPayRefund>> showApplyPayRefundList(ApplyPayRefundDto applyPayRefundDto);

    /**
     * 功能描述: 新增支付退款申请记录
     * @param applyPayRefundDto
     * @return ApplyPayRefund
     *
     *
     */
    ResultBean<Boolean> addApplyPayRefund(ApplyPayRefundDto applyPayRefundDto);


    /**
     * 功能描述: 根据id查询
     * @param id
     * @return ApplyPayRefund
     *
     *
     */
    ApplyPayRefund getApplyPayRefundById(Long id);

    /**
     * 功能描述: 根据id查询
     * @param applyPayRefundDto
     * @return ApplyPayRefund
     *
     *
     */
    ApplyPayRefund getApplyPayRefundByCondition(ApplyPayRefundDto applyPayRefundDto);

    /**
     * 功能描述: 审核
     * @param applyPayRefund
     * @return ApplyPayRefund
     *
     *
     */
    ResultBean<Boolean> auditApplyPayRefund(ApplyPayRefund applyPayRefund);

    /**
     * 跟新退款回调数据
     * @param applyPayRefund
     * @return
     */
    Boolean updateApplyPayRefundByRefundNo(ApplyPayRefund applyPayRefund);

}
