From 39bade10a3d7bc89fa5f37c9a0130ac7d5051719 Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期四, 13 二月 2025 13:54:09 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/rag-gateway into develop_2.1
---
app/service/dialog.py | 34 +++++++++++++++++-----------------
1 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/app/service/dialog.py b/app/service/dialog.py
index 26d1e19..81316ff 100644
--- a/app/service/dialog.py
+++ b/app/service/dialog.py
@@ -24,14 +24,15 @@
else:
query = query.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()]
+ if user.permission != "admin":
+ dia_list = [j.id for i in user.groups for j in i.dialogs]
+ query = query.filter(or_(DialogModel.tenant_id == user_id, DialogModel.id.in_(dia_list)))
+ # else:
if label:
id_list = [i.object_id for i in db.query(LabelWorkerModel).filter(LabelWorkerModel.label_id == label).all()]
- if user.permission != "admin":
- dia_list = [j.id for i in user.groups for j in i.dialogs if not label or j.id in id_list]
- query = query.filter(or_(DialogModel.tenant_id == user_id, DialogModel.id.in_(dia_list)))
- else:
- if label:
- query = query.filter(or_(DialogModel.id.in_(id_list)))
+ query = query.filter(DialogModel.id.in_(id_list))
if keyword:
query = query.filter(DialogModel.name.like('%{}%'.format(keyword)))
@@ -120,17 +121,18 @@
chat = ChatBaseApply()
token = await get_chat_token(db, dialog_id)
if not token:
- workflow = await get_app_token(db, workflow_server)
- if workflow:
+ access_token = await get_app_token(db, workflow_server)
+ # print(workflow)
+ if access_token:
url = settings.dify_base_url + DF_CHAT_API_KEY.format(dialog_id)
- param = await chat.chat_get(url, {}, await chat.get_headers(workflow.access_token))
+ param = await chat.chat_get(url, {}, await chat.get_headers(access_token))
if param and param.get("data"):
token = param.get("data", [{}])[0].get("token")
token_id = param.get("data", [{}])[0].get("id")
await add_chat_token(db, {"id":token_id, "app_id": dialog_id, "type":"app", "token": token})
# dialog.parameters = json.dumps(param)
else:
- param = await chat.chat_post(url, {}, await chat.get_headers(workflow.access_token))
+ param = await chat.chat_post(url, {}, await chat.get_headers(access_token))
if param:
token = param.get("token")
token_id = param.get("id")
@@ -178,16 +180,14 @@
if user is None:
return {"rows": []}
query = db.query(DialogModel).filter(DialogModel.status != Dialog_STATSU_DELETE)
- id_list = []
+ if user.permission != "admin":
+ dia_list = [j.id for i in user.groups for j in i.dialogs]
+ query = query.filter(or_(DialogModel.tenant_id == user_id, DialogModel.id.in_(dia_list)))
+
if label:
id_list = set(
[i.object_id for i in db.query(LabelWorkerModel).filter(LabelWorkerModel.label_id.in_(label)).all()])
- if user.permission != "admin":
- dia_list = [j.id for i in user.groups for j in i.dialogs if not label or j.id in id_list]
- query = query.filter(or_(DialogModel.tenant_id == user_id, DialogModel.id.in_(dia_list)))
- else:
- if label:
- query = query.filter(or_(DialogModel.id.in_(id_list)))
+ query = query.filter(DialogModel.id.in_(id_list))
if keyword:
query = query.filter(DialogModel.name.like('%{}%'.format(keyword)))
--
Gitblit v1.8.0