package com.red.circle.other.app.dto.cmd.activity;

import com.red.circle.common.business.dto.cmd.AppExtCommand;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 执行连抽Cmd.
 *
 * @author system
 * @since 2025-10-20
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class LotteryMultiDrawCmd extends AppExtCommand {

  /**
   * 活动ID.
   *
   * @eo.required
   */
  @NotNull(message = "activityId required.")
  private Long activityId;

  /**
   * 连抽次数.
   *
   * @eo.required
   */
  @NotNull(message = "drawCount required.")
  @Min(value = 1, message = "drawCount must >= 1")
  @Max(value = 10, message = "drawCount must <= 10")
  private Integer drawCount;

  /**
   * 是否需要金币
   */
  private Boolean needCoins;

}
