fix: 移除普通用户使用统计页面的提供商信息

普通用户不应该看到后端使用的提供商信息,此前前端筛选框和后端 API
都泄露了这些数据。

- 前端:为提供商筛选下拉菜单添加 isAdmin 条件
- 后端:移除 summary_by_provider 和 records 中的 provider 字段
- 补充:添加遗漏的 first_byte_time_ms 字段
This commit is contained in:
LewisPen
2026-01-23 15:57:53 +08:00
parent 3963e424f8
commit 39f64fc0f9
2 changed files with 3 additions and 3 deletions

View File

@@ -90,8 +90,9 @@
</SelectContent>
</Select>
<!-- 提供商筛选 -->
<!-- 提供商筛选仅管理员可见 -->
<Select
v-if="isAdmin"
v-model:open="filterProviderSelectOpen"
:model-value="filterProvider"
@update:model-value="$emit('update:filterProvider', $event)"

View File

@@ -857,7 +857,6 @@ class GetUsageAdapter(AuthenticatedApiAdapter):
"quota_usd": user.quota_usd,
"used_usd": user.used_usd,
"summary_by_model": summary_by_model,
"summary_by_provider": summary_by_provider,
# 分页信息
"pagination": {
"total": total_records,
@@ -868,7 +867,6 @@ class GetUsageAdapter(AuthenticatedApiAdapter):
"records": [
{
"id": r.id,
"provider": r.provider_name,
"model": r.model,
"target_model": r.target_model, # 映射后的目标模型名
"api_format": r.api_format,
@@ -877,6 +875,7 @@ class GetUsageAdapter(AuthenticatedApiAdapter):
"total_tokens": r.total_tokens,
"cost": r.total_cost_usd,
"response_time_ms": r.response_time_ms,
"first_byte_time_ms": r.first_byte_time_ms,
"is_stream": r.is_stream,
"status": r.status, # 请求状态: pending, streaming, completed, failed
"created_at": r.created_at.isoformat(),