package com.yonge.toolset.payment.base.model.callback;

import com.yonge.toolset.payment.base.enums.MethodNameEnum;
import com.yonge.toolset.payment.base.enums.TradeStatusEnum;

import java.io.Serializable;

/**
 * 付款回调对象
 */
public class PaymentCallBack implements Serializable {
    /***
     * 三方支付流水号(请求后才有)
     * @author liweifan
     * @updateTime 2022/3/31 11:00
     */
    private String id;
    /***
     * 支付订单号
     * @author liweifan
     * @updateTime 2022/3/31 11:00
     */
    private String paymentNo;
    /***
     * 交易状态
     * @author liweifan
     * @updateTime 2022/3/31 11:01
     */
    private TradeStatusEnum status;
    /**
     * 支付方法
     */
    private MethodNameEnum methodName;
    /**
     * 异常原因
     */
    private String errMsg;

    /**
     * 回执消息
     */
    private Object resMsg;
    /**
     * 支付方法回调对象
     */
    private ExecutePaymentCallBack executePaymentCallBack;
    /**
     * 关闭订单回调对象
     */
    private ClosePaymentCallBack closePaymentCallBack;
    /**
     * 退款回调对象
     */
    private RefundPaymentCallBack refundPaymentCallBack;


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getPaymentNo() {
        return paymentNo;
    }

    public void setPaymentNo(String paymentNo) {
        this.paymentNo = paymentNo;
    }

    public TradeStatusEnum getStatus() {
        return status;
    }

    public void setStatus(TradeStatusEnum status) {
        this.status = status;
    }

    public MethodNameEnum getMethodName() {
        return methodName;
    }

    public void setMethodName(MethodNameEnum methodName) {
        this.methodName = methodName;
    }

    public ExecutePaymentCallBack getExecutePaymentCallBack() {
        return executePaymentCallBack;
    }

    public void setExecutePaymentCallBack(ExecutePaymentCallBack executePaymentCallBack) {
        this.executePaymentCallBack = executePaymentCallBack;
    }

    public ClosePaymentCallBack getClosePaymentCallBack() {
        return closePaymentCallBack;
    }

    public void setClosePaymentCallBack(ClosePaymentCallBack closePaymentCallBack) {
        this.closePaymentCallBack = closePaymentCallBack;
    }

    public RefundPaymentCallBack getRefundPaymentCallBack() {
        return refundPaymentCallBack;
    }

    public void setRefundPaymentCallBack(RefundPaymentCallBack refundPaymentCallBack) {
        this.refundPaymentCallBack = refundPaymentCallBack;
    }

    public String getErrMsg() {
        return errMsg;
    }

    public void setErrMsg(String errMsg) {
        this.errMsg = errMsg;
    }

    public Object getResMsg() {
        return resMsg;
    }

    public void setResMsg(Object resMsg) {
        this.resMsg = resMsg;
    }
}
