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

import io.swagger.annotations.ApiModel;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 担保支付下单DTO
 *
 * @author huabiao
 * @create 2022/9/13  8:50
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "ApplyOrderDTO", description = "担保支付下单DTO")
@Builder
public class ApplyOrderDTO {

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

    /**
     * 操作方式
     * 1.普通支付
     * 2.补充支付
     */
    @Builder.Default
    private String oprType = "1";

    /**
     * 买家电子账户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";

    /**
     * 订单结算有效天数
     * 若为空，则默认为 30 天。最大 180 天。
     */
    @Builder.Default
    private Integer settTimeoutExpress = 180;

    /**
     * 消息推送url
     */
    private String notifyUrl;
}
