from fastapi import FastAPI import psycopg2 import json from psycopg2 import sql import pandas as pd from DbConnection import DbConnection from UploadFile import UploadOpenFile from pydantic import BaseModel app = FastAPI() class FileDetails(BaseModel): filecontents: str filename: str @app.get("/") async def root(): return {"greeting":"Hello world"} #https://vaibhav84-resumeapi.hf.space/docs db_params = DbConnection.GetDbConnection() def parse_csv(df): res = df.to_json(orient="records") parsed = json.loads(res) return parsed @app.get("/ProfileMatch") def ProfileMatchResults(): dbQuery = "select * from profilematch" conn = psycopg2.connect(**db_params) df = pd.read_sql_query(dbQuery, conn) return parse_csv(df) @app.post("/UploadFile/") def UploadFileDetails(file_data: FileDetails): return UploadOpenFile.uploadFile(file_data.filecontents,file_data.filename,db_params)