package com.red.circle.other.inner.model.cmd.user;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.red.circle.framework.dto.Command;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.io.Serial;
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 上传专属礼物信息
 *
 * @author zongpubin on 2024/1/5
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
public class CumulativeRechargeCmd extends Command {

  @Serial
  private static final long serialVersionUID = 1L;
  @NotNull(message = "id {not.null}")
  @JsonSerialize(using = ToStringSerializer.class)
  private Long id;

  /**
   * 图片1.
   */
  private List<String> coverUrl;

  /**
   * 音频资源url.
   */
  private String songSourceUrl;

  /**
   * 礼物Code.
   */
  private String giftCode;

  /**
   * 类型(专属制定、增加时长).
   */
  @NotBlank
  private String customType;

}
