package cn.estsh.i3plus.pojo.ptl.bean;

import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.Table;
import java.io.Serializable;

/**
 * @Description : 账号离线登陆表
 * @Reference :
 * @Author : wangjie
 * @CreateDate : 2019-09-01 11:02
 * @Modify:
 **/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "PTL_SYS_USER_OFFLINE")
@Api(value = "账号离线登陆表", description = "账号离线登陆表。")
public class PtlSysUserOffline extends BaseBean implements Serializable {

    private static final long serialVersionUID = -6191798106333324803L;

    @Column(name = "USER_ID")
    @ApiParam(value = "人员ID", example = "-1")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long userId;

    @Column(name = "USER_CODE")
    @ApiParam(value = "用户编号", access = "用户编号")
    private String userCode;

    @Column(name = "USER_NAME")
    @ApiParam(value = "用户名称", access = "账号名称")
    private String userName;

    @Column(name = "LOGIN_NAME")
    @ApiParam(value = "登陆名称", access = "登陆名称")
    private String loginName;

    @Column(name="USER_TYPE")
    @ApiParam(value ="账号类型（枚举，待定）" , example ="-1")
    private Integer userType;

    @Lob
    @Column(name="LOGIN_INFO")
    @ApiParam(value ="登陆信息" , access ="登陆信息")
    private String loginInfo;

    @Lob
    @Column(name="MENU_LIST")
    @ApiParam(value ="菜单" , access ="菜单")
    private String menuList;

    @Lob
    @Column(name="MODULE_LIST")
    @ApiParam(value ="模块" , access ="模块")
    private String moduleList;

}
