package com.zanxiang.game.module.manage.pojo.dto;

import lombok.Data;

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

/**
 * @author : lingfeng
 * @time : 2022-06-09
 * @description : 用户信息
 */
@Data
public class UserDTO {

    /**
     * id
     */
    private Long id;

    /**
     * 注册渠道id
     */
    private Long regAgentId;

    /**
     * 最新渠道id
     */
    private Long agentId;

    /**
     * 注册游戏id
     */
    private Long gameId;

    /**
     * 用户名
     */
    private String username;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 密码
     */
    private String password;

    /**
     * 绑定手机号码
     */
    private String mobile;

    /**
     * 微信用户openId
     */
    private String openId;

    /**
     * 微信用户会话密钥
     */
    private String sessionKey;

    /**
     * 状态, 0 正常 1 封禁
     */
    private Integer status;

    /**
     * 头像
     */
    private String avatar;

    /**
     * 绑定支付宝账号
     */
    private String aliPay;

    /**
     * 绑定邮箱
     */
    private String email;

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

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

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

    /**
     * 创角数
     */
    private Integer roleCount;

    /**
     * 是否实名认证，0未实名认证，1成年人，2未成年人
     */
    private Integer authentication;

    /**
     * 客户端类型, 1:安卓app, 2: 苹果iosApp, 3: h5网页, 4 : 小程序(小游戏)
     */
    private Integer deviceType;

    /**
     * 客户端操作系统, android, ios, windows, mac
     */
    private String deviceSystem;

    /**
     * 用户注册ip
     */
    private String ip;

    /**
     * 用户设备mac地址
     */
    private String mac;

    /**
     * 设备唯一编号IMEI
     */
    private String imei;

    /**
     * 设备OAID
     */
    private String oaid;

    /**
     * 安卓id, (仅安卓设备才有值)
     */
    private String androidId;

    /**
     * IOS设备IDFA
     */
    private String idfa;

    /**
     * IOS设备CAID
     */
    private String caid;

    /**
     * 注册时间
     */
    private LocalDateTime createTime;

    /**
     * 更改时间
     */
    private LocalDateTime updateTime;
}
