@@ -292,6 +292,7 @@ def resolve_gym(self, info):
292292class CapacityReminder (SQLAlchemyObjectType ):
293293 class Meta :
294294 model = CapacityReminderModel
295+ exclude_fields = ("fcm_token" ,)
295296
296297
297298# MARK: - Query
@@ -324,6 +325,15 @@ class Query(graphene.ObjectType):
324325 user_id = graphene .Int (required = True ),
325326 description = "Get all friends for a user."
326327 )
328+ get_capacity_reminder_by_id = graphene .Field (
329+ CapacityReminder ,
330+ id = graphene .Int (required = True ),
331+ description = "Get a specific capacity reminder by its ID."
332+ )
333+ get_all_capacity_reminders = graphene .List (
334+ CapacityReminder ,
335+ description = "Get all capacity reminders."
336+ )
327337
328338 def resolve_get_all_gyms (self , info ):
329339 query = Gym .get_query (info )
@@ -466,6 +476,20 @@ def resolve_get_user_friends(self, info, user_id):
466476
467477 # Query for all friends at once
468478 return User .get_query (info ).filter (UserModel .id .in_ (friend_ids )).all ()
479+
480+ @jwt_required ()
481+ def resolve_get_capacity_reminder_by_id (self , info , id ):
482+ reminder = CapacityReminder .get_query (info ).filter (CapacityReminderModel .id == id ).first ()
483+
484+ if not reminder :
485+ raise GraphQLError ("Capacity reminder with the given ID does not exist." )
486+
487+ return reminder
488+
489+ @jwt_required ()
490+ def resolve_get_all_capacity_reminders (self , info ):
491+ query = CapacityReminder .get_query (info )
492+ return query .all ()
469493
470494
471495# MARK: - Mutation
0 commit comments