From c425b6988f6254fe7e6cf7015c2d1a9fdf52ad96 Mon Sep 17 00:00:00 2001 From: Cliff Hill Date: Tue, 26 Aug 2025 09:24:43 -0400 Subject: [PATCH] Adding some more type hints. Signed-off-by: Cliff Hill --- backend/src/backend/routers/bookings.py | 11 ++++++----- backend/src/backend/routers/invitees.py | 12 +++++++++--- backend/src/backend/routers/rooms.py | 11 ++++++----- backend/src/backend/routers/users.py | 6 ++++-- 4 files changed, 25 insertions(+), 15 deletions(-) diff --git a/backend/src/backend/routers/bookings.py b/backend/src/backend/routers/bookings.py index b32afdd1..d4e81f97 100644 --- a/backend/src/backend/routers/bookings.py +++ b/backend/src/backend/routers/bookings.py @@ -14,6 +14,7 @@ from backend.models import Booking from backend.schemas.bookings import BookingCreate from backend.schemas.bookings import BookingResponse from backend.schemas.bookings import BookingUpdate +from backend.services.bookings import BookingList from backend.services.bookings import delete_booking from backend.services.bookings import get_booking from backend.services.bookings import get_bookings_for_room @@ -27,7 +28,7 @@ router = APIRouter(prefix="/bookings", tags=["bookings"]) @router.get("/room/{room_id}", response_model=List[BookingResponse]) -async def read_bookings_for_room(room_id: int, session: DBSession): +async def read_bookings_for_room(room_id: int, session: DBSession) -> BookingList: """Endpoint to retrieve all bookings for a specific room.""" logger.debug(f"Received request to fetch bookings for room_id: {room_id}") try: @@ -55,7 +56,7 @@ async def read_bookings_for_room(room_id: int, session: DBSession): @router.get("/{booking_id}", response_model=BookingResponse) -async def read_booking(booking_id: int, session: DBSession): +async def read_booking(booking_id: int, session: DBSession) -> Booking: """Endpoint to retrieve a booking by ID.""" logger.debug(f"Received request to fetch booking with id: {booking_id}") try: @@ -87,7 +88,7 @@ async def read_booking(booking_id: int, session: DBSession): @router.post("/", response_model=BookingResponse, status_code=status.HTTP_201_CREATED) -async def create_booking(booking: BookingCreate, session: DBSession): +async def create_booking(booking: BookingCreate, session: DBSession) -> Booking: """Endpoint to create a new booking.""" logger.debug("Received request to create a new booking") try: @@ -112,7 +113,7 @@ async def create_booking(booking: BookingCreate, session: DBSession): @router.put("/{booking_id}", response_model=BookingResponse) async def update_existing_booking( booking_id: int, booking_update: BookingUpdate, session: DBSession -): +) -> Booking: """Endpoint to update an existing booking.""" logger.debug(f"Received request to update booking with id: {booking_id}") try: @@ -145,7 +146,7 @@ async def update_existing_booking( @router.delete("/{booking_id}", status_code=status.HTTP_204_NO_CONTENT) -async def delete_existing_booking(booking_id: int, session: DBSession): +async def delete_existing_booking(booking_id: int, session: DBSession) -> None: """Endpoint to delete a booking.""" logger.debug(f"Received request to delete booking with id: {booking_id}") try: diff --git a/backend/src/backend/routers/invitees.py b/backend/src/backend/routers/invitees.py index e1be999e..6c8fe3af 100644 --- a/backend/src/backend/routers/invitees.py +++ b/backend/src/backend/routers/invitees.py @@ -10,12 +10,14 @@ from pydantic import EmailStr from sqlalchemy.exc import SQLAlchemyError from backend.dependencies.db import DBSession +from backend.models import Invitee from backend.schemas.invitees import InviteeCreate from backend.schemas.invitees import InviteeResponse from backend.schemas.users import UserResponse from backend.services.invitees import add_invitee_to_booking from backend.services.invitees import get_invitees_for_booking from backend.services.invitees import remove_invitee_from_booking +from backend.services.users import UserList logger = logging.getLogger(__name__) @@ -24,7 +26,7 @@ router = APIRouter(prefix="/invitees", tags=["invitees"]) @router.get("/booking/{booking_id}", response_model=List[UserResponse]) -async def read_invitees_for_booking(booking_id: int, session: DBSession): +async def read_invitees_for_booking(booking_id: int, session: DBSession) -> UserList: """Endpoint to retrieve all invitees for a specific booking.""" logger.debug(f"Received request to fetch invitees for booking_id: {booking_id}") try: @@ -56,7 +58,9 @@ async def read_invitees_for_booking(booking_id: int, session: DBSession): response_model=InviteeResponse, status_code=status.HTTP_201_CREATED, ) -async def add_invitee(booking_id: int, invitee: InviteeCreate, session: DBSession): +async def add_invitee( + booking_id: int, invitee: InviteeCreate, session: DBSession +) -> Invitee: """Endpoint to add an invitee to a booking.""" logger.debug(f"Received request to add invitee to booking_id: {booking_id}") try: @@ -89,7 +93,9 @@ async def add_invitee(booking_id: int, invitee: InviteeCreate, session: DBSessio @router.delete( "/booking/{booking_id}/user/{user_email}", status_code=status.HTTP_204_NO_CONTENT ) -async def remove_invitee(booking_id: int, user_email: EmailStr, session: DBSession): +async def remove_invitee( + booking_id: int, user_email: EmailStr, session: DBSession +) -> None: """Endpoint to remove an invitee from a booking.""" logger.debug( f"Received request to remove invitee with email {user_email} from" diff --git a/backend/src/backend/routers/rooms.py b/backend/src/backend/routers/rooms.py index afa034fa..3b8dd989 100644 --- a/backend/src/backend/routers/rooms.py +++ b/backend/src/backend/routers/rooms.py @@ -14,6 +14,7 @@ from backend.models import Room from backend.schemas.rooms import RoomCreate from backend.schemas.rooms import RoomResponse from backend.schemas.rooms import RoomUpdate +from backend.services.rooms import RoomList from backend.services.rooms import delete_room from backend.services.rooms import get_room from backend.services.rooms import get_rooms @@ -27,7 +28,7 @@ router = APIRouter(prefix="/rooms", tags=["rooms"]) @router.get("/", response_model=List[RoomResponse]) -async def read_rooms(session: DBSession): +async def read_rooms(session: DBSession) -> RoomList: """Endpoint to retrieve all rooms.""" logger.debug("Received request to fetch all rooms") try: @@ -49,7 +50,7 @@ async def read_rooms(session: DBSession): @router.get("/{room_id}", response_model=RoomResponse) -async def read_room(room_id: int, session: DBSession): +async def read_room(room_id: int, session: DBSession) -> Room: """Endpoint to retrieve a room by ID.""" logger.debug(f"Received request to fetch room with id: {room_id}") try: @@ -79,7 +80,7 @@ async def read_room(room_id: int, session: DBSession): @router.post("/", response_model=RoomResponse, status_code=status.HTTP_201_CREATED) -async def create_room(room: RoomCreate, session: DBSession): +async def create_room(room: RoomCreate, session: DBSession) -> Room: """Endpoint to create a new room.""" logger.debug("Received request to create a new room") try: @@ -103,7 +104,7 @@ async def create_room(room: RoomCreate, session: DBSession): @router.put("/{room_id}", response_model=RoomResponse) async def update_existing_room( room_id: int, room_update: RoomUpdate, session: DBSession -): +) -> Room: """Endpoint to update an existing room.""" logger.debug(f"Received request to update room with id: {room_id}") try: @@ -133,7 +134,7 @@ async def update_existing_room( @router.delete("/{room_id}", status_code=status.HTTP_204_NO_CONTENT) -async def delete_existing_room(room_id: int, session: DBSession): +async def delete_existing_room(room_id: int, session: DBSession) -> None: """Endpoint to delete a room.""" logger.debug(f"Received request to delete room with id: {room_id}") try: diff --git a/backend/src/backend/routers/users.py b/backend/src/backend/routers/users.py index b49d1ba5..4be24eec 100644 --- a/backend/src/backend/routers/users.py +++ b/backend/src/backend/routers/users.py @@ -9,7 +9,9 @@ from sqlalchemy.exc import NoResultFound from sqlalchemy.exc import SQLAlchemyError from backend.dependencies.db import DBSession +from backend.models import User from backend.schemas.users import UserResponse +from backend.services.users import UserList from backend.services.users import get_user from backend.services.users import get_users @@ -20,7 +22,7 @@ router = APIRouter(prefix="/users", tags=["users"]) @router.get("/", response_model=list[UserResponse]) -async def read_users(session: DBSession): +async def read_users(session: DBSession) -> UserList: """Endpoint to retrieve all users.""" logger.debug("Received request to fetch all users") try: @@ -38,7 +40,7 @@ async def read_users(session: DBSession): @router.get("/{email}", response_model=UserResponse) -async def read_user(email: EmailStr, session: DBSession): +async def read_user(email: EmailStr, session: DBSession) -> User: """Endpoint to retrieve a user by email.""" logger.debug(f"Received request to fetch user with email: {email}") try: