menus;
}
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java
deleted file mode 100644
index 2309a3a..0000000
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.nl.system.service.role.dao;
-
-import com.baomidou.mybatisplus.annotation.TableName;
-import java.io.Serializable;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- *
- * 角色菜单关联
- *
- *
- * @author generator
- * @since 2022-12-16
- */
-@Data
-@EqualsAndHashCode(callSuper = false)
-@TableName("sys_roles_menus")
-public class SysRolesMenus implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- /**
- * 菜单ID
- */
- private String menuId;
-
- /**
- * 角色ID
- */
- private String roleId;
-
-
-}
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java
index 51dd247..471f7ff 100644
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java
+++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java
@@ -1,11 +1,14 @@
package org.nl.system.service.role.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Param;
import org.nl.system.service.role.dao.SysRole;
+import javax.persistence.criteria.From;
import java.util.Collection;
import java.util.List;
+import java.util.Set;
/**
*
@@ -18,4 +21,15 @@ import java.util.List;
public interface SysRoleMapper extends BaseMapper {
void saveRoleRelation(@Param("user") String UserId, @Param("roles") Collection roles);
+
+ void deleteRoleMenuBatchRoleIds(Collection ids);
+
+ List selectMenuIdsByRoles(String roleId);
+
+ /**
+ * 插入角色/菜单表
+ * @param roleId
+ * @param menuIds
+ */
+ void insertRoleMenu(String roleId, Collection menuIds);
}
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml
index 874eb64..aad6a0a 100644
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml
+++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml
@@ -8,4 +8,19 @@
(#{user},#{role})
+
+
+
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java
deleted file mode 100644
index 5d17c66..0000000
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.nl.system.service.role.dao.mapper;
-
-import org.nl.system.service.role.dao.SysRolesMenus;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
- *
- * 角色菜单关联 Mapper 接口
- *
- *
- * @author generator
- * @since 2022-12-16
- */
-public interface SysRolesMenusMapper extends BaseMapper {
-
-}
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml
deleted file mode 100644
index 335766b..0000000
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java
index 7e031e0..609015d 100644
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java
+++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java
@@ -17,16 +17,11 @@ import org.nl.modules.common.utils.SecurityUtils;
import org.nl.system.service.menu.dao.mapper.SysMenuMapper;
import org.nl.system.service.role.ISysRoleService;
import org.nl.system.service.role.dao.SysRole;
-import org.nl.system.service.role.dao.SysRolesMenus;
import org.nl.system.service.role.dao.mapper.SysRoleMapper;
-import org.nl.system.service.role.dao.mapper.SysRolesMenusMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
/**
*
@@ -44,8 +39,6 @@ public class SysRoleServiceImpl extends ServiceImpl impl
private final SysMenuMapper sysMenuMapper;
- private final SysRolesMenusMapper rolesMenusMapper;
-
@Override
public IPage query(Map param, PageQuery page) {
String blurry = null;
@@ -55,8 +48,7 @@ public class SysRoleServiceImpl extends ServiceImpl impl
IPage pages = new Page<>(page.getPage() + 1, page.getSize());
roleMapper.selectPage(pages, lam);
// 需要吧menus反回去
- pages.getRecords().forEach(sysRole -> sysRole.setMenus(rolesMenusMapper.selectList(new LambdaQueryWrapper()
- .eq(SysRolesMenus::getRoleId, sysRole.getRoleId()))));
+ pages.getRecords().forEach(sysRole -> sysRole.setMenus(roleMapper.selectMenuIdsByRoles(sysRole.getRoleId())));
return pages;
}
@@ -111,24 +103,24 @@ public class SysRoleServiceImpl extends ServiceImpl impl
public void deleteBatchByIds(Set ids) {
// 删除角色表
roleMapper.deleteBatchIds(ids);
- // 删除角色用户表
- ids.forEach(id -> rolesMenusMapper.delete(new LambdaQueryWrapper().eq(SysRolesMenus::getRoleId, id)));
+ // 删除角色菜单绑定关系
+ roleMapper.deleteRoleMenuBatchRoleIds(ids);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateMenu(JSONObject form) {
- Long roleId = form.getLong("roleId");
+ String roleId = form.getString("roleId");
JSONArray menus = form.getJSONArray("menus");
- // 删除
- rolesMenusMapper.delete(new LambdaQueryWrapper().eq(SysRolesMenus::getRoleId, roleId));
+ Set menuIds = new HashSet<>();
for (int i = 0; i < menus.size(); i++) {
- JSONObject rmObj = menus.getJSONObject(i);
- SysRolesMenus rolesMenus = new SysRolesMenus();
- rolesMenus.setRoleId(roleId.toString());
- rolesMenus.setMenuId(rmObj.getString("menuId"));
- rolesMenusMapper.insert(rolesMenus);
+ JSONObject object = menus.getJSONObject(i);
+ menuIds.add(object.getString("menuId"));
}
+ // 删除当前角色绑定的菜单
+ roleMapper.deleteRoleMenuBatchRoleIds(Arrays.asList(roleId));
+ // 插入数据
+ roleMapper.insertRoleMenu(roleId, menuIds);
}
@Override
@@ -140,4 +132,9 @@ public class SysRoleServiceImpl extends ServiceImpl impl
return permission;
}
+ @Override
+ public void saveUserRoleRelation(String UserId, List deptIds) {
+
+ }
+
}
diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java
deleted file mode 100644
index c05b091..0000000
--- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.nl.system.service.role.impl;
-
-import org.nl.system.service.role.dao.SysRolesMenus;
-import org.nl.system.service.role.dao.mapper.SysRolesMenusMapper;
-import org.nl.system.service.role.ISysRolesMenusService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.stereotype.Service;
-
-/**
- *
- * 角色菜单关联 服务实现类
- *
- *
- * @author generator
- * @since 2022-12-16
- */
-@Service
-public class SysRolesMenusServiceImpl extends ServiceImpl implements ISysRolesMenusService {
-
-}
diff --git a/nladmin-ui/src/views/system/role/index.vue b/nladmin-ui/src/views/system/role/index.vue
index dd11dcf..6543cf9 100644
--- a/nladmin-ui/src/views/system/role/index.vue
+++ b/nladmin-ui/src/views/system/role/index.vue
@@ -184,7 +184,7 @@ export default {
// 初始化默认选中的key
_this.menuIds = []
_this.menus.forEach(function(data) {
- _this.menuIds.push(data.menuId)
+ _this.menuIds.push(data)
})
})
}
@@ -207,7 +207,7 @@ export default {
// 初始化默认选中的key
this.menuIds = []
val.menus.forEach(function(data) {
- _this.menuIds.push(data.menuId)
+ _this.menuIds.push(data)
})
this.showButton = true
}