From 4eb8d55ec0a664678895132256c97cc63a80be2b Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期四, 21 十一月 2024 19:56:49 +0800
Subject: [PATCH] 写入记录问题

---
 app/service/session.py |   27 ++++++++++++++++++---------
 1 files changed, 18 insertions(+), 9 deletions(-)

diff --git a/app/service/session.py b/app/service/session.py
index b3b698f..dd60c26 100644
--- a/app/service/session.py
+++ b/app/service/session.py
@@ -1,5 +1,6 @@
 from sqlalchemy.orm import Session
 
+from Log import logger
 from app.models import AgentType
 from app.models.session_model import SessionModel
 
@@ -8,7 +9,7 @@
     def __init__(self, db: Session):
         self.db = db
 
-    def create_session(self, session_id: str, name: str, agent_id: str, agent_type: AgentType) -> SessionModel:
+    def create_session(self, session_id: str, name: str, agent_id: str, agent_type: AgentType, user_id: int) -> SessionModel:
         """
         鍒涘缓涓�涓柊鐨勪細璇濊褰曘��
 
@@ -23,13 +24,17 @@
         """
         existing_session = self.get_session_by_id(session_id)
         if existing_session:
-            return None  # 濡傛灉浼氳瘽ID宸插瓨鍦紝涓嶈繘琛屼换浣曟搷浣�
+            message=existing_session.message
+            message.append({"role": "user", "content": name})
+            self.update_session(session_id, message=message)
 
         new_session = SessionModel(
             id=session_id,
-            name=name,
+            name=name[0:200],
             agent_id=agent_id,
-            agent_type=agent_type
+            agent_type=agent_type,
+            tenant_id = user_id,
+            message=[{"role": "user", "content": name}]
         )
         self.db.add(new_session)
         self.db.commit()
@@ -59,12 +64,16 @@
         杩斿洖:
             SessionModel: 鏇存柊鍚庣殑浼氳瘽妯″瀷瀹炰緥銆�
         """
-        session = self.get_session_by_id(session_id)
+        logger.error("鏇存柊鏁版嵁---------------------------")
+        session = self.db.query(SessionModel).filter_by(id=session_id).first()
         if session:
-            for key, value in kwargs.items():
-                setattr(session, key, value)
-            self.db.commit()
-            self.db.refresh(session)
+            if "message" in kwargs:
+
+                message = session.message
+                message.append(kwargs["message"])
+                session = message
+                self.db.commit()
+                self.db.refresh(session)
         return session
 
     def delete_session(self, session_id: str) -> None:

--
Gitblit v1.8.0