package com.doumee.core.model;
|
|
import com.doumee.core.constants.Constants;
|
import com.doumee.core.utils.DateUtil;
|
import com.doumee.dao.system.model.SystemPermission;
|
import com.doumee.dao.system.model.SystemRole;
|
import com.doumee.dao.system.model.SystemUser;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import org.springframework.beans.BeanUtils;
|
|
import java.io.Serializable;
|
import java.math.BigDecimal;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 登录用户信息
|
* @author Eva.Caesar Liu
|
* @date 2022/03/15 09:54
|
*/
|
@Data
|
public class LoginUserInfo implements Serializable {
|
|
@ApiModelProperty(value = "编号")
|
private String id ;// 编号
|
|
@ApiModelProperty(value = "上次登陆时间")
|
private String last_login ;//
|
@ApiModelProperty(value = "用户名")
|
private String username ;//
|
@ApiModelProperty(value = "姓名")
|
private String real_name ;//
|
@ApiModelProperty(value = "昵称")
|
private String nickname ;//
|
@ApiModelProperty(value = "头像url")
|
private String avatar ;//
|
@ApiModelProperty(value = "性别")
|
private String sex ;//
|
@ApiModelProperty(value = "手机号")
|
private String phone ;//
|
@ApiModelProperty(value = "用户类型")
|
private String user_type ;//
|
@ApiModelProperty(value = "状态 0启用 1禁用")
|
private Integer status ;//
|
|
private List<String> roles;
|
|
private List<String> permissions;
|
|
public static LoginUserInfo from(SystemUser user, List<SystemRole> roles, List<SystemPermission> permissions) {
|
if (user == null) {
|
return null;
|
}
|
// 拷贝用户信息
|
LoginUserInfo loginUserInfo = new LoginUserInfo();
|
BeanUtils.copyProperties(user, loginUserInfo);
|
loginUserInfo.setLast_login(DateUtil.getPlusTime2(user.getLastLogin()));
|
loginUserInfo.setReal_name(user.getRealname());
|
loginUserInfo.setStatus(user.getStatus());
|
loginUserInfo.setPhone(user.getMobile());
|
if(roles!=null){
|
// 设置角色信息
|
List<String> rs = new ArrayList<>();
|
for (SystemRole role : roles) {
|
rs.add(role.getCode());
|
}
|
loginUserInfo.setRoles(rs);
|
}
|
if(permissions!=null){
|
// 设置权限信息
|
List<String> pms = new ArrayList<>();
|
for (SystemPermission permission : permissions) {
|
pms.add(permission.getCode());
|
}
|
loginUserInfo.setPermissions(pms);
|
}
|
return loginUserInfo;
|
}
|
}
|