diff --git a/backend/database/dbConnection.py b/backend/database/dbConnection.py index d82c28fd..a828bc97 100644 --- a/backend/database/dbConnection.py +++ b/backend/database/dbConnection.py @@ -14,4 +14,10 @@ def dbAppDataConnect(): user="root", passwd="C@rtoon1995", database="app_data" + ) +def dbAllConnect(): + return mysql.connector.connect( + host="mysqldb", + user="root", + passwd="C@rtoon1995", ) \ No newline at end of file diff --git a/backend/main.py b/backend/main.py index 95078cff..8fec1c16 100644 --- a/backend/main.py +++ b/backend/main.py @@ -11,6 +11,7 @@ import routers.fileStorage as fileStorage import routers.medicine as medicine import routers.business_user as business_user import routers.business as business +import routers.access_request as access_request from fastapi.middleware.cors import CORSMiddleware from fastapi.middleware import Middleware @@ -76,6 +77,7 @@ app.include_router(patients.router) app.include_router(patients_files.router) app.include_router(patients_notes.router) app.include_router(patients_queue.router) +app.include_router(access_request.router) app.include_router(users.router) app.include_router(fileStorage.router) app.include_router(medicine.router) diff --git a/backend/routers/access_request.py b/backend/routers/access_request.py new file mode 100644 index 00000000..41605c76 --- /dev/null +++ b/backend/routers/access_request.py @@ -0,0 +1,72 @@ +import mysql.connector +from fastapi import APIRouter, HTTPException +from pydantic import BaseModel +#from ..database import dbConnection +import database +from datetime import date +#SuperToken Auth from front end +from supertokens_python.recipe.session.framework.fastapi import verify_session +from supertokens_python.recipe.session import SessionContainer +from fastapi import Depends + +router = APIRouter() + +# class fileDeleteRequest(BaseModel): +# idpatient_files: int + +# class queueInsertRequest(BaseModel): +# business_id: str +# app_id: str +# date: str +# time: str +# access: str + +@router.get("/access/requests/{app_id}", tags=["Access Requests"]) +async def read_all_access_request_by_app_id(app_id: str): #, session: SessionContainer = Depends(verify_session()) + db = database.dbConnection.dbPatientManagerConnect() + cursor = db.cursor() + query = "SELECT patient_queue.idpatient_queue, patient_queue.business_id, " + query += "patient_queue.app_id, patient_queue.date_time, patient_queue.access, " + query += "business.Name, business.type, business.logo_path " + query += "from patient_manager.patient_queue " + query += "inner join app_data.business " + query += "on patient_queue.business_id = business.business_id " + query += "where app_id = %s ORDER BY date_time ASC" + cursor.execute(query, (app_id,)) + items = [ + { + "idpatient_queue": item[0], + "business_id": item[1], + "app_id": item[2], + "date_time": item[3], + "access": item[4], + "Name": item[5], + "type": item[6], + "logo_path": item[7], + } + for item in cursor.fetchall() + ] + cursor.close() + db.close() + return items + +# # Get List of all files +# @router.get("/files/patients/", tags="patients_files") +# async def read_all_files(session: SessionContainer = Depends(verify_session())): +# db = database.dbConnection.dbPatientManagerConnect() +# cursor = db.cursor() +# query = "SELECT * FROM patient_files" +# cursor.execute(query) +# items = [ +# { +# "idpatient_files": item[0], +# "file_path": item[1], +# "file_name": item[2], +# "patient_id": item[3], +# "insert_date": item[4], +# } +# for item in cursor.fetchall() +# ] +# cursor.close() +# db.close() +# return items