From 2f84e3cc4bff981590ab37bd95da64bd72c1f2e0 Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期一, 16 十二月 2024 09:40:00 +0800
Subject: [PATCH] 12-16
---
app/service/service_token.py | 2
app/service/dialog.py | 2
app/service/group.py | 28 +++++++-------
app/models/group_model.py | 14 +++---
app/api/group.py | 44 +++++++++++-----------
5 files changed, 45 insertions(+), 45 deletions(-)
diff --git a/app/api/group.py b/app/api/group.py
index 5498eb1..e1fda78 100644
--- a/app/api/group.py
+++ b/app/api/group.py
@@ -15,49 +15,49 @@
@group_router.get("/list", response_model=Response)
async def user_group_list(current:int, pageSize:int, keyword="", current_user: UserModel = Depends(get_current_user),
db=Depends(get_db)):
- return Response(code=200, msg="", data=await group_list(db, pageSize, current, keyword, current_user.permission, current_user.id))
+ return Response(code=200, msg="", data=await group_list(db, pageSize, current, keyword))
@group_router.post("/add_group", response_model=Response)
async def add_group(group: GroupData, current_user: UserModel = Depends(get_current_user), db=Depends(get_db)):
- if not group.group_name:
+ if not group.groupName:
return Response(code=400, msg="The group_name cannot be empty!")
- db_group = db.query(GroupModel).filter(GroupModel.group_name == group.group_name).first()
+ db_group = db.query(GroupModel).filter(GroupModel.group_name == group.groupName).first()
if db_group:
- return Response(code=200, msg="group already created")
- is_create = await create_group(db, group.group_name, group.group_description, current_user.id)
+ return Response(code=400, msg="group already created")
+ is_create = await create_group(db, group.groupName, group.description, current_user.id)
if not is_create:
return Response(code=200, msg="group create failure", data={})
- return Response(code=200, msg="group create successfully", data={"group_name": group.group_name})
+ return Response(code=200, msg="group create successfully", data={"group_name": group.groupName})
@group_router.put("/edit_group", response_model=Response)
async def edit_group(group: GroupData, current_user: UserModel = Depends(get_current_user), db=Depends(get_db)):
- if not group.group_name:
+ if not group.groupName:
return Response(code=400, msg="The group_name cannot be empty!")
- db_group = db.query(GroupModel).filter(GroupModel.group_name == group.group_name).first()
+ db_group = db.query(GroupModel).filter(GroupModel.group_name == group.groupName).first()
if db_group and db_group.id != group.id:
- return Response(code=200, msg="group_name already created")
+ return Response(code=400, msg="group_name already created")
is_edit = await edit_group_data(db, group.id,
- {"group_name": group.group_name, "group_description": group.group_description,
+ {"group_name": group.groupName, "group_description": group.description,
"updated_at": datetime.now()})
if not is_edit:
return Response(code=200, msg="group edit failure", data={})
- return Response(code=200, msg="group edit successfully", data={"group_name": group.group_name})
+ return Response(code=200, msg="group edit successfully", data={"group_name": group.groupName})
@group_router.put("/edit_group_status", response_model=Response)
async def edit_group_status(group: GroupData, current_user: UserModel = Depends(get_current_user), db=Depends(get_db)):
- if group.group_status not in ["0", "1"]:
- return Response(code=400, msg="The status cannot be {}!".format(group.group_status))
+ if group.status not in ["0", "1"]:
+ return Response(code=400, msg="The status cannot be {}!".format(group.status))
db_group = db.query(GroupModel).filter(GroupModel.id == group.id).first()
if not db_group:
- return Response(code=200, msg="group does not exist")
+ return Response(code=400, msg="group does not exist")
is_edit = await edit_group_data(db, group.id,
- {"status": group.group_status,"updated_at": datetime.now()})
+ {"status": group.status,"updated_at": datetime.now()})
if not is_edit:
return Response(code=200, msg="group status edit failure", data={})
- return Response(code=200, msg="group status edit successfully", data={"group_name": group.group_name})
+ return Response(code=200, msg="group status edit successfully", data={"group_name": group.groupName})
@group_router.delete("/delete_group/{groupId}", response_model=Response)
@@ -73,12 +73,12 @@
return Response(code=200, msg="group delete successfully", data={})
-@group_router.post("/group_users", response_model=Response)
-async def group_users(group: GroupData, current_user: UserModel = Depends(get_current_user), db=Depends(get_db)):
- db_group = db.query(GroupModel).filter(GroupModel.id == group.id).first()
+@group_router.get("/group_users", response_model=Response)
+async def group_users(groupId:int, current_user: UserModel = Depends(get_current_user), db=Depends(get_db)):
+ db_group = db.query(GroupModel).filter(GroupModel.id == groupId).first()
if not db_group:
return Response(code=200, msg="group does not exist", data={})
- return Response(code=200, msg="success", data=await get_group_users(db, group.id))
+ return Response(code=200, msg="success", data=await get_group_users(db, groupId))
@group_router.post("/save_group_user", response_model=Response)
@@ -87,7 +87,7 @@
db_group = db.query(GroupModel).filter(GroupModel.id == group_user.id).first()
if not db_group:
return Response(code=200, msg="group does not exist")
- is_success = await save_user_to_group(db, current_user.id, group_user.id, group_user.user_list)
+ is_success = await save_user_to_group(db, current_user.id, group_user.id, group_user.userList)
if not is_success:
return Response(code=500, msg="save user to group failure", data={})
return Response(code=200, msg="success", data={})
@@ -99,7 +99,7 @@
db_group = db.query(GroupModel).filter(GroupModel.id == group_resource.id).first()
if not db_group:
return Response(code=200, msg="group does not exist")
- is_success = await save_group_resource(db, current_user.id, group_resource.id, group_resource.agents, group_resource.dialogs, group_resource.knowledges)
+ is_success = await save_group_resource(db, current_user.id, group_resource.id, group_resource.llms, group_resource.dialogs, group_resource.knowledges)
if not is_success:
return Response(code=500, msg="save user to group failure", data={})
return Response(code=200, msg="success", data={})
diff --git a/app/models/group_model.py b/app/models/group_model.py
index 529db57..58d4991 100644
--- a/app/models/group_model.py
+++ b/app/models/group_model.py
@@ -96,8 +96,8 @@
if len(self.dialogs.all()) > 0:
json['dialogs'] = [dialog.to_json() for dialog in self.dialogs]
- if len(self.agents.all()) > 0:
- json['agents'] = [agent.to_json() for agent in self.agents]
+ # if len(self.agents.all()) > 0:
+ # json['agents'] = [agent.to_json() for agent in self.agents]
if len(self.llms.all()) > 0:
json['llms'] = [llm.to_json() for llm in self.llms]
@@ -120,18 +120,18 @@
class GroupData(BaseModel):
id: Optional[int] = None
- group_name: Optional[str] = ""
- group_description: Optional[str] = ""
- group_status: Optional[str] = ""
+ groupName: Optional[str] = ""
+ description: Optional[str] = ""
+ status: Optional[str] = ""
class GroupUsers(BaseModel):
id: int
- user_list: list
+ userList: list
class GroupResource(BaseModel):
id: int
- agents: list
+ llms: list
dialogs: list
knowledges: list
diff --git a/app/service/dialog.py b/app/service/dialog.py
index 8a1ccbc..7073aa5 100644
--- a/app/service/dialog.py
+++ b/app/service/dialog.py
@@ -105,7 +105,7 @@
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})
db.commit()
except Exception as e:
logger.error(e)
diff --git a/app/service/group.py b/app/service/group.py
index 0c6eb77..ab8368e 100644
--- a/app/service/group.py
+++ b/app/service/group.py
@@ -7,17 +7,18 @@
from Log import logger
-async def group_list(db, page_size: int, page_index: int, keyword: str, role_key:str, user_id):
- logger.info("-------------------------group_list----------------------------------")
- query = db.query(GroupModel).filter(GroupModel.creator==user_id)
+async def group_list(db, page_size: int, page_index: int, keyword: str):
+ # logger.info("-------------------------group_list----------------------------------")
+ query = db.query(GroupModel)
# if role_key != "admin":
# query.filter(GroupModel.creator==user_id)
if keyword:
query = query.filter(GroupModel.group_name.like('%{}%'.format(keyword)))
- items = query.order_by(GroupModel.id.desc()).limit(page_size).offset(
- (page_index - 1) * page_size).all()
+ total = query.count()
+ print(total)
+ items = query.order_by(GroupModel.id.desc()).limit(page_size).offset((page_index - 1) * page_size)
- return {"total": query.count(), "items": [item.to_json() for item in items]}
+ return {"total":total , "items": [item.to_dict() for item in items.all()]}
async def create_group(db, group_name: str, group_description: str, user_id):
@@ -58,14 +59,13 @@
async def get_group_users(db, group_id):
not_group_user = []
in_group_user = []
- user_list = [u.id for i in
- db.query(GroupModel).filter(GroupModel.id.__eq__(group_id)).all() for u in i.users]
- for u in db.query(UserModel.id, UserModel.username).filter(UserModel.permission!="admin").order_by(UserModel.id.desc()).all():
+ user_list = [u.id for u in db.query(GroupModel).filter(GroupModel.id.__eq__(group_id)).first().users]
+ for u in db.query(UserModel.id, UserModel.username,UserModel.permission).filter(UserModel.permission!="admin").order_by(UserModel.id.desc()).all():
if u.id in user_list:
- in_group_user.append({"user_id": u.id, "user_name": u.username})
+ in_group_user.append({"userId": u.id, "userName": u.username})
else:
- not_group_user.append({"user_id": u.id, "user_name": u.username})
- return {"in_group": in_group_user, "not_in_group": not_group_user}
+ not_group_user.append({"userId": u.id, "userName": u.username})
+ return {"inGroup": in_group_user, "notInGroup": not_group_user}
async def save_user_to_group(db, user_id, group_id, user_list):
@@ -112,10 +112,10 @@
return False
return True
-async def save_group_resource(db, user_id, group_id, agents, dialogs, knowledges):
+async def save_group_resource(db, user_id, group_id, llms, dialogs, knowledges):
try:
group = db.query(GroupModel).filter(GroupModel.id.__eq__(group_id)).first()
- group.agents = [db.get(CanvasModel, user) for user in agents]
+ group.llms = [db.get(CommonLlmModel, user) for user in llms]
group.dialogs = [db.get(DialogModel, user) for user in dialogs]
group.knowledges = [db.get(KnowledgeModel, user) for user in knowledges]
db.commit()
diff --git a/app/service/service_token.py b/app/service/service_token.py
index 7a2a695..0b031cb 100644
--- a/app/service/service_token.py
+++ b/app/service/service_token.py
@@ -103,7 +103,7 @@
logger.error("娉ㄥ唽鐢ㄦ埛鑾峰彇token澶辫触锛�")
return False
user_list = db.query(UserAppModel).filter(UserAppModel.app_type==RAGFLOW).all()
- user = db.query(UserAppModel).filter(UserAppModel.userFlag==sync_user.id, UserAppModel.app_type == RAGFLOW).first()
+ user = db.query(UserAppModel).filter(UserAppModel.user_id==sync_user.id, UserAppModel.app_type == RAGFLOW).first()
if not user:
logger.error("娉ㄥ唽鐢ㄦ埛鑾峰彇淇℃伅澶辫触锛�")
return False
--
Gitblit v1.8.0