package cn.newfeifan.mall.module.pay.service.fuyouorder;

import cn.newfeifan.mall.module.pay.dal.dataobject.order.PayOrderDO;
import cn.newfeifan.mall.module.pay.fuiou.reqvo.SubmitOrderRequestVO;

import javax.validation.Valid;

/**
 * 富有支付订单 Service 接口
 *
 * @author aquan
 */
public interface FuYouPayOrderService {

    /**
     * 提交支付
     * 此时，会发起支付渠道的调用
     *
     * @param reqVO  提交请求
     */
    String submitOrder(@Valid SubmitOrderRequestVO reqVO);

    /**
     * 申请退款
     * @param afterSaleId 售后编号
     */
    void afterSale(Long afterSaleId);

    /**
     * 获得支付订单
     *
     * @param payOrderDO 支付订单
     * @return 支付订单
     */
    PayOrderDO getPayOrderByStatus(PayOrderDO payOrderDO);
}
