package com.yn.bftl.thirdparty.modules.unionpay.dto.guaranteed;

import com.yn.bftl.thirdparty.modules.unionpay.dto.easylinkpay.TradeWayFeildsDTO;
import io.swagger.annotations.ApiModel;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 担保支付DTO
 *
 * @author huabiao
 * @create 2022/9/13  14:26
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "PayDTO", description = "担保支付DTO")
@Builder
public class PayDTO {

    /**
     * 商户订单号
     */
    private String mctOrderNo;

    /**
     * 操作方式
     */
    @Builder.Default
    private Integer oprType = 1;

    /**
     * 支付方式
     */
    @Builder.Default
    private String payType = "00";

    /**
     * 买家电子账户ID
     */
    private String buyerWalletId;

    /**
     * 平台电子账户ID
     */
    private String platformWalletId;

    /**
     * 卖家电子账户ID
     */
    private String merWalletId;

    /**
     * 订单金额
     * 单位（分）
     */
    private Integer orderAmt;

    /**
     * 商品摘要
     */
    private String subject;

    /**
     * 订单支付
     * 取值范围：1m～15d。m-分钟，h-小时，d-天，1c-当天
     */
    @Builder.Default
    private String payTimeoutExpress = "1c";

    /**
     * 订单结算有效天数
     * 该笔订单允许的最晚结算日期，逾期将默认结算给平台
     */
    @Builder.Default
    private String settTimeoutExpress = "180";

    /**
     * 验证方式
     */
    private String tradeWayCode;

    /**
     * 验证字段
     */
    private TradeWayFeildsDTO tradeWayFeilds;
}
