|  |  |  | 
|---|
|  |  |  | package com.doumee.core.model; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.doumee.dao.business.model.Company; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemPermission; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemRole; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemUser; | 
|---|
|  |  |  | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  | import org.springframework.beans.BeanUtils; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | private String sessionId; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Date loginDate; | 
|---|
|  |  |  | @ApiModelProperty(value = "账户来源:0=后台添加 ; 2=司机注册") | 
|---|
|  |  |  | private Integer source; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private List<String> roles; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private List<String> permissions; | 
|---|
|  |  |  | private List<Integer> companyIdList; | 
|---|
|  |  |  | private Company company; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //jwt登录设置 | 
|---|
|  |  |  | public static LoginUserInfo from(SystemUser user, List<SystemRole> roles, List<SystemPermission> permissions,String sessionId) { | 
|---|
|  |  |  | public static LoginUserInfo from(SystemUser user, List<SystemRole> roles, List<SystemPermission> permissions,Company company,String sessionId) { | 
|---|
|  |  |  | if (user == null) { | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 拷贝用户信息 | 
|---|
|  |  |  | LoginUserInfo loginUserInfo = new LoginUserInfo(); | 
|---|
|  |  |  | BeanUtils.copyProperties(user, loginUserInfo); | 
|---|
|  |  |  | loginUserInfo.setCompany(company); | 
|---|
|  |  |  | // 设置角色信息 | 
|---|
|  |  |  | List<String> rs = new ArrayList<>(); | 
|---|
|  |  |  | for (SystemRole role : roles) { | 
|---|
|  |  |  | rs.add(role.getCode()); | 
|---|
|  |  |  | if(CollectionUtils.isNotEmpty(roles)){ | 
|---|
|  |  |  | for (SystemRole role : roles) { | 
|---|
|  |  |  | rs.add(role.getCode()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | loginUserInfo.setSessionId(sessionId); | 
|---|
|  |  |  | loginUserInfo.setRoles(rs); | 
|---|
|  |  |  | // 设置权限信息 | 
|---|
|  |  |  | List<String> pms = new ArrayList<>(); | 
|---|
|  |  |  | for (SystemPermission permission : permissions) { | 
|---|
|  |  |  | pms.add(permission.getCode()); | 
|---|
|  |  |  | if(CollectionUtils.isNotEmpty(permissions)){ | 
|---|
|  |  |  | for (SystemPermission permission : permissions) { | 
|---|
|  |  |  | pms.add(permission.getCode()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | loginUserInfo.setPermissions(pms); | 
|---|
|  |  |  | return loginUserInfo; | 
|---|