ABAO77 commited on
Commit
8fc7430
·
verified ·
1 Parent(s): 6d6ae78

Upload 140 files

Browse files
src/.DS_Store CHANGED
Binary files a/src/.DS_Store and b/src/.DS_Store differ
 
src/apis/.DS_Store CHANGED
Binary files a/src/apis/.DS_Store and b/src/apis/.DS_Store differ
 
src/apis/controllers/.DS_Store CHANGED
Binary files a/src/apis/controllers/.DS_Store and b/src/apis/controllers/.DS_Store differ
 
src/apis/controllers/__pycache__/chat_controller.cpython-311.pyc CHANGED
Binary files a/src/apis/controllers/__pycache__/chat_controller.cpython-311.pyc and b/src/apis/controllers/__pycache__/chat_controller.cpython-311.pyc differ
 
src/apis/controllers/__pycache__/scheduling_controller.cpython-311.pyc CHANGED
Binary files a/src/apis/controllers/__pycache__/scheduling_controller.cpython-311.pyc and b/src/apis/controllers/__pycache__/scheduling_controller.cpython-311.pyc differ
 
src/apis/controllers/auth_controller.py CHANGED
@@ -9,6 +9,7 @@ jwt_provider = JWTProvider()
9
 
10
 
11
  async def login_control(token):
 
12
  if not token:
13
  raise HTTPException(
14
  status_code=status.HTTP_401_UNAUTHORIZED,
@@ -25,6 +26,7 @@ async def login_control(token):
25
  existing_user = await UserCRUD.read_one({"email": user.email})
26
  if not existing_user:
27
  user_id = await UserCRUD.create(user.model_dump())
 
28
  logger.info(f"User {user.email} created.")
29
  else:
30
  user_id = existing_user["_id"]
@@ -35,4 +37,4 @@ async def login_control(token):
35
  user_data.pop("created_at", None)
36
  user_data.pop("updated_at", None)
37
  user_data.pop("expire_at", None)
38
- return token, user_data
 
9
 
10
 
11
  async def login_control(token):
12
+ first_login = False
13
  if not token:
14
  raise HTTPException(
15
  status_code=status.HTTP_401_UNAUTHORIZED,
 
26
  existing_user = await UserCRUD.read_one({"email": user.email})
27
  if not existing_user:
28
  user_id = await UserCRUD.create(user.model_dump())
29
+ first_login = True
30
  logger.info(f"User {user.email} created.")
31
  else:
32
  user_id = existing_user["_id"]
 
37
  user_data.pop("created_at", None)
38
  user_data.pop("updated_at", None)
39
  user_data.pop("expire_at", None)
40
+ return token, user_data, first_login
src/apis/controllers/chat_controller.py CHANGED
@@ -52,20 +52,20 @@ async def save_history(user_id, human_message, ai_message, intent):
52
  {"session_id": user_id}, {"intent": intent}
53
  )
54
  logger.info("History updated")
55
- history_cache = await get_key_redis(f"chat_history_{user_id}")
56
- if history_cache is not None:
57
- history_cache = eval(history_cache)
58
- history_cache["message"] = (
59
- history_cache["message"] + messages_add_to_history_dict
60
- )
61
- history_cache["intent"] = intent
62
- await set_key_redis(
63
- f"chat_history_{user_id}",
64
- str(history_cache),
65
- )
66
- return {"message": "History updated"}
67
- await set_key_redis(f"chat_history_{user_id}", str(messages_add_to_history_cache))
68
- return {"message": "History created"}
69
 
70
 
71
  async def chat_streaming_function(user, data: Chat, background_tasks: BackgroundTasks):
@@ -223,6 +223,7 @@ async def get_history_function(session_id):
223
  i.model_dump(include=["type", "content"]) for i in history_messages
224
  ]
225
  intent = await get_intent_function(session_id)
 
226
  return {"message": history_messages, "intent": intent}
227
  history_messages = eval(history_messages)
228
  return history_messages
 
52
  {"session_id": user_id}, {"intent": intent}
53
  )
54
  logger.info("History updated")
55
+ # history_cache = await get_key_redis(f"chat_history_{user_id}")
56
+ # if history_cache is not None:
57
+ # history_cache = eval(history_cache)
58
+ # history_cache["message"] = (
59
+ # history_cache["message"] + messages_add_to_history_dict
60
+ # )
61
+ # history_cache["intent"] = intent
62
+ # await set_key_redis(
63
+ # f"chat_history_{user_id}",
64
+ # str(history_cache),
65
+ # )
66
+ # return {"message": "History updated"}
67
+ # await set_key_redis(f"chat_history_{user_id}", str(messages_add_to_history_cache))
68
+ # return {"message": "History created"}
69
 
70
 
71
  async def chat_streaming_function(user, data: Chat, background_tasks: BackgroundTasks):
 
223
  i.model_dump(include=["type", "content"]) for i in history_messages
224
  ]
225
  intent = await get_intent_function(session_id)
226
+ logger.info(F"INTENT {intent}")
227
  return {"message": history_messages, "intent": intent}
228
  history_messages = eval(history_messages)
229
  return history_messages
src/apis/routes/__pycache__/scheduling_router.cpython-311.pyc CHANGED
Binary files a/src/apis/routes/__pycache__/scheduling_router.cpython-311.pyc and b/src/apis/routes/__pycache__/scheduling_router.cpython-311.pyc differ
 
src/apis/routes/auth_route.py CHANGED
@@ -17,9 +17,14 @@ user_dependency = Annotated[User, Depends(get_current_user)]
17
  )
18
  async def login(credential: Credential):
19
  try:
20
- token, user_data = await login_control(credential.credential)
21
  return JSONResponse(
22
- content={"token": token, "user_data": user_data}, status_code=200
 
 
 
 
 
23
  )
24
  except Exception as e:
25
  return JSONResponse(content={"message": str(e)}, status_code=500)
 
17
  )
18
  async def login(credential: Credential):
19
  try:
20
+ token, user_data, first_login = await login_control(credential.credential)
21
  return JSONResponse(
22
+ content={
23
+ "token": token,
24
+ "user_data": user_data,
25
+ "first_login": first_login,
26
+ },
27
+ status_code=200,
28
  )
29
  except Exception as e:
30
  return JSONResponse(content={"message": str(e)}, status_code=500)
src/apis/routes/post_router.py CHANGED
@@ -47,7 +47,7 @@ async def create_post(body: BodyPost, user: user_dependency):
47
  return JSONResponse(content=result, status_code=201)
48
 
49
 
50
- @router.post("/get/{post_id}", status_code=status.HTTP_200_OK)
51
  async def get_post(post_id: str, user: user_dependency):
52
  if user is None:
53
  return JSONResponse(content={"message": "User not found"}, status_code=404)
 
47
  return JSONResponse(content=result, status_code=201)
48
 
49
 
50
+ @router.get("/get/{post_id}", status_code=status.HTTP_200_OK)
51
  async def get_post(post_id: str, user: user_dependency):
52
  if user is None:
53
  return JSONResponse(content={"message": "User not found"}, status_code=404)
src/apis/routes/scheduling_router.py CHANGED
@@ -40,6 +40,7 @@ class BodyActivity(BaseDocument):
40
 
41
  @router.post("/create", status_code=status.HTTP_201_CREATED)
42
  async def create_activity(body: BodyActivity, user: user_dependency):
 
43
  if user is None:
44
  return JSONResponse(content={"message": "User not found"}, status_code=404)
45
  user_id = user["id"]
@@ -53,7 +54,6 @@ async def create_activity(body: BodyActivity, user: user_dependency):
53
  end_time,
54
  user_id,
55
  )
56
- logger.info(f"RESULT: {result}")
57
  if result["status"] == "error":
58
  return JSONResponse(content=result, status_code=404)
59
  else:
@@ -61,6 +61,30 @@ async def create_activity(body: BodyActivity, user: user_dependency):
61
 
62
 
63
  @router.get("/search", status_code=status.HTTP_200_OK)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
64
  async def search_activities(user: user_dependency):
65
  if user is None:
66
  return JSONResponse(content={"message": "User not found"}, status_code=404)
 
40
 
41
  @router.post("/create", status_code=status.HTTP_201_CREATED)
42
  async def create_activity(body: BodyActivity, user: user_dependency):
43
+ print(body)
44
  if user is None:
45
  return JSONResponse(content={"message": "User not found"}, status_code=404)
46
  user_id = user["id"]
 
54
  end_time,
55
  user_id,
56
  )
 
57
  if result["status"] == "error":
58
  return JSONResponse(content=result, status_code=404)
59
  else:
 
61
 
62
 
63
  @router.get("/search", status_code=status.HTTP_200_OK)
64
+ async def search_activities(start_time: str, end_time: str, user: user_dependency):
65
+ if user is None:
66
+ return JSONResponse(content={"message": "User not found"}, status_code=404)
67
+ user_id = user["id"]
68
+
69
+ if start_time and end_time:
70
+ start_time = convert_string_date_to_iso(start_time)
71
+ end_time = convert_string_date_to_iso(end_time)
72
+
73
+ result = await search_activities_controller(start_time, end_time, user_id)
74
+ if result["status"] == "error":
75
+ return JSONResponse(content={"message": result["message"]}, status_code=404)
76
+ else:
77
+ for activity in result["message"]:
78
+ activity["start_time"] = datetime_to_iso_string(activity["start_time"])
79
+ activity["end_time"] = datetime_to_iso_string(activity["end_time"])
80
+ activity["created_at"] = datetime_to_iso_string(activity["created_at"])
81
+ activity["updated_at"] = datetime_to_iso_string(activity["updated_at"])
82
+ activity["id"] = activity.pop("_id")
83
+ del activity["user_id"]
84
+ return JSONResponse(content=result, status_code=200)
85
+
86
+
87
+ @router.get("/search_all", status_code=status.HTTP_200_OK)
88
  async def search_activities(user: user_dependency):
89
  if user is None:
90
  return JSONResponse(content={"message": "User not found"}, status_code=404)