export interface TrainingPlanPageQuery { planName?: string trainingType?: string trainingLevel?: string status?: string trainer?: string startTime?: string endTime?: string page?: number pageSize?: number } export interface TrainingPlanReq { planName: string trainingType: string trainingLevel: string trainingContent?: string trainer?: string trainingLocation?: string startTime: string endTime: string status?: string maxParticipants?: number requirements?: string remark?: string } export interface TrainingPlanResp { planId: string planName: string trainingType: string trainingLevel: string trainingContent?: string trainer?: string trainingLocation?: string startTime: string endTime: string status: string maxParticipants?: number currentParticipants?: number requirements?: string remark?: string createTime: string createBy: string materials?: TrainingMaterialResp[] records?: TrainingRecordResp[] } export interface TrainingMaterialResp { materialId: string materialName: string materialType: string materialPath?: string materialSize?: number description?: string sortOrder?: number } export interface TrainingRecordResp { recordId: string userId: string userName: string deptId?: string deptName?: string attendanceStatus: string signInTime?: string signOutTime?: string score?: number feedback?: string certificateId?: string }