package ink.wgink.pojo.bos;

import ink.wgink.pojo.dtos.department.DepartmentSimpleDTO;
import ink.wgink.pojo.dtos.group.GroupSimpleDTO;
import ink.wgink.pojo.dtos.position.PositionSimpleDTO;
import ink.wgink.pojo.dtos.role.RoleSimpleDTO;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * @ClassName: UserInfoBO
 * @Description: 用户
 * @Author: WangGeng
 * @Date: 2019/3/24 11:03 PM
 * @Version: 1.0
 **/
public class UserInfoBO implements Serializable {

    private static final long serialVersionUID = -3823133337801491681L;
    private String userId;
    private String userUsername;
    private String userName;
    private String userPhone;
    private String userAvatar;
    private String userEmail;
    private String dataRight;
    private List<String> dataUserIds;
    private List<String> rootDepartmentIds;
    private List<DepartmentSimpleDTO> departments;
    private List<RoleSimpleDTO> roles;
    private List<GroupSimpleDTO> groups;
    private List<PositionSimpleDTO> positions;
    private Object expandData;

    public String getUserId() {
        return userId == null ? "" : userId.trim();
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getUserUsername() {
        return userUsername == null ? "" : userUsername.trim();
    }

    public void setUserUsername(String userUsername) {
        this.userUsername = userUsername;
    }

    public String getUserName() {
        return userName == null ? "" : userName.trim();
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getUserPhone() {
        return userPhone == null ? "" : userPhone.trim();
    }

    public void setUserPhone(String userPhone) {
        this.userPhone = userPhone;
    }

    public String getUserAvatar() {
        return userAvatar == null ? "" : userAvatar;
    }

    public void setUserAvatar(String userAvatar) {
        this.userAvatar = userAvatar;
    }

    public String getUserEmail() {
        return userEmail == null ? "" : userEmail;
    }

    public void setUserEmail(String userEmail) {
        this.userEmail = userEmail;
    }

    public String getDataRight() {
        return dataRight == null ? "" : dataRight.trim();
    }

    public void setDataRight(String dataRight) {
        this.dataRight = dataRight;
    }

    public List<String> getDataUserIds() {
        return dataUserIds == null ? new ArrayList<>(0) : dataUserIds;
    }

    public void setDataUserIds(List<String> dataUserIds) {
        this.dataUserIds = dataUserIds;
    }

    public List<String> getRootDepartmentIds() {
        return rootDepartmentIds == null ? new ArrayList<>(0) : rootDepartmentIds;
    }

    public void setRootDepartmentIds(List<String> rootDepartmentIds) {
        this.rootDepartmentIds = rootDepartmentIds;
    }

    public List<DepartmentSimpleDTO> getDepartments() {
        return departments == null ? new ArrayList<>(0) : departments;
    }

    public void setDepartments(List<DepartmentSimpleDTO> departments) {
        this.departments = departments;
    }

    public List<RoleSimpleDTO> getRoles() {
        return roles == null ? new ArrayList<>() : roles;
    }

    public void setRoles(List<RoleSimpleDTO> roles) {
        this.roles = roles;
    }

    public List<GroupSimpleDTO> getGroups() {
        return groups == null ? new ArrayList<>() : groups;
    }

    public void setGroups(List<GroupSimpleDTO> groups) {
        this.groups = groups;
    }

    public List<PositionSimpleDTO> getPositions() {
        return positions == null ? new ArrayList<>() : positions;
    }

    public void setPositions(List<PositionSimpleDTO> positions) {
        this.positions = positions;
    }

    public Object getExpandData() {
        return expandData;
    }

    public void setExpandData(Object expandData) {
        this.expandData = expandData;
    }
}
