From ae88193c5153aa04226a8307e1294a9c75d312bb Mon Sep 17 00:00:00 2001 From: zhaoqingang <zhaoqg0118@163.com> Date: 星期三, 18 十二月 2024 18:30:03 +0800 Subject: [PATCH] add dialog sss --- app/service/dialog.py | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) diff --git a/app/service/dialog.py b/app/service/dialog.py index fa678ce..1bf4e4a 100644 --- a/app/service/dialog.py +++ b/app/service/dialog.py @@ -2,6 +2,7 @@ from sqlalchemy import or_ +from app.config.const import Dialog_STATSU_DELETE from app.models import KnowledgeModel, GroupModel, DialogModel, ConversationModel, group_dialog_table, LabelWorkerModel, \ LabelModel from app.models.user_model import UserModel @@ -12,7 +13,7 @@ user = db.query(UserModel).filter(UserModel.id == user_id).first() if user is None: return {"rows": []} - query = db.query(DialogModel) + query = db.query(DialogModel).filter(DialogModel.status != Dialog_STATSU_DELETE) id_list = [] if label: id_list = [i.object_id for i in db.query(LabelWorkerModel).filter(LabelWorkerModel.label_id==label).all()] @@ -90,9 +91,9 @@ -async def create_dialog_service(db, dialog_id, dialog_name, description, icon, dialog_type, user_id): +async def create_dialog_service(db, dialog_id, dialog_name, description, icon, dialog_type, mode, user_id): try: - dialog_model = DialogModel(id=dialog_id,name=dialog_name, description=description,icon=icon, dialog_type=dialog_type, tenant_id=user_id, agent_id=dialog_id) + dialog_model = DialogModel(id=dialog_id,name=dialog_name, description=description,icon=icon, dialog_type=dialog_type, tenant_id=user_id, mode=mode,update_date=datetime.now(),create_date=datetime.now()) db.add(dialog_model) db.commit() db.refresh(dialog_model) @@ -105,7 +106,29 @@ async def update_dialog_status_service(db, dialog_id, status): try: - DialogModel(id=dialog_id).update({"status":status}) + db.query(DialogModel).filter_by(id=dialog_id).update({"status":status, "update_date": datetime.now()}) + db.commit() + except Exception as e: + logger.error(e) + db.rollback() + return False + return True + + +async def delete_dialog_service(db, dialog_id): + try: + db.query(DialogModel).filter_by(id=dialog_id).update({"status":Dialog_STATSU_DELETE, "update_date": datetime.now()}) + db.commit() + except Exception as e: + logger.error(e) + db.rollback() + return False + return True + + +async def update_dialog_icon_service(db, dialog_id, icon): + try: + db.query(DialogModel).filter_by(id=dialog_id).update({"icon":icon, "update_date": datetime.now()}) db.commit() except Exception as e: logger.error(e) -- Gitblit v1.8.0