mirror of
https://gh-proxy.org/https://github.com/klinsmaya/SQLBot.git
synced 2026-11-08 01:06:59 +08:00
perf: Resource sort by name
This commit is contained in:
@@ -78,7 +78,7 @@ async def query(
|
||||
AiModelDetail.default_model)
|
||||
if keyword is not None:
|
||||
statement = statement.where(AiModelDetail.name.like(f"%{keyword}%"))
|
||||
statement = statement.order_by(AiModelDetail.create_time.asc())
|
||||
statement = statement.order_by(AiModelDetail.default_model.desc(), AiModelDetail.name, AiModelDetail.create_time)
|
||||
items = session.exec(statement).all()
|
||||
return items
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ async def validator(session: SessionDep, id: int, virtual: Optional[int] = Query
|
||||
|
||||
@router.get("", response_model=list[AssistantModel])
|
||||
async def query(session: SessionDep):
|
||||
list_result = session.exec(select(AssistantModel).order_by(AssistantModel.create_time.asc())).all()
|
||||
list_result = session.exec(select(AssistantModel).order_by(AssistantModel.name, AssistantModel.create_time)).all()
|
||||
return list_result
|
||||
|
||||
@router.post("")
|
||||
|
||||
@@ -59,7 +59,7 @@ async def pager(
|
||||
select(UserModel, UserWsModel.oid.label('ws_oid'))
|
||||
.join(UserWsModel, UserModel.id == UserWsModel.uid, isouter=True)
|
||||
.where(UserModel.id.in_(uid_list))
|
||||
.order_by(UserModel.create_time)
|
||||
.order_by(UserModel.account, UserModel.create_time)
|
||||
)
|
||||
user_workspaces = session.exec(stmt).all()
|
||||
merged = defaultdict(list)
|
||||
|
||||
@@ -32,7 +32,7 @@ async def option_pager(
|
||||
stmt = select(UserModel.id, UserModel.account, UserModel.name).where(
|
||||
~exists().where(UserWsModel.uid == UserModel.id, UserWsModel.oid == oid),
|
||||
UserModel.id != 1
|
||||
).order_by(UserModel.create_time.asc())
|
||||
).order_by(UserModel.account, UserModel.create_time)
|
||||
|
||||
if keyword:
|
||||
keyword_pattern = f"%{keyword}%"
|
||||
@@ -97,7 +97,7 @@ async def pager(
|
||||
).where(
|
||||
UserWsModel.oid == workspace_id,
|
||||
UserModel.id != 1
|
||||
).order_by(UserModel.create_time.asc())
|
||||
).order_by(UserModel.account, UserModel.create_time)
|
||||
|
||||
if keyword:
|
||||
keyword_pattern = f"%{keyword}%"
|
||||
|
||||
@@ -46,13 +46,13 @@ def authenticate(*, session: Session, account: str, password: str) -> BaseUserDT
|
||||
|
||||
async def user_ws_options(session: Session, uid: int, trans: Optional[I18n] = None) -> list[UserWs]:
|
||||
if uid == 1:
|
||||
stmt = select(WorkspaceModel.id, WorkspaceModel.name).order_by(WorkspaceModel.create_time)
|
||||
stmt = select(WorkspaceModel.id, WorkspaceModel.name).order_by(WorkspaceModel.name, WorkspaceModel.create_time)
|
||||
else:
|
||||
stmt = select(WorkspaceModel.id, WorkspaceModel.name).join(
|
||||
UserWsModel, UserWsModel.oid == WorkspaceModel.id
|
||||
).where(
|
||||
UserWsModel.uid == uid,
|
||||
).order_by(WorkspaceModel.create_time)
|
||||
).order_by(WorkspaceModel.name, WorkspaceModel.create_time)
|
||||
result = session.exec(stmt)
|
||||
if not trans:
|
||||
return result.all()
|
||||
|
||||
Reference in New Issue
Block a user