package com.yc.ship.module.trade.api.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 订单支付信息 DTO
 *
 * @author 管理员
 */
@Schema(description = "RPC 服务 - 支付单信息 Response DTO")
@Data
@Accessors(chain = true)
public class TradeOrderPayDTO {

    @Schema(description = "支付单ID", example = "")
    private Long id;

    @Schema(description = "订单ID", example = "")
    private Long orderId;

    @Schema(description = " 订单类型 0 交易订单 1其他订单", example = "")
    private Integer orderType;

    @Schema(description = "支付状态", example = "")
    private Integer payStatus;

    @Schema(description = "支付流水号", example = "")
    private String paymentNo;

    @Schema(description = "支付方式", example = "")
    private Integer paymentType;

    @Schema(description = "销售渠道", example = "")
    private Integer sellMethod;

    @Schema(description = "支付时间", example = "")
    private LocalDateTime paymentDate;

    @Schema(description = "支付金额", example = "")
    private BigDecimal payAmount;

    @Schema(description = "已退款金额", example = "")
    private BigDecimal refundAmount;

    @Schema(description = "商户号", example = "")
    private String merchantNo;

    @Schema(description = "支付渠道", example = "")
    private String channelId;


    @Schema(description = "pos机号", example = "")
    private String posNo;

    @Schema(description = "pos机输出", example = "")
    private String posOut;

    @Schema(description = "微信或支付宝平台的用户openId", example = "")
    private String openId;

    @Schema(description = "支付平台返回的支付参数", example = "")
    private String payParams;

    @Schema(description = "请求参数", example = "")
    private String reqParams;
}