feat: Implement instructor module with course management pages and API services.

This commit is contained in:
Missez 2026-01-29 09:47:43 +07:00
parent 07ab43a785
commit a24f8c4982
6 changed files with 135 additions and 27 deletions

View file

@ -225,6 +225,25 @@ export const instructorService = {
return response.data;
},
async uploadCourseThumbnail(courseId: number, file: File): Promise<{ thumbnail_url: string }> {
const config = useRuntimeConfig();
const useMockData = config.public.useMockData as boolean;
if (useMockData) {
await new Promise(resolve => setTimeout(resolve, 500));
return { thumbnail_url: URL.createObjectURL(file) };
}
const formData = new FormData();
formData.append('file', file);
const response = await authRequest<{ code: number; data: { thumbnail_url: string } }>(
`/api/instructors/courses/${courseId}/thumbnail`,
{ method: 'POST', body: formData }
);
return response.data;
},
async deleteCourse(courseId: number): Promise<void> {
const config = useRuntimeConfig();
const useMockData = config.public.useMockData as boolean;