/** 课程划分部门 和 必修 */ interface CurDepInfo { dep_id: number is_required: 0 | 1 } interface Curriculum { id: number; title: string; charge: number; /** 课时 */ class_hour: number; created_at: string; is_required: number; is_show: number; /** 描述 */ short_desc: string; /** 课程封面 */ thumb: string; /** 时间 */ course_duration: number data: CurDepInfo[] [key: string]: any } /** 课程信息 */ interface Deparments { id: number /** 公司id */ company_id: number name: string parent_chain: string parent_id: number sort: number users: unknown } /** 学习记录 */ interface Hour { id: number sort: number /** 课程视频名称 */ title: string type: string /** 视频id */ rid: number /** 视频时长 */ duration: number /** 课程id */ course_id: number; /** 章节id */ chapter_id: number /** 0未完成 1已完成 */ courseHourRecordsFinish: 0 | 1 } type Hours = Record /** 章节 */ interface Chapters { id: number course_id: number name: string sort: number } /** 视频播放记录 */ interface LearnHourRecord { course_id: number /** 完成时间 */ finished_duration: number /** 课时id */ hour_id: number id: number /** 是否完成 */ is_finished: number real_duration: number total_duration: number user_id: 17 } interface LearnHourRecords extends Hour { courseHourRecords: LearnHourRecord } /** 课程学习情况 */ interface LearnRecord { id: number course_id: number finished_count: number hour_count: number is_finished: number progress: number user_id: number } /** 学习记录 */ interface HourCacheParam { courseId: number /** 视频学习时长 */ duration: number; /** 课时结束学习时间 */ end_date: number; hour_id: number; /** 课时开始学习时间 */ start_date: number; user_id: number; unique_ident: number }