修改权限改造引起的bug
This commit is contained in:
@ -15,6 +15,9 @@ import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.bean.copier.CopyOptions;
|
||||
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.OneToOne;
|
||||
import javax.validation.constraints.*;
|
||||
import java.sql.Timestamp;
|
||||
import java.io.Serializable;
|
||||
@ -50,7 +53,10 @@ public class User implements Serializable {
|
||||
|
||||
@TableField(exist = false)
|
||||
private Set<Role> roles;
|
||||
|
||||
@TableField(exist = false)
|
||||
private Job job;
|
||||
@TableField(exist = false)
|
||||
private Dept dept;
|
||||
/** 密码 */
|
||||
private String password;
|
||||
|
||||
|
@ -86,4 +86,6 @@ public interface RoleService extends BaseService<Role>{
|
||||
* @return 权限信息
|
||||
*/
|
||||
Collection<GrantedAuthority> mapToGrantedAuthorities(UserDto user);
|
||||
|
||||
Set<Role> findByDeptIds(Set<Long> deptIds);
|
||||
}
|
||||
|
@ -44,7 +44,7 @@ public class UserDto implements Serializable {
|
||||
@JsonIgnore
|
||||
private String password;
|
||||
|
||||
private Date lastPasswordResetTime;
|
||||
private Timestamp lastPasswordResetTime;
|
||||
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Set<RoleSmallDto> roles;
|
||||
|
@ -192,4 +192,9 @@ public class RoleServiceImpl extends BaseServiceImpl<RoleMapper, Role> implement
|
||||
return permissions.stream().map(SimpleGrantedAuthority::new)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<Role> findByDeptIds(Set<Long> deptIds) {
|
||||
return roleMapper.findByDeptIds(deptIds);
|
||||
}
|
||||
}
|
||||
|
@ -11,7 +11,8 @@ package co.yixiang.modules.system.service.impl;
|
||||
import co.yixiang.modules.system.domain.User;
|
||||
import co.yixiang.common.service.impl.BaseServiceImpl;
|
||||
import co.yixiang.modules.system.domain.UserAvatar;
|
||||
import co.yixiang.modules.system.service.UserAvatarService;
|
||||
import co.yixiang.modules.system.service.*;
|
||||
import co.yixiang.modules.system.service.mapper.RoleMapper;
|
||||
import co.yixiang.utils.SecurityUtils;
|
||||
import co.yixiang.utils.StringUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
@ -19,7 +20,6 @@ import co.yixiang.dozer.service.IGenerator;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import co.yixiang.common.utils.QueryHelpPlus;
|
||||
import co.yixiang.utils.FileUtil;
|
||||
import co.yixiang.modules.system.service.UserService;
|
||||
import co.yixiang.modules.system.service.dto.UserDto;
|
||||
import co.yixiang.modules.system.service.dto.UserQueryCriteria;
|
||||
import co.yixiang.modules.system.service.mapper.SysUserMapper;
|
||||
@ -59,11 +59,17 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, User> imp
|
||||
private final IGenerator generator;
|
||||
private final SysUserMapper userMapper;
|
||||
private final UserAvatarService userAvatarService;
|
||||
private final JobService jobService;
|
||||
private final DeptService deptService;
|
||||
private final RoleMapper roleMapper;
|
||||
|
||||
public SysUserServiceImpl(IGenerator generator, SysUserMapper userMapper, UserAvatarService userAvatarService) {
|
||||
public SysUserServiceImpl(IGenerator generator, SysUserMapper userMapper, UserAvatarService userAvatarService, JobService jobService, DeptService deptService, RoleService roleService, RoleMapper roleMapper) {
|
||||
this.generator = generator;
|
||||
this.userMapper = userMapper;
|
||||
this.userAvatarService = userAvatarService;
|
||||
this.jobService = jobService;
|
||||
this.deptService = deptService;
|
||||
this.roleMapper = roleMapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -81,7 +87,13 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, User> imp
|
||||
@Override
|
||||
//@Cacheable
|
||||
public List<User> queryAll(UserQueryCriteria criteria){
|
||||
return baseMapper.selectList(QueryHelpPlus.getPredicate(User.class, criteria));
|
||||
List<User> userList = baseMapper.selectList(QueryHelpPlus.getPredicate(User.class, criteria));
|
||||
for (User user : userList) {
|
||||
user.setJob(jobService.getById(user.getJobId()));
|
||||
user.setDept(deptService.getById(user.getDeptId()));
|
||||
user.setRoles(roleMapper.findByUsers_Id(user.getId()));
|
||||
}
|
||||
return userList;
|
||||
}
|
||||
|
||||
|
||||
|
@ -46,4 +46,7 @@ public interface RoleMapper extends CoreMapper<Role> {
|
||||
void untiedMenu(@Param("id") Long id);
|
||||
@Select("select m.* from role m LEFT JOIN users_roles t on m.id= t.role_id LEFT JOIN `user` r on r.id = t.user_id where r.id = #{id};")
|
||||
List<Role> selectListByUserId(@Param("id") Long id);
|
||||
|
||||
@Select("")
|
||||
Set<Role> findByDeptIds(@Param("deptIds")Set<Long> deptIds);
|
||||
}
|
||||
|
Reference in New Issue
Block a user