Spaces:
Sleeping
Sleeping
Update main.py
Browse files
main.py
CHANGED
@@ -17,11 +17,16 @@ def get_db_connection(engine=Depends(get_engine)):
|
|
17 |
yield connection
|
18 |
|
19 |
def load_job_offer(connection):
|
20 |
-
|
|
|
|
|
|
|
|
|
|
|
21 |
resultats = connection.execute(query_offre).fetchall()
|
22 |
offres = []
|
23 |
for row in resultats:
|
24 |
-
entreprise, ville, poste, contrat, description_poste, publication, lien, id = row
|
25 |
offres.append({
|
26 |
"entreprise": entreprise,
|
27 |
"ville": ville,
|
@@ -30,15 +35,25 @@ def load_job_offer(connection):
|
|
30 |
"description_poste": description_poste,
|
31 |
"publication": publication,
|
32 |
"lien": lien,
|
33 |
-
"id": id
|
|
|
|
|
|
|
|
|
|
|
34 |
})
|
35 |
return offres
|
36 |
|
37 |
def get_job_offer_by_id(connection, offre_id: str):
|
38 |
-
query = text('
|
|
|
|
|
|
|
|
|
|
|
39 |
result = connection.execute(query, {"id": offre_id}).fetchone()
|
40 |
if result:
|
41 |
-
entreprise, ville, poste, contrat, description_poste, publication, lien, id = result
|
42 |
return {
|
43 |
"entreprise": entreprise,
|
44 |
"ville": ville,
|
@@ -47,7 +62,12 @@ def get_job_offer_by_id(connection, offre_id: str):
|
|
47 |
"description_poste": description_poste,
|
48 |
"publication": publication,
|
49 |
"lien": lien,
|
50 |
-
"id": id
|
|
|
|
|
|
|
|
|
|
|
51 |
}
|
52 |
return None
|
53 |
|
@@ -55,7 +75,7 @@ app = FastAPI()
|
|
55 |
|
56 |
@app.get("/")
|
57 |
def root():
|
58 |
-
return {"status": "API en marche", "message": "Bienvenue sur l
|
59 |
|
60 |
@app.get("/offre-emploi")
|
61 |
async def read_job_offer(connection = Depends(get_db_connection)):
|
@@ -74,4 +94,4 @@ async def read_job_offer_by_id(offre_id: str, connection = Depends(get_db_connec
|
|
74 |
if __name__ == "__main__":
|
75 |
import uvicorn
|
76 |
port = int(os.environ.get("PORT", 7860))
|
77 |
-
uvicorn.run(app, host="0.0.0.0", port=port)
|
|
|
17 |
yield connection
|
18 |
|
19 |
def load_job_offer(connection):
|
20 |
+
# MISE À JOUR : Requête avec toutes les nouvelles colonnes
|
21 |
+
query_offre = text('''
|
22 |
+
SELECT entreprise, ville, poste, contrat, description_poste, publication, lien, id,
|
23 |
+
description_nettoyee, mission, profil_recherche, competences, pole
|
24 |
+
FROM "job_offers"
|
25 |
+
''')
|
26 |
resultats = connection.execute(query_offre).fetchall()
|
27 |
offres = []
|
28 |
for row in resultats:
|
29 |
+
entreprise, ville, poste, contrat, description_poste, publication, lien, id, description_nettoyee, mission, profil_recherche, competences, pole = row
|
30 |
offres.append({
|
31 |
"entreprise": entreprise,
|
32 |
"ville": ville,
|
|
|
35 |
"description_poste": description_poste,
|
36 |
"publication": publication,
|
37 |
"lien": lien,
|
38 |
+
"id": id,
|
39 |
+
"description_nettoyee": description_nettoyee,
|
40 |
+
"mission": mission,
|
41 |
+
"profil_recherche": profil_recherche,
|
42 |
+
"competences": competences,
|
43 |
+
"pole": pole
|
44 |
})
|
45 |
return offres
|
46 |
|
47 |
def get_job_offer_by_id(connection, offre_id: str):
|
48 |
+
query = text('''
|
49 |
+
SELECT entreprise, ville, poste, contrat, description_poste, publication, lien, id,
|
50 |
+
description_nettoyee, mission, profil_recherche, competences, pole
|
51 |
+
FROM "job_offers"
|
52 |
+
WHERE id = :id
|
53 |
+
''')
|
54 |
result = connection.execute(query, {"id": offre_id}).fetchone()
|
55 |
if result:
|
56 |
+
entreprise, ville, poste, contrat, description_poste, publication, lien, id, description_nettoyee, mission, profil_recherche, competences, pole = result
|
57 |
return {
|
58 |
"entreprise": entreprise,
|
59 |
"ville": ville,
|
|
|
62 |
"description_poste": description_poste,
|
63 |
"publication": publication,
|
64 |
"lien": lien,
|
65 |
+
"id": id,
|
66 |
+
"description_nettoyee": description_nettoyee,
|
67 |
+
"mission": mission,
|
68 |
+
"profil_recherche": profil_recherche,
|
69 |
+
"competences": competences,
|
70 |
+
"pole": pole
|
71 |
}
|
72 |
return None
|
73 |
|
|
|
75 |
|
76 |
@app.get("/")
|
77 |
def root():
|
78 |
+
return {"status": "API en marche", "message": "Bienvenue sur l'API d'offres d'emploi !"}
|
79 |
|
80 |
@app.get("/offre-emploi")
|
81 |
async def read_job_offer(connection = Depends(get_db_connection)):
|
|
|
94 |
if __name__ == "__main__":
|
95 |
import uvicorn
|
96 |
port = int(os.environ.get("PORT", 7860))
|
97 |
+
uvicorn.run(app, host="0.0.0.0", port=port)
|