mirror of
https://github.com/PlayEdu/frontend.git
synced 2025-06-08 02:54:30 +08:00
数据结构添加interface
This commit is contained in:
parent
9d12bf1c0d
commit
3c34f8356f
@ -13,18 +13,6 @@ type TabModel = {
|
|||||||
label: string;
|
label: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
type CourseModel = {
|
|
||||||
charge: number;
|
|
||||||
class_hour: number;
|
|
||||||
created_at: string;
|
|
||||||
id: number;
|
|
||||||
is_required: number;
|
|
||||||
is_show: number;
|
|
||||||
short_desc: string;
|
|
||||||
thumb: string;
|
|
||||||
title: string;
|
|
||||||
};
|
|
||||||
|
|
||||||
type AttachModel = {
|
type AttachModel = {
|
||||||
id: number;
|
id: number;
|
||||||
course_id: number;
|
course_id: number;
|
||||||
@ -39,17 +27,6 @@ type HoursModel = {
|
|||||||
[key: number]: HourModel[];
|
[key: number]: HourModel[];
|
||||||
};
|
};
|
||||||
|
|
||||||
type HourModel = {
|
|
||||||
chapter_id: number;
|
|
||||||
course_id: number;
|
|
||||||
duration: number;
|
|
||||||
id: number;
|
|
||||||
rid: number;
|
|
||||||
sort: number;
|
|
||||||
title: string;
|
|
||||||
type: string;
|
|
||||||
};
|
|
||||||
|
|
||||||
type ChapterModel = {
|
type ChapterModel = {
|
||||||
course_id: number;
|
course_id: number;
|
||||||
created_at: string;
|
created_at: string;
|
||||||
@ -60,34 +37,7 @@ type ChapterModel = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
type LearnHourRecordsModel = {
|
type LearnHourRecordsModel = {
|
||||||
[key: number]: HourRecordsModel;
|
[key: number]: HourRecordModel;
|
||||||
};
|
|
||||||
|
|
||||||
type HourRecordsModel = {
|
|
||||||
course_id: number;
|
|
||||||
created_at: string;
|
|
||||||
finished_at?: string;
|
|
||||||
finished_duration: number;
|
|
||||||
hour_id: number;
|
|
||||||
id: number;
|
|
||||||
is_finished: number;
|
|
||||||
real_duration: number;
|
|
||||||
total_duration: number;
|
|
||||||
updated_at: string;
|
|
||||||
user_id: number;
|
|
||||||
};
|
|
||||||
|
|
||||||
type LearnRecordModel = {
|
|
||||||
course_id: number;
|
|
||||||
created_at: string;
|
|
||||||
finished_at?: string;
|
|
||||||
finished_count: number;
|
|
||||||
hour_count: number;
|
|
||||||
id: number;
|
|
||||||
is_finished: number;
|
|
||||||
progress: number;
|
|
||||||
updated_at: string;
|
|
||||||
user_id: number;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const CoursePage = () => {
|
const CoursePage = () => {
|
||||||
@ -98,7 +48,9 @@ const CoursePage = () => {
|
|||||||
const [course, setCourse] = useState<CourseModel | null>(null);
|
const [course, setCourse] = useState<CourseModel | null>(null);
|
||||||
const [chapters, setChapters] = useState<ChapterModel[]>([]);
|
const [chapters, setChapters] = useState<ChapterModel[]>([]);
|
||||||
const [hours, setHours] = useState<HoursModel>({});
|
const [hours, setHours] = useState<HoursModel>({});
|
||||||
const [learnRecord, setLearnRecord] = useState<LearnRecordModel | null>(null);
|
const [learnRecord, setLearnRecord] = useState<CourseRecordModel | null>(
|
||||||
|
null
|
||||||
|
);
|
||||||
const [learnHourRecord, setLearnHourRecord] = useState<LearnHourRecordsModel>(
|
const [learnHourRecord, setLearnHourRecord] = useState<LearnHourRecordsModel>(
|
||||||
{}
|
{}
|
||||||
);
|
);
|
||||||
|
@ -8,43 +8,6 @@ import { message } from "antd";
|
|||||||
|
|
||||||
declare const window: any;
|
declare const window: any;
|
||||||
|
|
||||||
type HourModel = {
|
|
||||||
chapter_id: number;
|
|
||||||
course_id: number;
|
|
||||||
duration: number;
|
|
||||||
id: number;
|
|
||||||
rid: number;
|
|
||||||
sort: number;
|
|
||||||
title: string;
|
|
||||||
type: string;
|
|
||||||
};
|
|
||||||
|
|
||||||
type CourseModel = {
|
|
||||||
charge: number;
|
|
||||||
class_hour: number;
|
|
||||||
created_at: string;
|
|
||||||
id: number;
|
|
||||||
is_required: number;
|
|
||||||
is_show: number;
|
|
||||||
short_desc: string;
|
|
||||||
thumb: string;
|
|
||||||
title: string;
|
|
||||||
};
|
|
||||||
|
|
||||||
type UserHourRecordModel = {
|
|
||||||
course_id: number;
|
|
||||||
created_at: string;
|
|
||||||
finished_at?: string;
|
|
||||||
finished_duration: number;
|
|
||||||
hour_id: number;
|
|
||||||
id: number;
|
|
||||||
is_finished: number;
|
|
||||||
real_duration: number;
|
|
||||||
total_duration: number;
|
|
||||||
updated_at: string;
|
|
||||||
user_id: number;
|
|
||||||
};
|
|
||||||
|
|
||||||
const CoursePalyPage = () => {
|
const CoursePalyPage = () => {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const params = useParams();
|
const params = useParams();
|
||||||
@ -134,7 +97,7 @@ const CoursePalyPage = () => {
|
|||||||
setCourse(res.data.course);
|
setCourse(res.data.course);
|
||||||
setHour(res.data.hour);
|
setHour(res.data.hour);
|
||||||
document.title = res.data.hour.title;
|
document.title = res.data.hour.title;
|
||||||
let record: UserHourRecordModel = res.data.user_hour_record;
|
let record: HourRecordModel = res.data.user_hour_record;
|
||||||
let params = null;
|
let params = null;
|
||||||
if (record && record.finished_duration && record.is_finished === 0) {
|
if (record && record.finished_duration && record.is_finished === 0) {
|
||||||
params = {
|
params = {
|
||||||
|
@ -11,18 +11,6 @@ import studyTime from "../../assets/images/commen/icon-studytime.png";
|
|||||||
import iconRoute from "../../assets/images/commen/icon-route.png";
|
import iconRoute from "../../assets/images/commen/icon-route.png";
|
||||||
import { studyTimeFormat } from "../../utils/index";
|
import { studyTimeFormat } from "../../utils/index";
|
||||||
|
|
||||||
type CourseModel = {
|
|
||||||
id: number;
|
|
||||||
class_hour: number;
|
|
||||||
charge: number;
|
|
||||||
is_show: number;
|
|
||||||
is_required: number;
|
|
||||||
title: string;
|
|
||||||
thumb: string;
|
|
||||||
short_desc: string;
|
|
||||||
created_at: string;
|
|
||||||
};
|
|
||||||
|
|
||||||
type StatsModel = {
|
type StatsModel = {
|
||||||
learn_duration: number;
|
learn_duration: number;
|
||||||
nun_required_course_count: number;
|
nun_required_course_count: number;
|
||||||
@ -37,20 +25,7 @@ type StatsModel = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
type LearnCourseRecordsModel = {
|
type LearnCourseRecordsModel = {
|
||||||
[key: number]: CourseRecordsModel;
|
[key: number]: CourseRecordModel;
|
||||||
};
|
|
||||||
|
|
||||||
type CourseRecordsModel = {
|
|
||||||
course_id: number;
|
|
||||||
created_at: string;
|
|
||||||
finished_at: string | null;
|
|
||||||
finished_count: number;
|
|
||||||
hour_count: number;
|
|
||||||
id: number;
|
|
||||||
is_finished: number;
|
|
||||||
progress: number;
|
|
||||||
updated_at: string;
|
|
||||||
user_id: number;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
type CategoryModel = {
|
type CategoryModel = {
|
||||||
|
@ -12,13 +12,13 @@ type LastLearnModel = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
type LearnModel = {
|
type LearnModel = {
|
||||||
course: CourseModel;
|
course: LastCourseModel;
|
||||||
hour_record: HourRecordModel;
|
hour_record: HourRecordModel;
|
||||||
last_learn_hour: LastHourModel;
|
last_learn_hour: LastHourModel;
|
||||||
record: RecordModel;
|
record: CourseRecordModel;
|
||||||
};
|
};
|
||||||
|
|
||||||
type CourseModel = {
|
type LastCourseModel = {
|
||||||
charge?: number;
|
charge?: number;
|
||||||
class_hour: number;
|
class_hour: number;
|
||||||
created_at?: string;
|
created_at?: string;
|
||||||
@ -30,20 +30,6 @@ type CourseModel = {
|
|||||||
title: string;
|
title: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
type HourRecordModel = {
|
|
||||||
course_id: number;
|
|
||||||
created_at: string;
|
|
||||||
finished_at: string;
|
|
||||||
finished_duration: number;
|
|
||||||
hour_id: number;
|
|
||||||
id: number;
|
|
||||||
is_finished: number;
|
|
||||||
real_duration: number;
|
|
||||||
total_duration: number;
|
|
||||||
updated_at: string;
|
|
||||||
user_id: number;
|
|
||||||
};
|
|
||||||
|
|
||||||
type LastHourModel = {
|
type LastHourModel = {
|
||||||
chapter_id: number;
|
chapter_id: number;
|
||||||
course_id: number;
|
course_id: number;
|
||||||
@ -55,19 +41,6 @@ type LastHourModel = {
|
|||||||
type: string;
|
type: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
type RecordModel = {
|
|
||||||
course_id: number;
|
|
||||||
created_at: string;
|
|
||||||
finished_at?: string;
|
|
||||||
finished_count: number;
|
|
||||||
hour_count: number;
|
|
||||||
id: number;
|
|
||||||
is_finished: number;
|
|
||||||
progress: number;
|
|
||||||
updated_at: string;
|
|
||||||
user_id: number;
|
|
||||||
};
|
|
||||||
|
|
||||||
const LatestLearnPage = () => {
|
const LatestLearnPage = () => {
|
||||||
document.title = "最近学习";
|
document.title = "最近学习";
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
|
53
src/playedu.d.ts
vendored
Normal file
53
src/playedu.d.ts
vendored
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
declare global {
|
||||||
|
interface CourseModel {
|
||||||
|
charge: number;
|
||||||
|
class_hour: number;
|
||||||
|
created_at: string;
|
||||||
|
id: number;
|
||||||
|
is_required: number;
|
||||||
|
is_show: number;
|
||||||
|
short_desc: string;
|
||||||
|
thumb: string;
|
||||||
|
title: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface HourModel {
|
||||||
|
chapter_id: number;
|
||||||
|
course_id: number;
|
||||||
|
duration: number;
|
||||||
|
id: number;
|
||||||
|
rid: number;
|
||||||
|
sort: number;
|
||||||
|
title: string;
|
||||||
|
type: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface HourRecordModel {
|
||||||
|
course_id: number;
|
||||||
|
created_at: string;
|
||||||
|
finished_at?: string;
|
||||||
|
finished_duration: number;
|
||||||
|
hour_id: number;
|
||||||
|
id: number;
|
||||||
|
is_finished: number;
|
||||||
|
real_duration: number;
|
||||||
|
total_duration: number;
|
||||||
|
updated_at: string;
|
||||||
|
user_id: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface CourseRecordModel {
|
||||||
|
course_id: number;
|
||||||
|
created_at: string;
|
||||||
|
finished_at?: string;
|
||||||
|
finished_count: number;
|
||||||
|
hour_count: number;
|
||||||
|
id: number;
|
||||||
|
is_finished: number;
|
||||||
|
progress: number;
|
||||||
|
updated_at: string;
|
||||||
|
user_id: number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export {};
|
Loading…
x
Reference in New Issue
Block a user