package com.qs.mp.channel.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.qs.mp.channel.domain.Channel;
import com.qs.mp.channel.domain.ChannelWithdraw;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qs.mp.channel.domain.vo.ChannelWithdrawVO;
import com.qs.mp.common.enums.ChannelWithdrawStatusEnum;
import java.util.List;
import org.apache.ibatis.annotations.Param;

/**
 * <p>
 * 渠道提现表 服务类
 * </p>
 *
 * @author quanshu
 * @since 2022-03-04
 */
public interface IChannelWithdrawService extends IService<ChannelWithdraw> {

  /**
   * 提现申请
   * @param channel
   * @param channelWithdraw
   * @return
   */
  boolean apply(Channel channel, ChannelWithdraw channelWithdraw);

  /**
   * 查询提现申请记录
   * @param queryWrapper
   * @return
   */
  List<ChannelWithdrawVO> listWithdrawVO(Wrapper<ChannelWithdraw> queryWrapper);

  /**
   * 提现申请审核
   * @param withdraw
   * @param status
   * @param verifyContent
   * @return
   */
  boolean verify(ChannelWithdraw withdraw, ChannelWithdrawStatusEnum status, String verifyContent);
}
