package com.yc.ship.module.marketing.api.coupon.dto;

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

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

@Schema(description = "RPC 服务 - 优惠券检查 Request DTO")
@Data
public class CouponCheckReqDto {

    @Schema(description = "优惠券码ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private Long couponCodeId;

    @Schema(description = "会员ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private Long memberId;

    @Schema(description = "订单ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private Long orderId;

    @Schema(description = "订单金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private BigDecimal amount;

    @Schema(description = "支付金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private BigDecimal payAmount;

    @Schema(description = "产品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private Long productId;

    @Schema(description = "产品分组ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private Long categoryId;

    @Schema(description = "规格IDS,多个以英文逗号分隔", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private String skuIds;

    @Schema(description = "出行日期", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private LocalDateTime travelDate;
}
