From abb91124a4372b0efe5ab1b7aa25859c635d30eb Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期四, 10 四月 2025 13:49:37 +0800
Subject: [PATCH] merge

---
 app/service/session.py |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/app/service/session.py b/app/service/session.py
index 79c1d3d..16ef53d 100644
--- a/app/service/session.py
+++ b/app/service/session.py
@@ -1,3 +1,4 @@
+import json
 from typing import Type
 
 from sqlalchemy.orm import Session
@@ -11,8 +12,10 @@
     def __init__(self, db: Session):
         self.db = db
 
-    def create_session(self, session_id: str, name: str, agent_id: str, agent_type: AgentType, user_id: int) -> Type[
+
+    def create_session(self, session_id: str, name: str, agent_id: str, agent_type: AgentType, user_id: int, message: dict = None, workflow_type: int = 0) -> Type[
                                                                                                                     SessionModel] | SessionModel:
+
         """
         鍒涘缓涓�涓柊鐨勪細璇濊褰曘��
 
@@ -25,9 +28,13 @@
         杩斿洖:
             SessionModel: 鏂板垱寤虹殑浼氳瘽妯″瀷瀹炰緥锛屽鏋滀細璇滻D宸插瓨鍦ㄥ垯杩斿洖None銆�
         """
+        if not message:
+            message = {"role": "user", "content": name}
         existing_session = self.get_session_by_id(session_id)
         if existing_session:
-            existing_session.add_message({"role": "user", "content": name})
+            print("update success")
+            # existing_session.add_message({"role": "user", "content": name})
+            existing_session.add_message(message)
             existing_session.update_date = current_time()
             self.db.commit()
             self.db.refresh(existing_session)
@@ -38,8 +45,9 @@
             name=name[0:50],
             agent_id=agent_id,
             agent_type=agent_type,
-            tenant_id = user_id,
-            message=[{"role": "user", "content": name}]
+            tenant_id=user_id,
+            workflow=workflow_type,
+            message = json.dumps([message])
         )
         self.db.add(new_session)
         self.db.commit()
@@ -57,7 +65,7 @@
             SessionModel: 鏌ユ壘鍒扮殑浼氳瘽妯″瀷瀹炰緥锛屽鏋滄湭鎵惧埌鍒欒繑鍥濶one銆�
         """
         session = self.db.query(SessionModel).filter_by(id=session_id).first()
-        if session.message is None:
+        if  session and session.message is None:
             session.message = '[]'
         return session
 
@@ -87,6 +95,7 @@
                 self.db.commit()
                 self.db.refresh(session)
             except Exception as e:
+                logger.error(e)
                 self.db.rollback()
         return session
 

--
Gitblit v1.8.0