Rakshitjan commited on
Commit
b0530ca
·
verified ·
1 Parent(s): 297aba5

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +6 -8
main.py CHANGED
@@ -52,7 +52,6 @@
52
  # except Exception as e:
53
  # raise HTTPException(status_code=500, detail=f"Error merging roadmaps: {e}")
54
 
55
-
56
  from fastapi import FastAPI, HTTPException
57
  from pydantic import BaseModel
58
  from typing import List
@@ -67,7 +66,11 @@ class MergeRoadmapRequest(BaseModel):
67
  class MergeRoadmapResponse(BaseModel):
68
  merged_roadmap: str
69
 
70
- def merge_roadmaps(regular_roadmap, test_roadmaps):
 
 
 
 
71
  # Helper to convert a roadmap's schedule into a dictionary indexed by dates
72
  def schedule_to_dict(schedule):
73
  return {day["date"]: day for day in schedule}
@@ -101,15 +104,10 @@ def merge_roadmaps(regular_roadmap, test_roadmaps):
101
  @app.post("/merge-roadmaps", response_model=MergeRoadmapResponse)
102
  def merge_roadmaps_endpoint(request: MergeRoadmapRequest):
103
  try:
104
- # Parse input strings into Python dictionaries
105
- regular_roadmap = json.loads(request.regular_roadmap)
106
- test_roadmaps = [json.loads(roadmap) for roadmap in request.test_roadmaps]
107
-
108
  # Merge the roadmaps
109
- merged_roadmap = merge_roadmaps(regular_roadmap, test_roadmaps)
110
 
111
  # Return the merged roadmap as a JSON string
112
  return MergeRoadmapResponse(merged_roadmap=json.dumps(merged_roadmap))
113
  except Exception as e:
114
  raise HTTPException(status_code=400, detail=f"Error merging roadmaps: {str(e)}")
115
-
 
52
  # except Exception as e:
53
  # raise HTTPException(status_code=500, detail=f"Error merging roadmaps: {e}")
54
 
 
55
  from fastapi import FastAPI, HTTPException
56
  from pydantic import BaseModel
57
  from typing import List
 
66
  class MergeRoadmapResponse(BaseModel):
67
  merged_roadmap: str
68
 
69
+ def merge_roadmaps(regular_roadmap_str, test_roadmaps_str_list):
70
+ # Convert input strings to JSON
71
+ regular_roadmap = json.loads(regular_roadmap_str)
72
+ test_roadmaps = [json.loads(roadmap) for roadmap in test_roadmaps_str_list]
73
+
74
  # Helper to convert a roadmap's schedule into a dictionary indexed by dates
75
  def schedule_to_dict(schedule):
76
  return {day["date"]: day for day in schedule}
 
104
  @app.post("/merge-roadmaps", response_model=MergeRoadmapResponse)
105
  def merge_roadmaps_endpoint(request: MergeRoadmapRequest):
106
  try:
 
 
 
 
107
  # Merge the roadmaps
108
+ merged_roadmap = merge_roadmaps(request.regular_roadmap, request.test_roadmaps)
109
 
110
  # Return the merged roadmap as a JSON string
111
  return MergeRoadmapResponse(merged_roadmap=json.dumps(merged_roadmap))
112
  except Exception as e:
113
  raise HTTPException(status_code=400, detail=f"Error merging roadmaps: {str(e)}")