From d4f9e73dc6f275a44b45afa13b5af4bf45cae073 Mon Sep 17 00:00:00 2001 From: mg <maokecheng@163.com> Date: 星期五, 28 十月 2022 11:10:19 +0800 Subject: [PATCH] 用戶表刪除部门Id逻辑修改 --- ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java | 87 ++++++++++++++++++------------------------- 1 files changed, 37 insertions(+), 50 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java index 9125d9e..7664f29 100644 --- a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java +++ b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java @@ -10,7 +10,6 @@ import com.ycl.bo.AdminUserDetails; import com.ycl.dto.UmsAdminParam; import com.ycl.dto.UpdateAdminPasswordParam; -import com.ycl.entity.depart.UmsDepart; import com.ycl.entity.user.*; import com.ycl.exception.ApiException; import com.ycl.exception.Asserts; @@ -24,11 +23,8 @@ import com.ycl.utils.SpringUtil; import com.ycl.utils.common.LiveTimeMillisecond; import com.ycl.utils.common.MacUtils; -import com.ycl.utils.common.PojoUtils; -import com.ycl.utils.common.RandomUtils; import com.ycl.utils.redis.RedisKey; import com.ycl.vo.user.UserVO; -import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; @@ -81,6 +77,8 @@ UmsRoleMenuRelationMapper umsRoleMenuRelationMapper; @Resource AdminMenuRelationMapper adminMenuRelationMapper; + @Resource + UmsMenuMapper umsMenuMapper; @Override public UmsAdmin getAdminByUsername(String username) { @@ -132,33 +130,38 @@ } //缁戝畾鑿滃崟浜庣敤鎴� if (!ids.isEmpty()) { - Integer size = 0; - Long maxId = null; + ArrayList<UmsRoleMenuRelation> umsRoleMenuRelations = new ArrayList<>(); for (Long id : ids) { - if (size < umsRoleMenuRelationMapper + umsRoleMenuRelations.addAll(umsRoleMenuRelationMapper .selectList(new LambdaQueryWrapper<UmsRoleMenuRelation>() - .eq(UmsRoleMenuRelation::getRoleId, id)).size()) { - size = umsRoleMenuRelationMapper - .selectList(new LambdaQueryWrapper<UmsRoleMenuRelation>() - .eq(UmsRoleMenuRelation::getRoleId, id)).size(); - maxId = id; - } + .eq(UmsRoleMenuRelation::getRoleId, id))); } - umsRoleMenuRelationMapper - .selectList(new LambdaQueryWrapper<UmsRoleMenuRelation>() - .eq(UmsRoleMenuRelation::getRoleId, maxId)) + umsRoleMenuRelations .stream() - .forEach(item->{ + .map(item->item.getMenuId()) + .collect(Collectors.toList()) + .stream() + .distinct() + .collect(Collectors.toList()) + .stream() + .forEach(item -> { AdminMenuRelation adminMenuRelation = new AdminMenuRelation(); adminMenuRelation.setAdminId(umsAdmin.getId()); - adminMenuRelation.setMenuId(item.getMenuId()); + adminMenuRelation.setMenuId(item); adminMenuRelationMapper.insert(adminMenuRelation); }); } //瀵圭敤鎴峰悕绯荤粺榛樿娣诲姞 - umsAdmin.setNickName(RandomUtils.getUserId(umsAdmin.getId())); - baseMapper.updateById(umsAdmin); + //umsAdmin.setNickName(RandomUtils.getUserId(umsAdmin.getId())); + //娣诲姞閮ㄩ棬 + UmsDepartManage departManage = new UmsDepartManage(); + departManage.setUserId(umsAdmin.getId()); + departManage.setDepartId(umsAdminParam.getDepartmentId()); + departManage.setCreateTime(new Date()); + departManage.setUpdateTime(new Date()); + umsDepartManageMapper.insert(departManage); + baseMapper.updateById(umsAdmin); return umsAdmin; } @@ -289,16 +292,14 @@ } @Override - public List<UmsResource> getResourceList(Long adminId) { - List<UmsResource> resourceList = getCacheService().getResourceList(adminId); - if (CollUtil.isNotEmpty(resourceList)) { - return resourceList; + public List<UmsMenu> getResourceList(Long adminId) { + List<UmsMenu> umsMenuList = getCacheService().getResourceList(adminId); + if (CollUtil.isNotEmpty(umsMenuList)) { + return umsMenuList; } - resourceList = umsResourceMapper.getResourceList(adminId); - if (CollUtil.isNotEmpty(resourceList)) { - getCacheService().setResourceList(adminId, resourceList); - } - return resourceList; + umsMenuList = umsMenuMapper.getMenuList(adminId); + getCacheService().setResourceList(adminId, umsMenuList); + return umsMenuList; } @Override @@ -329,7 +330,7 @@ //鑾峰彇鐢ㄦ埛淇℃伅 UmsAdmin admin = getAdminByUsername(username); if (admin != null) { - List<UmsResource> resourceList = getResourceList(admin.getId()); + List<UmsMenu> resourceList = getResourceList(admin.getId()); return new AdminUserDetails(admin, resourceList); } throw new UsernameNotFoundException("鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒"); @@ -345,7 +346,7 @@ int pageSize = pageUserVO.getPageSize(); int current = pageUserVO.getCurrent(); Page<UmsAdmin> page = new Page<>(current, pageSize); - LambdaQueryWrapper<UmsAdmin> queryWrapper = new LambdaQueryWrapper<>(); + /* LambdaQueryWrapper<UmsAdmin> queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(pageUserVO.getKeyword())) { queryWrapper.like(UmsAdmin::getUsername, pageUserVO.getKeyword()) @@ -357,23 +358,9 @@ } if (PojoUtils.Vo.isUsefulSearchParam(pageUserVO.getUserType())) { queryWrapper.eq(UmsAdmin::getUserType, pageUserVO.getUserType()); - } - if (PojoUtils.Vo.isUsefulSearchParam(pageUserVO.getDepartmentId())) { - queryWrapper.eq(UmsAdmin::getDepartmentId, pageUserVO.getDepartmentId()); - } - Page<UmsAdmin> page1 = baseMapper.selectPage(page, queryWrapper); - List<UmsAdmin> records = page1.getRecords(); - if (CollUtil.isNotEmpty(records)) { - records.forEach(e -> { - UmsDepart umsDepart = departService.getById(e.getDepartmentId()); - if (null != umsDepart) { - e.setDepartName(umsDepart.getDepartName()); - } - //鑾峰彇瑙掕壊鍒楄〃 - List<UmsRole> roles = umsRoleMapper.getRoleList(e.getId()); - e.setRoles(roles); - }); - } + }*/ + Page<UmsAdmin> page1 = baseMapper.selectCondPage(page,pageUserVO); + return page1; } @@ -416,11 +403,11 @@ QueryWrapper<UmsAdmin> wrapperUser = new QueryWrapper<>(); wrapperUser.in("id", arr); List<UmsAdmin> adminList = baseMapper.selectList(wrapperUser); - if (adminList == null||adminList.isEmpty()) { + if (adminList == null || adminList.isEmpty()) { throw new ApiException("鏈煡璇㈠埌鐢ㄦ埛"); } if ("02".equals(sendType)) { - str = adminList.stream().map(UmsAdmin::getEmail).collect(Collectors.joining(",")); + str = adminList.stream().map(UmsAdmin::getEmail).collect(Collectors.joining(",")); } else { str = adminList.stream().map(UmsAdmin::getMobile).collect(Collectors.joining(",")); } -- Gitblit v1.8.0