"use client"; /** * 教师详情对话框(ARCHITECTURE.md §7.3 详情页 / §9.4 / §10 P5) * * 数据契约: * - 详情数据复用列表中的 AdminTeacher 对象(@contract-pending:单查契约待补齐) * * 关联:ARCHITECTURE.md §5.5 / §7.3 / §9.4 / §10 P5 / §11.3 */ import { School } from "lucide-react"; import { useTranslations } from "next-intl"; import type { AdminTeacher } from "@/lib/api/admin-p5"; import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, } from "@/shared/components/ui/dialog"; import { DetailField, DetailSection } from "@/shared/components/page-templates"; import { formatTeacherCount, formatTeacherStatus, teacherStatusToBadgeClass, } from "@/features/admin/teachers/transformations"; /** * 教师详情对话框。受控组件,由父组件管理 open 状态与选中数据。 */ export function TeacherDetailDialog({ open, onOpenChange, teacher, }: { open: boolean; onOpenChange: (open: boolean) => void; teacher: AdminTeacher | null; }): React.ReactElement { const t = useTranslations("admin.teachers.detail"); return ( ); } /** * 详情内容区(基本信息 + 教学信息)。 */ function TeacherDetailBody({ teacher, }: { teacher: AdminTeacher; }): React.ReactElement { const t = useTranslations("admin.teachers.detail"); return (