package com.qs.mp.pay.service;

import com.alibaba.fastjson.JSONObject;
import com.qs.mp.common.enums.BizTypeEnum;
import com.qs.mp.pay.domain.PayOrder;

/**
 * @auther duota
 * @create 2021 2021/9/4 1:58 下午
 * @describe
 */
public interface IWalletService {

  /**
   * 渠道订单支付
   * @param bizType
   * @param bizId
   * @param openId
   * @param money
   * @param orderRemark
   * @return
   */
  JSONObject pay(BizTypeEnum bizType, String bizId, String openId, int money,
      String orderRemark);


  /**
   * 订单退款
   * @param bizId
   * @param refundAmount
   * @param remark
   * @return
   */
  boolean refund(String bizId, Integer refundAmount, String remark);


  /**
   *
   *订单支付回调统一处理函数
   *
   * @param payOrder@return
   */
  void payOrderStatusHandle(PayOrder payOrder);

  /**
   * 账户提现
   * @param merchId
   * @param money
   * @return
   */
  boolean drawings(String merchId,int money);

  /**
   * 账户提现申请
   * @param merchId
   * @param money 单位分
   * @return
   */
  boolean drawingsApply(String merchId,int money);

  /**
   * 提现申请完成，充值冻结资金
   * @param merchId
   * @return
   */
  boolean completeDrawingsApply(String merchId);

}
