package cn.novalon.gym.manage.payment.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 支付响应DTO
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "支付响应")
public class PaymentResponse {

    @Schema(description = "订单ID")
    private String orderId;

    @Schema(description = "支付状态: PENDING-待支付, SUCCESS-成功, FAIL-失败, CLOSED-关闭")
    private String status;

    @Schema(description = "支付链接(App支付返回 scheme)")
    private String payUrl;

    @Schema(description = "二维码链接 (扫码支付)")
    private String qrCode;

    @Schema(description = "完整支付信息")
    private String payInfo;

    @Schema(description = "H5支付链接")
    private String h5PayUrl;

    @Schema(description = "错误码")
    private String errorCode;

    @Schema(description = "错误消息")
    private String errorMsg;

    @Schema(description = "交易金额(分)")
    private String transAmt;

    @Schema(description = "商品描述")
    private String goodsDesc;

    @Schema(description = "交易类型")
    private String tradeType;

    @Schema(description = "支付成功时间")
    private String payTime;
}
