package com.hzs.member.account.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.member.account.CuMemberRechargeApplication;
import com.hzs.member.account.vo.CuMemberRechargeApplicationVO;

/**
 * <p>
 * 会员充值申请 服务类
 * </p>
 *
 * @author hzs
 * @since 2024-02-18
 */
public interface ICuMemberRechargeApplicationService extends IService<CuMemberRechargeApplication> {

    /**
     * 保存充值申请
     *
     * @param rechargeApplicationVO 入叁
     */
    Boolean saveApplication(CuMemberRechargeApplicationVO rechargeApplicationVO);

    /**
     * 充值申请列表
     *
     * @param rechargeApplicationVO
     * @return Object[]
     */
    Object[] findRechargeApplicationList(CuMemberRechargeApplicationVO rechargeApplicationVO);

    /**
     * 更新驳回说明
     *
     * @param rechargeApplicationVO 入参
     * @return Boolean
     */
    Boolean updateRejectionStatement(CuMemberRechargeApplicationVO rechargeApplicationVO);

    /**
     * 通过充值申请
     *
     * @param pkId                ID
     * @param pkMember            会员ID
     * @param rechargeApplication 申请信息
     * @return Boolean
     */
    Boolean applicationAgree(Long pkId, Long pkMember, CuMemberRechargeApplication rechargeApplication);

    /**
     * 根据ID查询申请信息
     *
     * @param pkId ID
     * @return CuMemberRechargeApplication
     */
    CuMemberRechargeApplication selectApplicationById(Long pkId);

}
