feat(system): 添加菜单、角色和用户相关操作的权限控制

- 在 MenuController、RoleController 和 UserController 中添加了 @PreAuthorize 注解
- 新增了对菜单编辑、角色编辑、用户导入和用户导出的权限控制
This commit is contained in:
Theo
2025-07-02 09:05:57 +08:00
parent 42e5499119
commit 9197065102
3 changed files with 8 additions and 6 deletions

View File

@@ -1,15 +1,14 @@
package com.youlai.boot.system.controller;
import com.youlai.boot.common.result.Result;
import com.youlai.boot.common.enums.LogModuleEnum;
import com.youlai.boot.common.annotation.Log;
import com.youlai.boot.common.annotation.RepeatSubmit;
import com.youlai.boot.common.enums.LogModuleEnum;
import com.youlai.boot.common.model.Option;
import com.youlai.boot.common.result.Result;
import com.youlai.boot.system.model.form.MenuForm;
import com.youlai.boot.system.model.query.MenuQuery;
import com.youlai.boot.system.model.vo.MenuVO;
import com.youlai.boot.common.model.Option;
import com.youlai.boot.system.model.vo.RouteVO;
import com.youlai.boot.common.annotation.Log;
import com.youlai.boot.core.security.util.SecurityUtils;
import com.youlai.boot.system.service.MenuService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -20,7 +19,6 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Set;
/**
* 菜单控制层
@@ -64,6 +62,7 @@ public class MenuController {
@Operation(summary = "菜单表单数据")
@GetMapping("/{id}/form")
@PreAuthorize("@ss.hasPerm('sys:menu:edit')")
public Result<MenuForm> getMenuForm(
@Parameter(description = "菜单ID") @PathVariable Long id
) {

View File

@@ -64,6 +64,7 @@ public class RoleController {
@Operation(summary = "获取角色表单数据")
@GetMapping("/{roleId}/form")
@PreAuthorize("@ss.hasPerm('sys:role:edit')")
public Result<RoleForm> getRoleForm(
@Parameter(description = "角色ID") @PathVariable Long roleId
) {

View File

@@ -156,6 +156,7 @@ public class UserController {
@Operation(summary = "导入用户")
@PostMapping("/import")
@PreAuthorize("@ss.hasPerm('sys:user:import')")
@Log(value = "导入用户", module = LogModuleEnum.USER)
public Result<ExcelResult> importUsers(MultipartFile file) throws IOException {
UserImportListener listener = new UserImportListener();
@@ -165,6 +166,7 @@ public class UserController {
@Operation(summary = "导出用户")
@GetMapping("/export")
@PreAuthorize("@ss.hasPerm('sys:user:export')")
@Log(value = "导出用户", module = LogModuleEnum.USER)
public void exportUsers(UserPageQuery queryParams, HttpServletResponse response) throws IOException {
String fileName = "用户列表.xlsx";