|
@@ -1,9 +1,12 @@
|
|
|
package com.backendsys.modules.system.service.impl;
|
|
|
|
|
|
import cn.hutool.core.convert.Convert;
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
import com.backendsys.exception.CustException;
|
|
|
import com.backendsys.modules.system.dao.SysUserRoleMenuDao;
|
|
|
+import com.backendsys.modules.system.dao.SysUserRolePermissionDao;
|
|
|
import com.backendsys.modules.system.entity.SysUserRoleMenu;
|
|
|
+import com.backendsys.modules.system.entity.SysUserRolePermission;
|
|
|
import com.backendsys.modules.system.service.SysUserRoleMenuService;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -22,6 +25,9 @@ public class SysUserRoleMenuServiceImpl implements SysUserRoleMenuService {
|
|
|
@Autowired
|
|
|
private SysUserRoleMenuDao sysUserRoleMenuDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SysUserRolePermissionDao sysUserRolePermissionDao;
|
|
|
+
|
|
|
// // 转为树型结构 (SysUserRoleMenu)
|
|
|
// public static List<SysUserRoleMenu> buildTree(List<SysUserRoleMenu> sysUserRoleMenuList) {
|
|
|
// // 创建一个Map来存储id和SysUserRoleMenu对象的映射关系
|
|
@@ -122,7 +128,18 @@ public class SysUserRoleMenuServiceImpl implements SysUserRoleMenuService {
|
|
|
|
|
|
@Override
|
|
|
public Map<String, Object> insertUserRoleMenu(SysUserRoleMenu sysUserRoleMenu) {
|
|
|
+
|
|
|
+ // 判断权限是否存在
|
|
|
+ String permission_id = sysUserRoleMenu.getPermission_id();
|
|
|
+ if (StrUtil.isNotEmpty(permission_id)) {
|
|
|
+ LambdaQueryWrapper<SysUserRolePermission> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(SysUserRolePermission::getId, permission_id);
|
|
|
+ SysUserRolePermission permission = sysUserRolePermissionDao.selectOne(queryWrapper);
|
|
|
+ if (permission == null) throw new CustException("权限不存在");
|
|
|
+ }
|
|
|
+
|
|
|
sysUserRoleMenuDao.insert(sysUserRoleMenu);
|
|
|
+
|
|
|
return Map.of("id", sysUserRoleMenu.getId());
|
|
|
}
|
|
|
|
|
@@ -132,6 +149,15 @@ public class SysUserRoleMenuServiceImpl implements SysUserRoleMenuService {
|
|
|
SysUserRoleMenu detail = selectUserRoleMenuDetail(sysUserRoleMenu);
|
|
|
if (detail == null) throw new CustException("菜单不存在");
|
|
|
|
|
|
+ // 判断权限是否存在
|
|
|
+ String permission_id = sysUserRoleMenu.getPermission_id();
|
|
|
+ if (StrUtil.isNotEmpty(permission_id)) {
|
|
|
+ LambdaQueryWrapper<SysUserRolePermission> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(SysUserRolePermission::getId, permission_id);
|
|
|
+ SysUserRolePermission permission = sysUserRolePermissionDao.selectOne(queryWrapper);
|
|
|
+ if (permission == null) throw new CustException("权限不存在");
|
|
|
+ }
|
|
|
+
|
|
|
sysUserRoleMenuDao.updateById(sysUserRoleMenu);
|
|
|
return Map.of("id", sysUserRoleMenu.getId());
|
|
|
}
|