package com.yc.ship.module.trade.controller.app.ota.vo;

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

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;

/**
 * &#064;Description ：ota内部退款VO
 * &#064;Author ：qsl
 * &#064;Date ：2025/6/17 20:56
 */
@Schema(description = "ota内部退款 Request VO")
@Data
public class OtaInnerRefundVO {

    @Schema(description = "分销商订单ID", example = "")
    @NotBlank(message = "分销商订单ID不能为空")
    private String otaOrderId;

    @Schema(description = "分销商退款ID", example = "")
    @NotBlank(message = "分销商退款ID不能为空")
    private String otaRefundId;

    @Schema(description = "供应商订单ID", example = "")
    @NotBlank(message = "供应商订单ID不能为空")
    private String supplierOrderId;

    @Schema(description = "退款产品", example = "")
    @NotBlank(message = "退款产品不能为空")
    private String productId;

    @Schema(description = "退款方式0正常退票 1强制退票 2改签退款", example = "")
    private Integer refundMethod;

    @Schema(description = "退款券码", example = "")
    @NotEmpty(message = "退款券码明细不能为空")
    private List<OtaInnerRefundVoucherVO> refundVoucherList;

}
