From 4872f180dcc41ef0d84ab9487567d827a4e3c1a7 Mon Sep 17 00:00:00 2001
From: gqt <3217233537@qq.com>
Date: Tue, 28 Jul 2026 14:56:47 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E9=A6=96=E9=A1=B5=E6=96=B0=E5=A2=9E?=
=?UTF-8?q?=E8=AF=BE=E7=A8=8B=E5=88=97=E8=A1=A8=E5=8C=BA=E5=9D=97=20+=20?=
=?UTF-8?q?=E5=85=A8=E9=83=A8=E8=AF=BE=E7=A8=8B=E5=88=97=E8=A1=A8=E9=A1=B5?=
=?UTF-8?q?=20+=20=E8=AF=BE=E7=A8=8B=E8=AF=A6=E6=83=85=E9=A1=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../modules/comprehensive/api/courseInfo.js | 28 ++++
miniprogram/src/pages.json | 13 ++
.../comprehensive/courses/info-detail.vue | 67 ++++++++++
.../src/pages/comprehensive/courses/list.vue | 126 ++++++++++++++++++
.../src/pages/comprehensive/home/index.vue | 33 ++++-
5 files changed, 266 insertions(+), 1 deletion(-)
create mode 100644 miniprogram/src/modules/comprehensive/api/courseInfo.js
create mode 100644 miniprogram/src/pages/comprehensive/courses/info-detail.vue
create mode 100644 miniprogram/src/pages/comprehensive/courses/list.vue
diff --git a/miniprogram/src/modules/comprehensive/api/courseInfo.js b/miniprogram/src/modules/comprehensive/api/courseInfo.js
new file mode 100644
index 0000000..c6de054
--- /dev/null
+++ b/miniprogram/src/modules/comprehensive/api/courseInfo.js
@@ -0,0 +1,28 @@
+import { request } from './request'
+import { toPageQuery, toPagination } from './mappers'
+
+const toCourseBrief = (backendCourse = {}) => ({
+ id: backendCourse.id ?? null,
+ title: backendCourse.title || '',
+ cover_image: backendCourse.cover_image || '',
+ updated_at: backendCourse.updated_at || ''
+})
+
+const toCourseDetail = (backendCourse = {}) => ({
+ ...toCourseBrief(backendCourse),
+ detail: backendCourse.detail || ''
+})
+
+export const courseInfoApi = {
+ getCourses(params = {}) {
+ return request({
+ url: '/api/courses',
+ data: toPageQuery(params)
+ }).then((data) => toPagination(data, toCourseBrief))
+ },
+ getCourseDetail(id) {
+ return request({
+ url: `/api/courses/${id}`
+ }).then(toCourseDetail)
+ }
+}
diff --git a/miniprogram/src/pages.json b/miniprogram/src/pages.json
index d2594ed..81e2427 100644
--- a/miniprogram/src/pages.json
+++ b/miniprogram/src/pages.json
@@ -95,6 +95,19 @@
"navigationBarTitleText": "课程详情"
}
},
+ {
+ "path": "pages/comprehensive/courses/list",
+ "style": {
+ "navigationBarTitleText": "全部课程",
+ "enablePullDownRefresh": true
+ }
+ },
+ {
+ "path": "pages/comprehensive/courses/info-detail",
+ "style": {
+ "navigationBarTitleText": "课程详情"
+ }
+ },
{
"path": "pages/comprehensive/courses/membership-detail",
"style": {
diff --git a/miniprogram/src/pages/comprehensive/courses/info-detail.vue b/miniprogram/src/pages/comprehensive/courses/info-detail.vue
new file mode 100644
index 0000000..ea595b2
--- /dev/null
+++ b/miniprogram/src/pages/comprehensive/courses/info-detail.vue
@@ -0,0 +1,67 @@
+
+
+ {{ course.title }}
+ {{ formatDate(course.updated_at) }}
+
+
+
+
+
+
+ 加载中...
+
+
+
+
+
+
diff --git a/miniprogram/src/pages/comprehensive/courses/list.vue b/miniprogram/src/pages/comprehensive/courses/list.vue
new file mode 100644
index 0000000..877cbe5
--- /dev/null
+++ b/miniprogram/src/pages/comprehensive/courses/list.vue
@@ -0,0 +1,126 @@
+
+
+
+ 全部课程
+
+
+
+
+
+
+ {{ course.title }}
+ {{ formatDate(course.updated_at) }}
+
+
+
+
+ 加载中...
+ 暂无课程
+ 已加载全部
+
+
+
+
+
+
diff --git a/miniprogram/src/pages/comprehensive/home/index.vue b/miniprogram/src/pages/comprehensive/home/index.vue
index a54802a..e8837bd 100644
--- a/miniprogram/src/pages/comprehensive/home/index.vue
+++ b/miniprogram/src/pages/comprehensive/home/index.vue
@@ -38,6 +38,24 @@
暂无公告活动
+
+
+
+
+
+
+
+ {{ course.title }}
+ {{ formatDate(course.updated_at) }}
+
+
+
+ 暂无课程
+
+
@@ -46,20 +64,28 @@