export interface StudyRecord { id: number; knowledgeName: string; rate: number; questionNum: number; } export interface TeachClass { classId: number; schoolId: number; year: number; name: string; } export interface StudentStat { id: number; avatar?: string; name: string; questionNum: number; dateNum: number; rate: number; } export interface StudentExamRecord { id: number; name: string; score: number; status: number; } export interface StudentVideoRecord { id: number; name: string; date: string; duration: number; } export interface StudentVideoStat { id: number; avatar?: string; name: string; videoCount: number; duration: number; } /** * 学习计划 */ export interface StudyPlan { id: number; beginTime: string; questionCnt: number; studentId: number; videoTime: number; status: number; } export interface Subject { subjectId: number; subjectName: string; } export interface Knowledge { id: number; name: string; status: number; questionCount: number; children: Knowledge[]; } export type KnowledgeNode = Pick & { isExpanded: boolean; isLeaf: boolean; actualHeight: number; children: KnowledgeNode[]; } export interface QuestionState { isDone?: boolean; isMark?: boolean; isNotKnow?: boolean; isFavorite?: boolean; } /** * 试卷 */ export interface ExamPaper { id: number; paperName: string; paperType: string; questions: ApiQuestion[]; score?: number; subjectId: number; year: number; } export interface ApiQuestion extends QuestionState { id: number; title: string; typeId: number; options: string[]; answer: (string | number)[]; subQuestions: ApiQuestion[]; } export interface ExamPaperSubmit { id: number; paperName: string; paperType: string; questions: Question[]; score?: number; subjectId: number; year: number; duration?: number; } export interface QuestionOption { id: number; no: string | number; // A, B, C, D name: string; isAnswer: boolean; } export interface Question extends QuestionState { id: number; title: string; typeId: number; options: QuestionOption[]; answer: (string | number)[]; subQuestions: Question[]; } export interface QuestionOption { id: number; no: string | number; // A, B, C, D name: string; isAnswer: boolean; } export function QuestionOption(arg0: (option: string, index: number) => { name: string; no: string; id: number; isAnswer: false; }, as: any, QuestionOption: any): QuestionOption[] { throw new Error("Function not implemented."); }