去除角色菜单中间表mapper等信息
This commit is contained in:
@@ -1,21 +0,0 @@
|
||||
package org.nl.system.controller.role;
|
||||
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 角色菜单关联 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author generator
|
||||
* @since 2022-12-16
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/sysRolesMenus")
|
||||
public class SysRolesMenusController {
|
||||
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.system.service.role.dao.SysRole;
|
||||
import org.nl.system.service.role.dao.SysRolesMenus;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
package org.nl.system.service.role;
|
||||
|
||||
import org.nl.system.service.role.dao.SysRolesMenus;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 角色菜单关联 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author generator
|
||||
* @since 2022-12-16
|
||||
*/
|
||||
public interface ISysRolesMenusService extends IService<SysRolesMenus> {
|
||||
|
||||
}
|
||||
@@ -92,10 +92,10 @@ public class SysRole implements Serializable {
|
||||
private String updateTime;
|
||||
|
||||
/**
|
||||
* 角色菜单
|
||||
* 角色菜单id
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private List<SysRolesMenus> menus;
|
||||
private List<String> menus;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 角色菜单关联
|
||||
* </p>
|
||||
*
|
||||
* @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;
|
||||
|
||||
|
||||
}
|
||||
@@ -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;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -18,4 +21,15 @@ import java.util.List;
|
||||
public interface SysRoleMapper extends BaseMapper<SysRole> {
|
||||
|
||||
void saveRoleRelation(@Param("user") String UserId, @Param("roles") Collection<String> roles);
|
||||
|
||||
void deleteRoleMenuBatchRoleIds(Collection<String> ids);
|
||||
|
||||
List<String> selectMenuIdsByRoles(String roleId);
|
||||
|
||||
/**
|
||||
* 插入角色/菜单表
|
||||
* @param roleId
|
||||
* @param menuIds
|
||||
*/
|
||||
void insertRoleMenu(String roleId, Collection<String> menuIds);
|
||||
}
|
||||
|
||||
@@ -8,4 +8,19 @@
|
||||
(#{user},#{role})
|
||||
</foreach>
|
||||
</insert>
|
||||
<insert id="insertRoleMenu">
|
||||
insert into sys_roles_menus values
|
||||
<foreach collection="menuIds" item="menuId" separator=",">
|
||||
(#{menuId},#{roleId})
|
||||
</foreach>
|
||||
</insert>
|
||||
<delete id="deleteRoleMenuBatchRoleIds" parameterType="String">
|
||||
DELETE FROM sys_roles_menus WHERE role_id in
|
||||
<foreach collection="ids" item="id" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
<select id="selectMenuIdsByRoles" resultType="java.lang.String">
|
||||
SELECT DISTINCT menu_id FROM sys_roles_menus WHERE role_id = #{roleId}
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@@ -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;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 角色菜单关联 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author generator
|
||||
* @since 2022-12-16
|
||||
*/
|
||||
public interface SysRolesMenusMapper extends BaseMapper<SysRolesMenus> {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.nl.system.service.role.dao.mapper.SysRolesMenusMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -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.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -44,8 +39,6 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
||||
|
||||
private final SysMenuMapper sysMenuMapper;
|
||||
|
||||
private final SysRolesMenusMapper rolesMenusMapper;
|
||||
|
||||
@Override
|
||||
public IPage<SysRole> query(Map param, PageQuery page) {
|
||||
String blurry = null;
|
||||
@@ -55,8 +48,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
||||
IPage<SysRole> pages = new Page<>(page.getPage() + 1, page.getSize());
|
||||
roleMapper.selectPage(pages, lam);
|
||||
// 需要吧menus反回去
|
||||
pages.getRecords().forEach(sysRole -> sysRole.setMenus(rolesMenusMapper.selectList(new LambdaQueryWrapper<SysRolesMenus>()
|
||||
.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<SysRoleMapper, SysRole> impl
|
||||
public void deleteBatchByIds(Set<String> ids) {
|
||||
// 删除角色表
|
||||
roleMapper.deleteBatchIds(ids);
|
||||
// 删除角色用户表
|
||||
ids.forEach(id -> rolesMenusMapper.delete(new LambdaQueryWrapper<SysRolesMenus>().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<SysRolesMenus>().eq(SysRolesMenus::getRoleId, roleId));
|
||||
Set<String> 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<SysRoleMapper, SysRole> impl
|
||||
return permission;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveUserRoleRelation(String UserId, List<String> deptIds) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 角色菜单关联 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author generator
|
||||
* @since 2022-12-16
|
||||
*/
|
||||
@Service
|
||||
public class SysRolesMenusServiceImpl extends ServiceImpl<SysRolesMenusMapper, SysRolesMenus> implements ISysRolesMenusService {
|
||||
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user