package com.mosty.common.core.business.entity.vo;

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

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 *  添加用户信息请求对象
 * @author kevin
 * @date 2022/2/16 10:11 PM
 * @since 1.0.0
 */
@Data
@Accessors(chain = true)
public class AddSysUserVO implements Serializable {

    /**
     * 序列化标识
     */
    private static final long serialVersionUID = 5407773316739763410L;

    /**
     * 部门ids
     */
//    @NotEmpty(message = "部门ids不能为空！")
//    @ApiModelProperty(value = "部门ids")
//    private List<Long> deptIds;

    @ApiModelProperty(value = "所属部门代码")
    private String ssbmdm;

    /**
     * 管理部门ID
     */
    @ApiModelProperty(value = "管理部门ID")
    private Long managerOrgId;

    /**
     * 管理部门名称
     */
    @ApiModelProperty(value = "管理部门名称")
    private String managerOrgName;

    /**
     * 岗位ID
     */
//    @NotNull(message = "岗位id不能为空！")
    @ApiModelProperty(value = "岗位ID")
    private Long positionId;

    /**
     * 岗位名称
     */
    @ApiModelProperty(value = "岗位名称")
    private String positionName;

    /**
     * 登录账号
     */
    @ApiModelProperty(value = "登录账号")
//    @NotEmpty(message ="登录账号不能为空")
    private String loginName;

    /**
     * 密码
     */
    @ApiModelProperty(value = "密码")
//    @NotEmpty(message = "密码不能为空")
    private String password;

    /**
     * 用户昵称
     */
    @ApiModelProperty(value = "用户昵称")
    private String userName;

    /**
     * 用户类型（00系统用户 01注册用户）
     */
    @ApiModelProperty(value = "用户类型（00系统用户默认  01注册用户）")
    private String userType;

    /**
     * 用户邮箱
     */
    @ApiModelProperty(value = "用户邮箱")
    private String email;

    /**
     * 移动电话
     */
    @ApiModelProperty(value = "移动电话")
    private String mobile;

    /**
     * 电话号码
     */
    @ApiModelProperty(value = "电话号码")
    private String telePhone;

    /**
     * 身份证号
     */
    @ApiModelProperty(value = "id_entity_card")
    private String idEntityCard;

    /**
     * 行业号码（如：警号）
     */
    @ApiModelProperty(value = "行业号码（如：警号）")
    private String inDustRialId;

    /**
     * 用户性别（0男 1女 2未知）
     */
    @ApiModelProperty(value = "用户性别（0男 1女 2未知）")
    private String sex;

    /**
     * 民族
     */
    @ApiModelProperty(value = "民族")
    private String nation;

    /**
     * 政治面貌
     */
    @ApiModelProperty(value = "政治面貌")
    private String politic;

    /**
     * 婚姻状态
     */
    @ApiModelProperty(value = "婚姻状态")
    private String marital;

    /**
     * 人员类别
     */
    @ApiModelProperty(value = "人员类别")
    private String type;

    /**
     * 文化程度
     */
    @ApiModelProperty(value = "文化程度")
    private String whcd;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String bz;

    /**
     * 出生日期
     */
    @ApiModelProperty(value = "出生日期")
    private String birthday;

    /**
     * 用户有效开始时间，默认为当前日期（用户可改）
     */
    @ApiModelProperty(value = " 用户有效开始时间，默认为当前日期（用户可改）")
    private Date beginTime;

    /**
     * 用户有效结束时间，默认空
     */
    @ApiModelProperty(value = " 用户有效结束时间，默认空")
    private Date endTime;

    /**
     * 是否虚拟用户：1、是 2、不是
     */
    @ApiModelProperty(value = "是否虚拟用户：1、是 2、不是")
    private String isVirtualUser;


    /**
     * 采集时间
     */
    @ApiModelProperty(value = "采集时间")
    private Date xtCjsj;

    /**
     * 录入时间
     */
    @ApiModelProperty(value = "录入时间")
    private Date xtLrsj;

    /**
     * 录入人姓名
     */
    @ApiModelProperty(value = "录入人姓名")
    private String xtLrrxm;

    /**
     * 录入人id
     */
    @ApiModelProperty(value = "录入人id")
    private Long xtLrrid;

    /**
     * 录入人部门
     */
    @ApiModelProperty(value = "录入人部门")
    private String xtLrrbm;

    /**
     * 录入人部门id
     */
    @ApiModelProperty(value = "录入人部门id")
    private String xtLrrbmid;

    /**
     * 录入人部门id
     */
    @ApiModelProperty(value = "录入人部门id")
    private String xtLrip;

    /**
     * 最后修改时间
     */
    @ApiModelProperty(value = "最后修改时间")
    private Date xtZhxgsj;

    /**
     * 最后修改人姓名
     */
    @ApiModelProperty(value = "最后修改人姓名")
    private String xtZhxgrxm;

    /**
     * 最后修改人id
     */
    @ApiModelProperty(value = "最后修改人id")
    private Long xtZhxgid;

    /**
     * 最后修改人部门
     */
    @ApiModelProperty(value = "最后修改人部门")
    private String xtZhxgrbm;

    /**
     * 最后修改人部门id
     */
    @ApiModelProperty(value = "最后修改人部门id")
    private Long xtZhxgrbmid;

    /**
     * 最后修改人ip
     */
    @ApiModelProperty(value = "最后修改人ip")
    private String xtZhxgrip;

    /**
     * token登陆
     */
    @ApiModelProperty(value = "token登陆")
    private String token;


    @ApiModelProperty(value = "是否融合 0否 1是")
    private String sfrh;

    @ApiModelProperty(value = "模块")
    private String mk;


}
