feat: Implement instructor-specific course management and refactor course creation into dedicated modules.
This commit is contained in:
parent
ec54160a5e
commit
000de75dd1
8 changed files with 103 additions and 13 deletions
91
Backend/src/types/CoursesInstructor.types.ts
Normal file
91
Backend/src/types/CoursesInstructor.types.ts
Normal 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;
|
||||
}
|
||||
|
|
@ -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;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue