feat: Update user controller

This commit is contained in:
wxy
2026-03-27 14:26:46 +08:00
parent d0ca5c8b27
commit 539999131c
3 changed files with 2 additions and 117 deletions

View File

@@ -147,64 +147,6 @@ def get_tenant_superusers(
return success(data=superusers_schema, msg=t("users.list.superusers_success"))
@router.get("/tenant/users", response_model=ApiResponse)
def get_tenant_users(
page: int = 1,
size: int = 20,
is_active: bool = None,
is_superuser: bool = None,
search: str = None,
db: Session = Depends(get_db),
current_user: User = Depends(get_current_user),
t: Callable = Depends(get_translator)
):
"""获取当前用户所在租户的用户列表(普通用户可访问)"""
api_logger.info(f"获取租户用户列表请求: tenant_id={current_user.tenant_id}, 操作者: {current_user.username}")
if not current_user.tenant_id:
raise BusinessException("用户没有租户信息", code=BizCode.TENANT_NOT_FOUND)
from app.services.tenant_service import TenantService
tenant_service = TenantService(db)
skip = (page - 1) * size
users = tenant_service.get_tenant_users(
tenant_id=current_user.tenant_id,
skip=skip,
limit=size,
is_active=is_active,
is_superuser=is_superuser,
search=search
)
total = tenant_service.count_tenant_users(
tenant_id=current_user.tenant_id,
is_active=is_active,
is_superuser=is_superuser,
search=search
)
users_schema = [user_schema.User.model_validate(u) for u in users]
for u_schema in users_schema:
user = users[[s.id for s in users_schema].index(u_schema.id)]
if user.external_source:
from premium.sso.models import SSOSource
source = db.query(SSOSource).filter(SSOSource.source_code == user.external_source).first()
u_schema.permissions = source.permissions if source and source.permissions else []
else:
u_schema.permissions = ["all"]
return success(
data={
"users": users_schema,
"total": total,
"page": page,
"size": size,
},
msg=t("users.list.get_success")
)
@router.get("/{user_id}", response_model=ApiResponse)
def get_user_info_by_id(
user_id: uuid.UUID,