Spaces:
Sleeping
Sleeping
Update src/services/interview_history_router.py
Browse files
src/services/interview_history_router.py
CHANGED
|
@@ -42,12 +42,18 @@ async def create_interview_history(history: InterviewHistoryCreate, db: AsyncIOM
|
|
| 42 |
|
| 43 |
@router.get("/interview-histories/{history_id}", response_model=InterviewHistoryResponse)
|
| 44 |
async def get_interview_history_by_id(history_id: str, db: AsyncIOMotorDatabase = Depends(lambda: mongo_db)):
|
| 45 |
-
|
|
|
|
|
|
|
|
|
|
| 46 |
if history is None:
|
| 47 |
raise HTTPException(status_code=404, detail="Interview history not found")
|
| 48 |
return history
|
| 49 |
|
| 50 |
@router.put("/interview-histories/{history_id}", response_model=InterviewHistoryResponse)
|
| 51 |
async def update_interview_history(history_id: str, history: InterviewHistoryUpdate, db: AsyncIOMotorDatabase = Depends(lambda: mongo_db)):
|
| 52 |
-
|
|
|
|
|
|
|
|
|
|
| 53 |
return await get_interview_history_by_id(history_id, db)
|
|
|
|
| 42 |
|
| 43 |
@router.get("/interview-histories/{history_id}", response_model=InterviewHistoryResponse)
|
| 44 |
async def get_interview_history_by_id(history_id: str, db: AsyncIOMotorDatabase = Depends(lambda: mongo_db)):
|
| 45 |
+
if not ObjectId.is_valid(history_id):
|
| 46 |
+
raise HTTPException(status_code=400, detail="Invalid ID format")
|
| 47 |
+
|
| 48 |
+
history = await InterviewHistoryModel.get(db, InterviewHistoryModel.collection_name, {"_id": ObjectId(history_id)})
|
| 49 |
if history is None:
|
| 50 |
raise HTTPException(status_code=404, detail="Interview history not found")
|
| 51 |
return history
|
| 52 |
|
| 53 |
@router.put("/interview-histories/{history_id}", response_model=InterviewHistoryResponse)
|
| 54 |
async def update_interview_history(history_id: str, history: InterviewHistoryUpdate, db: AsyncIOMotorDatabase = Depends(lambda: mongo_db)):
|
| 55 |
+
if not ObjectId.is_valid(history_id):
|
| 56 |
+
raise HTTPException(status_code=400, detail="Invalid ID format")
|
| 57 |
+
|
| 58 |
+
await InterviewHistoryModel.update(db, InterviewHistoryModel.collection_name, {"_id": ObjectId(history_id)}, history.model_dump(exclude_unset=True))
|
| 59 |
return await get_interview_history_by_id(history_id, db)
|