From 883e08c6edbdcc22494ff7a6d96a3d4f008447ef Mon Sep 17 00:00:00 2001 From: supalerk-ar66 Date: Wed, 11 Feb 2026 17:28:48 +0700 Subject: [PATCH] feat: add `useCourse` composable for comprehensive course management and create a new dashboard page. --- Frontend-Learner/composables/useCourse.ts | 2 ++ Frontend-Learner/pages/dashboard/index.vue | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Frontend-Learner/composables/useCourse.ts b/Frontend-Learner/composables/useCourse.ts index 1a587eb6..879c5083 100644 --- a/Frontend-Learner/composables/useCourse.ts +++ b/Frontend-Learner/composables/useCourse.ts @@ -145,6 +145,7 @@ export const useCourse = () => { page?: number; limit?: number; random?: boolean; + is_recommended?: boolean; forceRefresh?: boolean } = {}) => { const { forceRefresh = false, ...apiParams } = params @@ -166,6 +167,7 @@ export const useCourse = () => { if (apiParams.page) queryParams.append('page', apiParams.page.toString()) if (apiParams.limit) queryParams.append('limit', apiParams.limit.toString()) if (apiParams.random !== undefined) queryParams.append('random', apiParams.random.toString()) + if (apiParams.is_recommended !== undefined) queryParams.append('is_recommended', apiParams.is_recommended.toString()) const queryString = queryParams.toString() const url = `${API_BASE_URL}/courses${queryString ? `?${queryString}` : ''}` diff --git a/Frontend-Learner/pages/dashboard/index.vue b/Frontend-Learner/pages/dashboard/index.vue index 3ccf351d..b8b69554 100644 --- a/Frontend-Learner/pages/dashboard/index.vue +++ b/Frontend-Learner/pages/dashboard/index.vue @@ -36,7 +36,7 @@ onMounted(async () => { // 2. Fetch 3 Random Courses from Server // ดึงคอร์สแบบสุ่มจาก Server โดยตรง (ผ่าน API ใหม่ที่เพิ่ม parameter random และ limit) - const res = await fetchCourses({ random: true, limit: 3, forceRefresh: true }) + const res = await fetchCourses({ random: true, limit: 3, forceRefresh: true, is_recommended: true }) if (res.success && res.data?.length) { recommendedCourses.value = res.data.map((c: any) => ({