package com.cool.store.dto.wallet;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Pattern;
import java.util.List;

/**
 * @Author suzhuhong
 * @Date 2025/11/13 18:23
 * @Version 1.0
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class PaymentDTO {

    @ApiModelProperty(name = "外部门店唯一标识", required = true)
    private String outStoreId;

    @ApiModelProperty(name = "请求预支付Id", required = true)
    private String paymentId;

    @ApiModelProperty(name = "收款码唯一流水号", required = true)
    private String transOrderTrace;

    @ApiModelProperty(name = "金额", required = true)
    private String totalFee;

    @ApiModelProperty(name = "状态:1-成功 2-失败 3-支付中 4-撤销", required = true)
    private Integer orderStatus;

    @ApiModelProperty(name = "利楚订单号(商户订单号)")
    private String outTradeNo;

    @ApiModelProperty(name = "通道订单号(银行订单号)")
    private String channelOrderNo;

    @ApiModelProperty(name = "付款人账号")
    private String payerAccNo;

    @ApiModelProperty(name = "付款人户名")
    private String payerAccName;

    @ApiModelProperty(name = "付款人银行名称")
    private String payerBankName;

    @ApiModelProperty(name = "付款银行行号")
    private String payerBankNo;

    @ApiModelProperty(name = "收款账号", required = true)
    private String payeeAccNo;

    @ApiModelProperty(name = "收款账户名称", required = true)
    private String payeeAccName;

    @ApiModelProperty(name = "收款银行名称", required = true)
    private String payeeBankName;

    @ApiModelProperty(name = "收款银行行号", required = true)
    private String payeeBankNo;

    @ApiModelProperty(name = "账号过期时间")
    private String expireTime;

    @ApiModelProperty(name = "创建时间")
    private String createTime;

    @ApiModelProperty(name = "付款明细")
    private List<PaymentDetailDTO> payList;




}
