package com.zanxiang.game.module.mybatis.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

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

/**
 * @author : lingfeng
 * @time : 2022-06-30
 * @description : 玩家游戏角色表
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString
@Builder
@TableName("t_game_user_role")
public class GameUserRole implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 玩家用户id
     */
    private Long userId;

    /**
     * 游戏用户id, 对应game_user主键id
     */
    private Long gameUserId;

    /**
     * 游戏ID
     */
    private Long gameId;

    /**
     * 游戏服务器id,默认为0
     */
    private String serverId;

    /**
     * 所在服务器名称
     */
    private String serverName;

    /**
     * 角色id
     */
    private String roleId;

    /**
     * 角色名称
     */
    private String roleName;

    /**
     * 角色等级
     */
    private Long roleLevel;

    /**
     * 角色VIP
     */
    private Long roleVipLevel;

    /**
     * 玩家角色战力
     */
    private Long rolePower;

    /**
     * 充值次数
     */
    private Integer rechargeCount;

    /**
     * 充值金额
     */
    private BigDecimal rechargeMoney;

    /**
     * 最近充值时间
     */
    private LocalDateTime lastRechargeTime;

    /**
     * 操作系统
     */
    private String os;

    /**
     * 角色最后登录时间
     */
    private LocalDateTime lastLoginTime;

    /**
     * 用户注册时间
     */
    private LocalDateTime regTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 角色拓展属性
     */
    private String extra;
}