File size: 819 Bytes
72aa38d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from fastapi import APIRouter, Depends, HTTPException, status
from app.services.menu_service import MenuService
from app.models.menu import MenuItem, Category
from typing import List

router = APIRouter()

@router.get("/items", response_model=List[MenuItem])
async def get_menu_items(
    menu_service: MenuService = Depends(MenuService)
):
    return await menu_service.get_menu_items()

@router.post("/items", response_model=MenuItem, status_code=status.HTTP_201_CREATED)
async def create_menu_item(
    item: MenuItem,
    menu_service: MenuService = Depends(MenuService)
):
    return await menu_service.create_menu_item(item)

@router.get("/categories", response_model=List[Category])
async def get_categories(
    menu_service: MenuService = Depends(MenuService)
):
    return await menu_service.get_categories()