|
@@ -5,22 +5,26 @@ import cn.hutool.core.lang.Validator;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.github.pagehelper.Page;
|
|
|
import com.zhongzheng.common.annotation.DataScope;
|
|
|
import com.zhongzheng.common.constant.UserConstants;
|
|
|
+import com.zhongzheng.common.core.domain.entity.SysRole;
|
|
|
import com.zhongzheng.common.core.domain.entity.TopSysUser;
|
|
|
import com.zhongzheng.common.exception.CustomException;
|
|
|
import com.zhongzheng.modules.course.bo.CourseBusinessQueryBo;
|
|
|
import com.zhongzheng.modules.top.user.bo.TopSysUserAddBo;
|
|
|
import com.zhongzheng.modules.top.user.bo.TopSysUserEditBo;
|
|
|
import com.zhongzheng.modules.top.user.bo.TopSysUserQueryBo;
|
|
|
+import com.zhongzheng.modules.top.user.domain.TopSysRole;
|
|
|
import com.zhongzheng.modules.top.user.domain.TopSysUserPost;
|
|
|
import com.zhongzheng.modules.top.user.domain.TopSysUserRole;
|
|
|
import com.zhongzheng.modules.top.user.mapper.TopSysUserMapper;
|
|
|
import com.zhongzheng.modules.top.user.mapper.TopSysUserPostMapper;
|
|
|
import com.zhongzheng.modules.top.user.mapper.TopSysUserRoleMapper;
|
|
|
+import com.zhongzheng.modules.top.user.service.ITopSysRoleService;
|
|
|
import com.zhongzheng.modules.top.user.service.ITopSysUserService;
|
|
|
import com.zhongzheng.modules.top.user.vo.TopSysUserVo;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -47,6 +51,9 @@ public class TopSysUserServiceImpl extends ServiceImpl<TopSysUserMapper, TopSysU
|
|
|
|
|
|
@Autowired
|
|
|
private TopSysUserPostMapper topSysUserPostMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ITopSysRoleService iTopSysRoleService;
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -165,21 +172,23 @@ public class TopSysUserServiceImpl extends ServiceImpl<TopSysUserMapper, TopSysU
|
|
|
@DataScope(deptAlias = "d", userAlias = "u")
|
|
|
public List<TopSysUser> selectUserList(TopSysUser user) {
|
|
|
List<TopSysUser> sysUsers = baseMapper.selectUserList(user);
|
|
|
- /* for (TopSysUser sysUser : sysUsers) {
|
|
|
- List<Long> testList = new ArrayList();
|
|
|
- for (SysRole role : sysUser.getRoles()) {
|
|
|
- testList.add(role.getRoleId());
|
|
|
- }
|
|
|
- //初始化需要得到的数组
|
|
|
- Long[] array = new Long[testList.size()];
|
|
|
-
|
|
|
- //使用for循环得到数组
|
|
|
- for(int i = 0; i < testList.size();i++){
|
|
|
- array[i] = testList.get(i);
|
|
|
+ for (TopSysUser sysUser : sysUsers) {
|
|
|
+
|
|
|
+ List<TopSysUserRole> topSysUserRoles = topSysUserRoleMapper.selectList(new LambdaQueryWrapper<TopSysUserRole>().eq(TopSysUserRole::getUserId, sysUser.getUserId()));
|
|
|
+ if (CollectionUtils.isNotEmpty(topSysUserRoles)){
|
|
|
+ List<Long> collect = topSysUserRoles.stream().map(TopSysUserRole::getRoleId).collect(Collectors.toList());
|
|
|
+ sysUser.setRoleIds(collect);
|
|
|
+ List<TopSysRole> sysRoles = iTopSysRoleService.listByIds(collect);
|
|
|
+ if (CollectionUtils.isNotEmpty(sysRoles)){
|
|
|
+ List<SysRole> collect1 = sysRoles.stream().map(x -> BeanUtil.toBean(x, SysRole.class)).collect(Collectors.toList());
|
|
|
+ sysUser.setRoles(collect1);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ sysUser.setRoleIds(new ArrayList<>());
|
|
|
+ sysUser.setRoles(new ArrayList<>());
|
|
|
}
|
|
|
|
|
|
- sysUser.setRoleIds(array);
|
|
|
- }*/
|
|
|
+ }
|
|
|
return sysUsers;
|
|
|
}
|
|
|
|
|
@@ -322,7 +331,7 @@ public class TopSysUserServiceImpl extends ServiceImpl<TopSysUserMapper, TopSysU
|
|
|
* @param user 用户对象
|
|
|
*/
|
|
|
public void insertUserRole(TopSysUser user) {
|
|
|
- Long[] roles = user.getRoleIds();
|
|
|
+ List<Long> roles = user.getRoleIds();
|
|
|
if (Validator.isNotNull(roles)) {
|
|
|
// 删除用户与角色关联
|
|
|
topSysUserRoleMapper.delete(new LambdaQueryWrapper<TopSysUserRole>().eq(TopSysUserRole::getUserId,user.getUserId()));
|