package com.reyun.saas.mob.user.dto.user;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**

 * @ClassName: UserOutpDTO
 * @Description:
 * @date 2019-07-24 11:21
 */
@Data
@ApiModel(value="UserOutpDTO",description="用户输出展示类")
public class UserOutpDTO {

    @ApiModelProperty(value="主键ID, 新增不传值, 修改传值")
    private Long id;

    @ApiModelProperty(value="主用户唯一oid且不可变")
    private String oid;

    @ApiModelProperty(value="用户名")
    private String username;

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

    @ApiModelProperty(value="真实姓名")
    private String actualName;

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

    @ApiModelProperty(value="电话")
    private String phone;

    @ApiModelProperty(value="公司")
    private String company;

    @ApiModelProperty(value="QQ")
    private String qq;

    @ApiModelProperty(value="微信")
    private String wechat;

    @ApiModelProperty(value="头像")
    private String headPortrait;

    @ApiModelProperty(value="用户角色")
    private Integer roleCategory;

    @ApiModelProperty(value ="角色名称")
    private String roleName;

    @ApiModelProperty(value="主用户的id")
    private Long rootParent;

    @ApiModelProperty(value="上级用户")
    private Long leaderParent;

    @ApiModelProperty(value="启用状态(0-禁用，1-启用)")
    private Integer status;

    @ApiModelProperty(value="创建时间")
    private Date createTime;

    @ApiModelProperty(value="修改时间")
    private Date modifyTime;

    @ApiModelProperty(value="到期时间")
    private String pastDate;

    @ApiModelProperty(value="角色ID 集合(eg: 1,2,5,6)")
    private String roleIds;

    @ApiModelProperty(value="权限ID 集合(eg: 1,2,5,6)")
    private String menuIds;

    @ApiModelProperty(value="是否可以创建app")
    private Boolean isCreateApp;

    @ApiModelProperty(value="是否拥有权限")
    private Boolean authConfig;

    /**
     * 随机密码过期时间  默认为-1  邮箱发送密码后改为对应的到期时间 用户在个人中心修改密码后改为-1
     */
    @JsonIgnore
    @ApiModelProperty(value="随机密码过期时间 ")
    private String randomPwdPastTime;

    @ApiModelProperty(value="用户备注信息")
    private String remark;


}
