package com.jeequan.jeepay.core.model.export;

import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 退款订单表
 * </p>
 *
 * @author [mybatis plus generator]
 * @since 2021-04-27
 */
@Data
public class MchRefundOrderExportExcel {

    /**
     * 退款订单号（支付系统生成订单号）
     */
    @Excel(name = "退款订单号")
    private String refundOrderId;

    /**
     * 支付订单号（与t_pay_order对应）
     */
    @Excel(name = "平台单号")
    private String payOrderId;

    /**
     * 渠道支付单号（与t_pay_order channel_order_no对应）
     */
    @Excel(name = "通道单号")
    private String channelPayOrderNo;

    /**
     * 渠道单号
     */
    @Excel(name = "渠道单号")
    private String platformOrderNo;

    /**
     * 商户单号
     */
    @Excel(name = "商户单号")
    private String mchOrderNo;

    /**
     * 落单号
     */
    @Excel(name = "落单号")
    private String platformMchOrderNo;

    /**
     * 商户简称
     */
    @Excel(name = "商户简称")
    private String mchName;

    /**
     * 商户号
     */
    @Excel(name = "商户号")
    private String mchExtNo;

    /**
     * 门店ID
     */
    @Excel(name = "门店编号")
    private String storeId;

    /**
     * 门店名称
     */
    @Excel(name = "门店名称")
    private String storeName;

    /**
     * 应用ID
     */
    @Excel(name = "应用编号")
    private String appId;

    /**
     * 应用名称
     */
    @Excel(name = "应用名称")
    private String appName;

    /**
     * 商户退款单号（商户系统的订单号）
     */
    @Excel(name = "商户退款单号")
    private String mchRefundNo;

    /**
     * 支付通道
     */
    @Excel(name = "支付通道")
    private String ifName;

    /**
     * 所属渠道
     */
    @Excel(name = "所属渠道")
    private String isvName;

    /**
     * 支付金额
     */
    @Excel(name = "支付金额")
    private BigDecimal payAmount;

    /**
     * 退款金额
     */
    @Excel(name = "退款金额")
    private BigDecimal refundAmount;

    /**
     * 退款金额
     */
    @Excel(name = "手续费退还金额")
    private BigDecimal refundFeeAmount;

    /**
     * 退款状态:0-订单生成,1-退款中,2-退款成功,3-退款失败,4-退款任务关闭
     */
    @Excel(name = "退款状态", replace = {"订单生成_0", "退款中_1", "退款成功_2", "退款失败_3", "退款任务关闭_4"})
    private String state;

    /**
     * 退款类型
     */
    @Excel(name = "退款类型", replace = {"未退款_0","全额退款_1", "部分退款_2"})
    private String refundType;

    /**
     * 退款类型
     */
    @Excel(name = "退款模式", replace = {"收款商户号_1","平台一般户_2"})
    private String extParam;

    /**
     * 退款原因
     */
    @Excel(name = "退款原因")
    private String refundReason;

    /**
     * 订单退款成功时间
     */
    @Excel(name = "订单退款成功时间", exportFormat = "yyyy-MM-dd HH:mm:ss")
    private Date successTime;

    /**
     * 创建时间
     */
    @Excel(name = "创建时间", exportFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

}
