feat: Implement instructor-specific course management and refactor course creation into dedicated modules.

This commit is contained in:
JakkrapartXD 2026-01-16 11:12:12 +07:00
parent ec54160a5e
commit 000de75dd1
8 changed files with 103 additions and 13 deletions

View file

@ -0,0 +1,91 @@
import { Course, Prisma, User } from '@prisma/client';
export interface createCourses{
data: Prisma.CourseCreateInput;
}
export interface createCourseResponse {
code: number;
message: string;
data: Course;
}
export interface ListMyCourseResponse {
code: number;
message: string;
data: Course[];
total: number;
}
export interface GetMyCourseResponse {
code: number;
message: string;
data: Course;
}
export interface UpdateMyCourse{
data: Prisma.CourseUpdateInput;
}
export interface UpdateMyCourseResponse {
code: number;
message: string;
data: Course;
}
export interface DeleteMyCourseResponse {
code: number;
message: string;
}
export interface submitCourseResponse {
code: number;
message: string;
}
export interface submitCourse{
courseId: number;
submitted_by: number;
}
export interface submitCourseResponse {
code: number;
message: string;
}
export interface listCourseinstructorResponse {
code: number;
message: string;
data: User[];
total: number;
}
export interface addinstructorCourse{
user_id: number;
course_id: number;
}
export interface addinstructorCourseResponse {
code: number;
message: string;
}
export interface removeinstructorCourse{
user_id: number;
course_id: number;
}
export interface removeinstructorCourseResponse {
code: number;
message: string;
}
export interface setprimaryCourseInstructor{
user_id: number;
course_id: number;
}
export interface setprimaryCourseInstructorResponse {
code: number;
message: string;
}

View file

@ -1,16 +1,9 @@
import { Course, Prisma } from '@prisma/client';
// Use Prisma's CourseCreateInput for creating courses
export interface createCourse {
data: Prisma.CourseCreateInput;
}
// Response type uses Prisma's Course model
export interface createCourseResponse {
code: number;
message: string;
data: Course;
}
export interface listCourseResponse {
code: number;