package com.red.circle.other.inner.model.dto.material;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;

/**
 * 用户使用的徽章.
 *
 * @author pengliang on 2022/2/19
 */
@Data
public class UseBadgeDTO implements Serializable {

  @Serial
  private static final long serialVersionUID = 1L;

  /**
   * 主键标识.
   */
  @JsonSerialize(using = ToStringSerializer.class)
  private Long id;

  /**
   * 用户id.
   */
  @JsonSerialize(using = ToStringSerializer.class)
  private Long userId;

  /**
   * 徽章等级.
   */
  private Integer badgeLevel;

  /**
   * 徽章可领取里程碑.
   */
  @JsonSerialize(using = ToStringSerializer.class)
  private Long milestone;

  /**
   * 徽章名称.
   */
  private String badgeName;

  /**
   * 徽章类型.
   */
  private String type;

  /**
   * 徽章key.
   */
  private String badgeKey;

  /**
   * 选中url.
   */
  private String selectUrl;

  /**
   * 没有选中的url.
   */
  private String notSelectUrl;

  /**
   * 动画链接.
   */
  private String animationUrl;

  /**
   * 过期时间.
   */
  @JsonSerialize(using = ToStringSerializer.class)
  private Long expireTime;

}
