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