From 187bca28db728904da9a9136bcae751767879045 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期三, 12 十月 2022 15:50:44 +0800
Subject: [PATCH] 菜单权限 和启用菜单 然后日志功能
---
ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java | 45 +++++++++++++++++++++++++++++++++++++--------
1 files changed, 37 insertions(+), 8 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 ca8979a..c4f418f 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
@@ -76,6 +76,10 @@
private RedisService redisService;
@Resource
private UmsDepartManageMapper umsDepartManageMapper;
+ @Resource
+ UmsRoleMenuRelationMapper umsRoleMenuRelationMapper;
+ @Resource
+ AdminMenuRelationMapper adminMenuRelationMapper;
@Override
public UmsAdmin getAdminByUsername(String username) {
@@ -117,13 +121,38 @@
List<Long> ids = umsAdminParam.getRoleIds();
if (!ids.isEmpty()) {
List<UmsAdminRoleRelation> roleIds = new ArrayList<>();
- for(Long id:ids){
+ for (Long id : ids) {
UmsAdminRoleRelation urr = new UmsAdminRoleRelation();
urr.setAdminId(umsAdmin.getId());
urr.setRoleId(id);
roleIds.add(urr);
- }
+ }
umsAdminRoleRelationService.saveBatch(roleIds);
+ }
+ //缁戝畾鑿滃崟浜庣敤鎴�
+ if (!ids.isEmpty()) {
+ Integer size = 0;
+ Long maxId = null;
+ for (Long id : ids) {
+ if (size < umsRoleMenuRelationMapper
+ .selectList(new LambdaQueryWrapper<UmsRoleMenuRelation>()
+ .eq(UmsRoleMenuRelation::getRoleId, id)).size()) {
+ size = umsRoleMenuRelationMapper
+ .selectList(new LambdaQueryWrapper<UmsRoleMenuRelation>()
+ .eq(UmsRoleMenuRelation::getRoleId, id)).size();
+ maxId = id;
+ }
+ }
+ umsRoleMenuRelationMapper
+ .selectList(new LambdaQueryWrapper<UmsRoleMenuRelation>()
+ .eq(UmsRoleMenuRelation::getRoleId, maxId))
+ .stream()
+ .forEach(item->{
+ AdminMenuRelation adminMenuRelation = new AdminMenuRelation();
+ adminMenuRelation.setAdminId(umsAdmin.getId());
+ adminMenuRelation.setMenuId(item.getMenuId());
+ adminMenuRelationMapper.insert(adminMenuRelation);
+ });
}
//瀵圭敤鎴峰悕绯荤粺榛樿娣诲姞
umsAdmin.setNickName(RandomUtils.getUserId(umsAdmin.getId()));
@@ -340,8 +369,8 @@
e.setDepartName(umsDepart.getDepartName());
}
//鑾峰彇瑙掕壊鍒楄〃
- List<UmsRole> roles = umsRoleMapper.getRoleList(e.getId());
- e.setRoles(roles);
+ List<UmsRole> roles = umsRoleMapper.getRoleList(e.getId());
+ e.setRoles(roles);
});
}
return page1;
@@ -358,11 +387,11 @@
public boolean updateStatusBatch(List<Long> ids, Integer status) {
List<UmsAdmin> users = new ArrayList<>();
for (Long id : ids) {
- UmsAdmin umsAdmin = UmsAdmin.builder().
+ UmsAdmin umsAdmin = UmsAdmin.builder().
id(id).status(status).build();
users.add(umsAdmin);
}
- updateBatchById(users,users.size());
+ updateBatchById(users, users.size());
getCacheService().delBatchAdmin(ids);
return true;
}
@@ -371,8 +400,8 @@
public List<UmsAdmin> getDepartUser(Long departId) {
QueryWrapper<UmsDepartManage> wrapper = new QueryWrapper<>();
wrapper.lambda().eq(UmsDepartManage::getDepartId, departId);
- List<UmsDepartManage> list = umsDepartManageMapper.selectList(wrapper);
- List<Long> userIds = list.stream().map(UmsDepartManage::getUserId).collect(Collectors.toList());
+ List<UmsDepartManage> list = umsDepartManageMapper.selectList(wrapper);
+ List<Long> userIds = list.stream().map(UmsDepartManage::getUserId).collect(Collectors.toList());
QueryWrapper<UmsAdmin> wrapperUser = new QueryWrapper<>();
wrapperUser.in("id", userIds);
List<UmsAdmin> adminList = baseMapper.selectList(wrapperUser);
--
Gitblit v1.8.0