From e6c5e89f09637b8d9ebca6895d781663f12646d6 Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期二, 17 十二月 2024 16:43:55 +0800
Subject: [PATCH] dify 文档智能
---
app/service/user.py | 19 ++++++++++++++++---
1 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/app/service/user.py b/app/service/user.py
index 1ce7417..895f477 100644
--- a/app/service/user.py
+++ b/app/service/user.py
@@ -5,7 +5,7 @@
from app.api.dialog import dialog_list
from app.config.config import settings
from app.config.const import RAGFLOW, BISHENG, DIFY
-from app.models import RoleModel, GroupModel, AgentType, role_resource_table, DialogModel
+from app.models import RoleModel, GroupModel, AgentType, role_resource_table, DialogModel, OrganizationModel
from app.models.menu_model import WebMenuModel, MenuCapacityModel
from app.models.user_model import UserModel, UserAppModel
from Log import logger
@@ -245,6 +245,7 @@
for group in user.groups:
for dialog in group.dialogs:
dialog_list.append(dialog.id)
+ print(dialog_list)
menu_list = db.query(WebMenuModel.id, WebMenuModel.title, WebMenuModel.describe, WebMenuModel.icon, WebMenuModel.desc,WebMenuModel.rank,
WebMenuModel.img, MenuCapacityModel.capacity_id, MenuCapacityModel.capacity_type, MenuCapacityModel.chat_id.label("agentId")).outerjoin(
MenuCapacityModel, WebMenuModel.id == MenuCapacityModel.menu_id).outerjoin(
@@ -258,7 +259,7 @@
for m in menus:
if user.permission == "admin":
continue
- elif not m.capacity_type or m.capacity_type == 1 and m.capacity_id not in dialog_list:
+ elif m.capacity_id not in dialog_list:
break
else:
res.append({
@@ -343,4 +344,16 @@
user = db.query(UserModel).filter_by(id=user_id).first()
- return {"roles": [i.to_dict() for i in user.roles], "user": user.to_dict()}
\ No newline at end of file
+ return {"roles": [i.to_dict() for i in user.roles], "user": user.to_dict()}
+
+
+async def edit_user_dept(db, user_id, dept_list):
+ try:
+ user = db.query(UserModel).filter(UserModel.id == user_id).first()
+ user.organizations = [db.get(OrganizationModel, deptId) for deptId in dept_list]
+ db.commit()
+ except Exception as e:
+ logger.error(e)
+ db.rollback()
+ return False
+ return True
\ No newline at end of file
--
Gitblit v1.8.0