From fce2f32ffbd41a6da9d1e6f5d213bfb15e60a620 Mon Sep 17 00:00:00 2001 From: Felipe Cardoso Date: Sun, 16 Mar 2025 21:13:48 +0100 Subject: [PATCH] fix guest rsvp additional guests --- backend/app/api/routes/events/guests.py | 2 +- backend/app/crud/guest.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/backend/app/api/routes/events/guests.py b/backend/app/api/routes/events/guests.py index fddada0..fb48cad 100644 --- a/backend/app/api/routes/events/guests.py +++ b/backend/app/api/routes/events/guests.py @@ -87,7 +87,7 @@ def process_guest_rsvp( # Update guest status to match RSVP guest_status = map_rsvp_status_to_guest_status(rsvp_data.status) - guest = guest_crud.update_status(db, guest_id=guest_id, status=guest_status) + guest = guest_crud.update_status(db, guest_id=guest_id, status=guest_status, number_of_guests=rsvp_data.number_of_guests or 0) # Both operations succeeded, commit the transaction db.commit() diff --git a/backend/app/crud/guest.py b/backend/app/crud/guest.py index 6ace207..c3a4b83 100644 --- a/backend/app/crud/guest.py +++ b/backend/app/crud/guest.py @@ -31,10 +31,11 @@ class CRUDGuest(CRUDBase[Guest, GuestCreate, GuestUpdate]): def get_by_invitation_code(self, db: Session, invitation_code: str) -> Optional[Guest]: return db.query(Guest).filter(Guest.invitation_code == invitation_code).first() - def update_status(self, db: Session, guest_id: uuid.UUID, status: GuestStatus): + def update_status(self, db: Session, guest_id: uuid.UUID, status: GuestStatus, number_of_guests: int = 0): guest = self.get(db, guest_id) if guest: guest.status = status + guest.actual_additional_guests = number_of_guests guest.response_date = datetime.now(timezone.utc) db.commit() db.refresh(guest)