package com.lantone.security.vo;

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

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

/**
 * <p>
 * 用户实体类
 * </p>
 */
@Data
public class UpdateUserVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "编号", required = true)
    @NotNull(message = "用户编号不能为空")
    private Long id;
    @ApiModelProperty(value = "医生id")
    private Long doctorId;

    @ApiModelProperty(value = "用户名" ,required = true)
    @NotBlank(message = "用户名不能为空")
    private String username;

    @ApiModelProperty(value = "密码")
    private String password;

    @ApiModelProperty(value = "姓名",required = true)
    @NotBlank(message = "姓名不能为空")
    private String name;

    @ApiModelProperty(value = "性别")
    private Integer sex;

    @ApiModelProperty(value = "手机号")
    private String mobilePhone;

    @ApiModelProperty(value = "身份证号")
    private String idcard;

    @ApiModelProperty(value = "职称")
    private String titleId;

    @ApiModelProperty(value = "工号")
    private String jobNo;

    @ApiModelProperty(value = "排序")
    private Integer orderNo;

    @ApiModelProperty(value = "状态 0:禁用，1：启用",required = true)
    @NotBlank(message = "状态不能为空")
    private String status;

    @ApiModelProperty(value = "所属组织",required = true)
    @Valid
    @NotNull(message = "所属组织不能为空")
    private AddHospitalTreeVO addHospitalTreeVO;

    @ApiModelProperty(value = "所属组织",required = true)
    @NotEmpty(message = "用户的角色列表不能为空")
    private List<Long> roles;
}