package com.zcloud.modules.sys.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import java.util.List;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @Author fangjiakai
 * @Desc 系统用户(SysUser)实体
 * @Date 2024-03-15 14:09:58
 */
@Data
@TableName("sys_user")
public class SysUserEntity implements Serializable {
    private static final long serialVersionUID = 429174692128588195L;
    @TableId(type = IdType.ASSIGN_UUID)
    private String userId;
    //用户名
    @ApiModelProperty(value = "用户名")
    private String username;
    //所属企业
    @ApiModelProperty(value = "所属企业")
    private String customerinfoId;
    //密码
    @ApiModelProperty(value = "密码")
    private String password;
    //姓名
    @ApiModelProperty(value = "姓名")
    private String name;
    //部门ID
    @ApiModelProperty(value = "部门ID")
    private String departmentId;
    //主键
    @ApiModelProperty(value = "主键")
    private String postId;
    //邮箱
    @ApiModelProperty(value = "邮箱")
    private String email;
    //手机号
    @ApiModelProperty(value = "手机号")
    private String mobile;
    //性别
    @ApiModelProperty(value = "性别")
    private Integer sex;
    //学历
    @ApiModelProperty(value = "学历")
    private String degree;
    //类型
    @ApiModelProperty(value = "类型")
    private String type;
    //状态  0：禁用   1：正常
    @ApiModelProperty(value = "状态  0：禁用   1：正常")
    private Integer status;
    //创建者ID
    @ApiModelProperty(value = "创建者ID")
    private String creator;
    //创建时间
    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private String createTime;
    //是否删除(0：有效 1：删除)
    @ApiModelProperty(value = "是否删除(0：有效 1：删除)")
    @TableField(fill = FieldFill.INSERT)
    private Integer isDelete;
    @ApiModelProperty(value = "是否完善个人信息")
    private Integer isImprove;

    /**
     * 角色ID列表
     */
    @TableField(exist=false)
    @ApiModelProperty(value = "角色ID列表")
    private List<String> roleIdList;

    @TableField(exist=false)
    @ApiModelProperty(value = "用户ID列表")
    private String[] userIds;

    @TableField(exist=false)
    @ApiModelProperty(value = "用户角色ID")
    private String rolesId;

    @TableField(exist=false)
    @ApiModelProperty(value = "用户角色NAME")
    private String rolesName;

    @TableField(exist=false)
    @ApiModelProperty(value = "用户角色NAME")
    private String roleId;

    @TableField(exist=false)
    @ApiModelProperty(value = "学历")
    private String degreeName;

    @TableField(exist=false)
    @ApiModelProperty(value = "部门")
    private String departmentName;

    @TableField(exist=false)
    @ApiModelProperty(value = "岗位")
    private String postName;

    @TableField(exist=false)
    @ApiModelProperty(value = "岗位")
    private String roleName;

    @ApiModelProperty("教师id")
    private String teacherId;

    @ApiModelProperty("是否管理员 0-否 1-是")
    private Integer isAdministrator;

    @TableField(exist = false)
    @ApiModelProperty(value = "是否代理")
    private Integer isAgent;

}

