"use client"; import { Activity, Building2, GraduationCap, Users } from "lucide-react"; import { useAdminDashboard } from "@/lib/api"; import { DashboardShell } from "@/shared/components/dashboard/dashboard-shell"; import { DashboardSection } from "@/shared/components/dashboard/dashboard-section"; import { StatCard } from "@/shared/components/ui/stat-card"; import { Card, CardContent } from "@/shared/components/ui/card"; /** * 管理员仪表盘(ARCHITECTURE.md §7.1 / §10 P1-2) * * 改接 data-ana 的 adminDashboard 真实聚合查询,替换原 * announcements 假契约 widget 查询。 * * 关联:ARCHITECTURE.md §5.5 / §10 P1-2 */ export default function AdminDashboardPage(): React.ReactElement { const { data, loading, error } = useAdminDashboard(); if (loading) { return ( {Array.from({ length: 4 }).map((_, i) => ( ))} ); } if (error || !data) { return ( 仪表盘数据加载失败,请稍后重试。 ); } return ( > } > {data.recent_warnings ? ( {data.recent_warnings.target_name ?? "--"} {data.recent_warnings.severity ?? "--"} 类型:{data.recent_warnings.warning_type ?? "--"} · 当前值{" "} {data.recent_warnings.current_value?.toFixed(1) ?? "--"} / 阈值{" "} {data.recent_warnings.threshold?.toFixed(1) ?? "--"} ) : ( 暂无预警 )} {data.ai_usage ? ( 总请求 {data.ai_usage.total_requests ?? "--"} 总 Token {data.ai_usage.total_tokens ?? "--"} 总费用(分) {data.ai_usage.total_cost_cents ?? "--"} ) : ( 暂无 AI 用量数据 )} ); }
类型:{data.recent_warnings.warning_type ?? "--"} · 当前值{" "} {data.recent_warnings.current_value?.toFixed(1) ?? "--"} / 阈值{" "} {data.recent_warnings.threshold?.toFixed(1) ?? "--"}
暂无预警
暂无 AI 用量数据