From fca99f3ad60d9c9fac8d6d0c6a5da7d8cdee8514 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A6=BA=E7=8B=A8?= <18119604035@163.com> Date: Mon, 3 Jul 2023 10:44:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=80=E8=BF=91=E5=AD=A6=E4=B9=A0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/member/index.tsx | 2 +- src/pages/study/index.tsx | 352 +++++++++++++++++++++++++++++-------- 2 files changed, 282 insertions(+), 72 deletions(-) diff --git a/src/pages/member/index.tsx b/src/pages/member/index.tsx index 93f72e0..0df06d8 100644 --- a/src/pages/member/index.tsx +++ b/src/pages/member/index.tsx @@ -273,7 +273,7 @@ const MemberPage = () => { ) : (
- 已学完{" "}0 / 0 + 已学完 0 / 0
)} diff --git a/src/pages/study/index.tsx b/src/pages/study/index.tsx index df70d7c..1a2e0d3 100644 --- a/src/pages/study/index.tsx +++ b/src/pages/study/index.tsx @@ -5,10 +5,13 @@ import { useNavigate } from "react-router-dom"; import { course } from "../../api/index"; import { TabBarFooter, Empty } from "../../components"; import mediaIcon from "../../assets/images/commen/icon-medal.png"; +import moment from "moment"; const StudyPage = () => { const navigate = useNavigate(); const [loading, setLoading] = useState(false); + const [todayCourses, setTodayCourses] = useState([]); + const [yesterdayCourses, setYesterdayCourses] = useState([]); const [courses, setCourses] = useState([]); useEffect(() => { @@ -22,7 +25,33 @@ const StudyPage = () => { const getCourses = () => { setLoading(true); course.latestLearn().then((res: any) => { - setCourses(res.data); + let data = res.data; + let today: any = []; + let yesterday: any = []; + let box: any = []; + if (data && data.length > 0) { + data.map((item: any) => { + if ( + item.hour_record && + moment(item.hour_record.updated_at).isSame(moment(), "day") + ) { + today.push(item); + } else if ( + item.hour_record && + moment(item.hour_record.updated_at).isSame( + moment().subtract(1, "day"), + "day" + ) + ) { + yesterday.push(item); + } else { + box.push(item); + } + setTodayCourses(today); + setYesterdayCourses(yesterday); + setCourses(box); + }); + } setLoading(false); }); }; @@ -51,78 +80,259 @@ const StudyPage = () => { ))} {!loading && courses.length === 0 && } {/*
更早
*/} - {!loading && - courses.length > 0 && - courses.map((item: any, index: number) => ( -
- {item.course && ( -
{ - navigate(`/course/${item.course.id}`); - }} - > - -
-
- {item.course.title} -
-
- {item.course.is_required === 1 && ( -
必修课
- )} - {item.course.is_required === 0 && ( -
选修课
- )} - {item.record && ( - <> - {item.record.progress < 10000 && ( - - )} - {item.record.progress >= 10000 && ( - <> - - - 恭喜你学完此课程! - - - )} - - )} - {!item.record && ( - + {todayCourses.length > 0 && ( + <> +
今日
+ {todayCourses.map((item: any, index: number) => ( +
+ {item.course && ( +
{ + navigate(`/course/${item.course.id}`); + }} + > + - )} -
+
+
+ {item.course.title} +
+
+ {item.course.is_required === 1 && ( +
必修课
+ )} + {item.course.is_required === 0 && ( +
+ 选修课 +
+ )} + {item.record && ( + <> + {item.record.progress < 10000 && ( + + )} + {item.record.progress >= 10000 && ( + <> + + + 恭喜你学完此课程! + + + )} + + )} + {!item.record && ( + + )} +
+
+
+ )}
-
- )} -
- ))} + ))} + + )} + {yesterdayCourses.length > 0 && ( + <> +
昨日
+ {yesterdayCourses.map((item: any, index: number) => ( +
+ {item.course && ( +
{ + navigate(`/course/${item.course.id}`); + }} + > + +
+
+ {item.course.title} +
+
+ {item.course.is_required === 1 && ( +
必修课
+ )} + {item.course.is_required === 0 && ( +
+ 选修课 +
+ )} + {item.record && ( + <> + {item.record.progress < 10000 && ( + + )} + {item.record.progress >= 10000 && ( + <> + + + 恭喜你学完此课程! + + + )} + + )} + {!item.record && ( + + )} +
+
+
+ )} +
+ ))} + + )} + {courses.length > 0 && ( + <> +
更早
+ {courses.map((item: any, index: number) => ( +
+ {item.course && ( +
{ + navigate(`/course/${item.course.id}`); + }} + > + +
+
+ {item.course.title} +
+
+ {item.course.is_required === 1 && ( +
必修课
+ )} + {item.course.is_required === 0 && ( +
+ 选修课 +
+ )} + {item.record && ( + <> + {item.record.progress < 10000 && ( + + )} + {item.record.progress >= 10000 && ( + <> + + + 恭喜你学完此课程! + + + )} + + )} + {!item.record && ( + + )} +
+
+
+ )} +
+ ))} + + )} + + )}