package com.red.circle.other.infra.database.rds.entity.badge;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.red.circle.framework.mybatis.entity.TimestampBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 徽章配置.
 * </p>
 *
 * @author pengliang
 * @since 2021-03-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sys_badge_config")
public class BadgeConfig extends TimestampBaseEntity {

  private static final long serialVersionUID = 1L;

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

  /**
   * 徽章类型.
   */
  @TableField("type")
  private String type;

  /**
   * 徽章等级.
   */
  @TableField("badge_level")
  private Integer badgeLevel;

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

  /**
   * 徽章名称.
   */
  @TableField("badge_name")
  private String badgeName;

  /**
   * 徽章key.
   */
  @TableField("badge_key")
  private String badgeKey;

  /**
   * 0.未删除 1.已删除.
   */
  @TableField("is_del")
  private Boolean del;
}
