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