from typing import List from fastapi import APIRouter, Depends, status from sqlalchemy.orm import Session from core.database import get_db from schemas.book import BookCreate, BookSchema from helpers.book_helpers import create_book, get_all_books router = APIRouter() @router.post("/books", status_code=status.HTTP_201_CREATED, response_model=BookSchema) async def create_new_book( book: BookCreate, db: Session = Depends(get_db) ): new_book = create_book(db=db, book_data=book) return new_book @router.get("/books", status_code=200, response_model=List[BookSchema]) async def get_books( db: Session = Depends(get_db) ): books = get_all_books(db) return books