From d22b530fa0fbd910d8d7baefa29d88d755568e68 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期一, 15 十二月 2025 10:01:41 +0800
Subject: [PATCH] 1、 修复权限相关的bug
---
hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/controller/SysMenuController.java | 13 +++++--------
hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/entity/SysRoleMenu.java | 2 ++
hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java | 2 +-
hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/SysMenuService.java | 1 +
hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java | 20 ++++++++++++++------
hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/service/impl/SysRoleServiceImpl.java | 8 ++------
6 files changed, 25 insertions(+), 21 deletions(-)
diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/controller/SysMenuController.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/controller/SysMenuController.java
index 27eab58..a24a214 100644
--- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/controller/SysMenuController.java
+++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/controller/SysMenuController.java
@@ -30,21 +30,18 @@
@ApiOperation("鏂板鑿滃崟")
@PostMapping("/save")
// @PreAuthorize("hasAuthority('sys:menu:save')")
- public Result save(@Validated @RequestBody SysMenu sysMenu) {
- sysMenuService.save(sysMenu);
- GeneralRequest request = new GeneralRequest();
- return Result.success(sysMenuService.getMenuTree(request));
+ public Result saveMenu(@Validated @RequestBody SysMenu sysMenu) {
+ sysMenuService.saveMenu(sysMenu);
+ return Result.build(200, "鏂板鎴愬姛", Boolean.TRUE);
}
@ApiOperation("淇敼鑿滃崟淇℃伅")
@PostMapping("/updateMenu")
// @PreAuthorize("hasAuthority('sys:menu:update')")
- public Result<List<SysMenu>> updateMenu(@Validated @RequestBody SysMenu sysMenu) {
- //return Result.success(sysMenu);
+ public Result<Boolean> updateMenu(@Validated @RequestBody SysMenu sysMenu) {
sysMenuService.updateMenu(sysMenu);
- GeneralRequest request = new GeneralRequest();
- return Result.build(200, "淇敼鎴愬姛", sysMenuService.getMenuTree(request));
+ return Result.build(200, "淇敼鎴愬姛", Boolean.TRUE);
}
@ApiOperation("鑾峰彇鐢ㄦ埛鏈夋潈闄愮殑鎵�鏈夎彍鍗�")
diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/SysMenuService.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/SysMenuService.java
index 014d1cd..b01647b 100644
--- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/SysMenuService.java
+++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/SysMenuService.java
@@ -63,4 +63,5 @@
*/
String batchDeleteMenu(List<Long> menuIds);
+ Boolean saveMenu(SysMenu sysMenu);
}
diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java
index 4e96f47..69d60d9 100644
--- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java
+++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java
@@ -15,7 +15,7 @@
import com.mes.role.service.SysRoleMenuService;
import com.mes.userinfo.entity.SysUser;
import com.mes.userinfo.entity.SysUserRole;
-import com.mes.userinfo.mapper.SysUserRoleMapper;
+import com.mes.userinfo.service.SysUserRoleService;
import com.mes.userinfo.service.SysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -41,7 +41,7 @@
SysUserService sysUserService;
@Autowired
- SysUserRoleMapper sysUserRoleMapper;
+ SysUserRoleService sysUserRoleService;
@Autowired
SysRoleMenuService sysRoleMenuService;
@@ -64,12 +64,11 @@
.innerJoin(SysUser.class, SysUser::getId, SysUserRole::getUserId)
.innerJoin(SysRoleMenu.class, SysRoleMenu::getRoleId, SysUserRole::getRoleId)
.innerJoin(SysMenu.class, SysMenu::getId, SysRoleMenu::getMenuId)
- .eq(SysUser::getId, user.getId())
- .like(StringUtils.isNotBlank(request.getKey()), SysMenu::getMenuName, request.getKey())
+ .eq(StringUtils.isNotBlank(request.getKey()), SysUser::getId, user.getId())
.orderByAsc(SysMenu::getListSort);
//
- List<SysMenu> menuList = sysUserRoleMapper.selectJoinList(SysMenu.class, wrapper);
+ List<SysMenu> menuList = sysUserRoleService.selectJoinList(SysMenu.class, wrapper);
log.info("userinfos:{}", menuList);
return create(menuList);
}
@@ -114,6 +113,15 @@
return "鎵归噺鍒犻櫎鎴愬姛";
}
+ @Override
+ public Boolean saveMenu(SysMenu sysMenu) {
+ this.save(sysMenu);
+ SysUser user = UserInfoUtils.get();
+ SysUserRole one = sysUserRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, user.getId()));
+ sysRoleMenuService.save(new SysRoleMenu(one.getRoleId(), sysMenu.getId()));
+ return Boolean.TRUE;
+ }
+
/**
* 灏嗘暟鎹簱涓煡璇㈠嚭鏉ョ殑list闆嗗悎浼犲叆姝ゆ柟娉曞嵆鍙幏寰楁帓鎴愭爲褰㈢粨鏋勭殑list闆嗗悎
@@ -127,7 +135,7 @@
.map(item -> {
item.setChildren(getChildren(item, lists));
return item;
- }).collect(Collectors.toList());
+ }).sorted((o1, o2) -> o1.getListSort() - o2.getListSort()).collect(Collectors.toList());
return deptTreeList;
}
diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/entity/SysRoleMenu.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/entity/SysRoleMenu.java
index aae2aed..b1c052c 100644
--- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/entity/SysRoleMenu.java
+++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/entity/SysRoleMenu.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -16,6 +17,7 @@
* @since 2024-04-11
*/
@Data
+@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class SysRoleMenu implements Serializable {
diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/service/impl/SysRoleServiceImpl.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/service/impl/SysRoleServiceImpl.java
index a787182..8201887 100644
--- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/service/impl/SysRoleServiceImpl.java
+++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/role/service/impl/SysRoleServiceImpl.java
@@ -112,18 +112,14 @@
return "success";
}
List<SysRoleMenu> roleMenuList = menuList.stream().map(menu -> {
- SysRoleMenu roleMenu = new SysRoleMenu();
- roleMenu.setRoleId(roleId);
- roleMenu.setMenuId(menu.getId());
+ SysRoleMenu roleMenu = new SysRoleMenu(roleId,menu.getId());
return roleMenu;
}).collect(Collectors.toList());
// 浣跨敤娴佸鐞嗚彍鍗曞垪琛紝鎻愬彇 children 鐨� id锛屽苟璁剧疆鍒� SysRoleMenu 涓�
List<SysRoleMenu> childrenList = menuList.stream()
.flatMap(menu -> menu.getChildren().stream()) // 鎵佸钩鍖栧鐞� children 鍒楄〃
.map(child -> {
- SysRoleMenu roleMenu = new SysRoleMenu();
- roleMenu.setRoleId(roleId);
- roleMenu.setMenuId(child.getId()); // 璁剧疆 child 鐨� id 鍒� menuId
+ SysRoleMenu roleMenu = new SysRoleMenu(roleId,child.getId());
return roleMenu;
})
.collect(Collectors.toList());
diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java
index f6447db..4e45773 100644
--- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java
+++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java
@@ -108,7 +108,7 @@
public String saveUser(SysUserVO user) {
log.info("淇濆瓨鐢ㄦ埛淇℃伅");
// 榛樿瀵嗙爜
- String password = passwordEncoder.encode(Const.DEFULT_PASSWORD);
+ String password = passwordEncoder.encode(user.getPassword());
user.setPassword(password);
SysUser sysUser = new SysUser();
BeanUtils.copyProperties(user, sysUser);
--
Gitblit v1.8.0