From 5f917671ad49be14314611f72daa8558a66a95ec Mon Sep 17 00:00:00 2001 From: Sujan Adhikari <109404840+Sujanadh@users.noreply.github.com> Date: Thu, 15 Feb 2024 18:19:42 +0545 Subject: [PATCH] feat: api returning details of unapproved org (#1218) Co-authored-by: sujanadh --- src/backend/app/organisations/organisation_crud.py | 10 ++++++++++ src/backend/app/organisations/organisation_routes.py | 12 ++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/backend/app/organisations/organisation_crud.py b/src/backend/app/organisations/organisation_crud.py index 3536b97457..46513a653c 100644 --- a/src/backend/app/organisations/organisation_crud.py +++ b/src/backend/app/organisations/organisation_crud.py @@ -328,3 +328,13 @@ async def approve_organisation(db, organisation): organisation.approved = True db.commit() return Response(status_code=HTTPStatus.OK) + + +async def get_unapproved_org_detail(db, org_id): + """Returns detail of an unapproved organisation. + + Args: + db: The database session. + org_id: ID of unapproved organisation. + """ + return db.query(db_models.DbOrganisation).filter_by(approved=False, id=org_id) diff --git a/src/backend/app/organisations/organisation_routes.py b/src/backend/app/organisations/organisation_routes.py index 1eb6f71e32..568ac3d259 100644 --- a/src/backend/app/organisations/organisation_routes.py +++ b/src/backend/app/organisations/organisation_routes.py @@ -60,6 +60,18 @@ async def list_unapproved_organisations( return await organisation_crud.get_unapproved_organisations(db) +@router.get( + "/unapproved/{org_id}", response_model=list[organisation_schemas.OrganisationOut] +) +async def unapproved_org_detail( + org_id: int, + db: Session = Depends(database.get_db), + current_user: AuthUser = Depends(super_admin), +): + """Get a detail of an unapproved organisations.""" + return await organisation_crud.get_unapproved_org_detail(db, org_id) + + @router.get("/{org_id}", response_model=organisation_schemas.OrganisationOut) async def get_organisation_detail( organisation: DbOrganisation = Depends(org_exists),