2022-10-04 10:19:26 +00:00
|
|
|
from fastapi import APIRouter
|
|
|
|
|
2023-06-14 11:52:28 +00:00
|
|
|
from core.middleware import LogRoute
|
2022-10-04 10:19:26 +00:00
|
|
|
from schemas import common as BaseSchema
|
|
|
|
from schemas import menu as MenuSchema
|
|
|
|
from service.menu import service as MenuService
|
|
|
|
|
2023-06-14 11:52:28 +00:00
|
|
|
router = APIRouter(prefix="/menu", tags=["菜单管理"], route_class=LogRoute)
|
2022-10-04 10:19:26 +00:00
|
|
|
|
|
|
|
Response = BaseSchema.Response
|
|
|
|
|
|
|
|
|
2023-03-11 15:59:51 +00:00
|
|
|
@router.post("", summary="菜单新增")
|
|
|
|
async def menu_add(data: MenuSchema.MenuIn) -> Response[MenuSchema.MenuRead]:
|
2022-10-04 10:19:26 +00:00
|
|
|
return await MenuService.create_item(data)
|
|
|
|
|
|
|
|
|
2023-03-11 15:59:51 +00:00
|
|
|
@router.get("", summary="菜单列表")
|
|
|
|
async def menu_arr() -> Response:
|
2022-10-04 10:19:26 +00:00
|
|
|
return await MenuService.get_items()
|
|
|
|
|
|
|
|
|
2023-03-11 15:59:51 +00:00
|
|
|
@router.delete("/{pk}", summary="菜单删除")
|
|
|
|
async def menu_del(pk: int) -> Response:
|
2022-10-04 10:19:26 +00:00
|
|
|
return await MenuService.delete_item(pk)
|
|
|
|
|
|
|
|
|
2023-03-11 15:59:51 +00:00
|
|
|
@router.put("/{pk}", summary="菜单更新")
|
|
|
|
async def menu_put(pk: int, data: MenuSchema.MenuIn) -> Response:
|
2022-10-04 10:19:26 +00:00
|
|
|
"""更新菜单"""
|
|
|
|
return await MenuService.update_item(pk, data)
|