from fastapi import APIRouter, Request from apps.forms.menu import MenuForm from apps.middleware.check_demo import check_demo from apps.middleware.permission_required import permission_required from apps.services import menu from utils import R # 创建路由 router = APIRouter() # 查询分页数据 @router.get('/list', summary='查询分页数据') @permission_required("sys:menu:list") def list(request: Request): result = menu.get_menu_page(request) return result # 查询菜单详情 @router.get('/detail/{id}', summary='查询菜单详情') @permission_required("sys:menu:detail") def detail(request: Request, id): data = menu.get_menu_detail(id) return R.ok(data=data) # 添加菜单 @router.post('/add', summary='添加菜单') @permission_required("sys:menu:add") @check_demo async def add(request: Request, data: MenuForm): result = await menu.add_menu(request, data) return result # 更新菜单 @router.put('/update', summary='更新菜单') @permission_required("sys:menu:update") @check_demo async def update(request: Request, data: MenuForm): result = await menu.update_menu(request, data) return result # 删除菜单 @router.delete('/delete/{id}', summary='删除菜单') @permission_required("sys:menu:delete") @check_demo async def delete(request: Request, id): result = await menu.delete_menu(id) return result