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

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

import java.util.List;

/**
 * 银联微信支付下单DTO
 * @author huabiao
 * @create 2022/8/29  20:08
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "UnionpayWechatPreOrderDTO", description = "银联微信支付下单DTO")
@Builder
public class UnionpayPreOrderDTO {

    // 报文请求时间，格式yyyy-MM-ddHH:mm:ss
    private String requestTimestamp;
    // 商户订单号
    private String merOrderId;
    // 商户号
    private String mid;
    // 终端号
    private String tid;
    // 微信子商户号appId
    private String subAppId;
    // 业务类型
    @Builder.Default
    private String instMid = "APPDEFAULT";
    // 订单过期时间 为空则使用系统默认过期时间(30分钟)
    private String expireTime;
    // 账单描述
    private String orderDesc;
    // 订单原始金额
    private Long originalAmount;
    // 支付总金额
    private Long totalAmount;
    // 分账标记
    private Boolean divisionFlag;
    // 平台商户分账金额
    private Long platformAmount;
    // 子订单信息
    private List<UnionpaySubOrderItemDTO> subOrders;
    // 支付结果通知地址
    private String notifyUrl;
    // 交易类型
    private String tradeType;
    // 异步分账标记
    @Builder.Default
    private Boolean asynDivisionFlag = false;
    // 用于指定APP跳转支付宝小程序后的回跳路径，传值规范为 iOS:schemeurl;Android:schemeurl。若不上送则默认返回入网配置的默认路径。
    private String targetAppScheme;
}
