import api from '..';
const ENROLLMENT_API = '/enrollment';
export const enrollmentApi = api.injectEndpoints({
endpoints: (build) => ({
getAssignedTeachersByCourseAndSchool: build.query<
ResponseI<
{
enrollment_id: number;
teacher: TeacherI;
}[]
>,
{
courseId: number;
schoolId: number;
}
>({
query: ({ courseId, schoolId }) => ({
url: `${ENROLLMENT_API}/teachers/${courseId}/${schoolId}`,
method: 'GET',
}),
providesTags: ['enrollments', 'orders', 'users', 'teachers'],
}),
assignTeacher: build.mutation<
ResponseI<null>,
{
courseId: number;
schoolId: number;
teacherId: number;
}
>({
query: ({ courseId, schoolId, teacherId }) => ({
url: `${ENROLLMENT_API}/assign`,
method: 'POST',
body: {
course_id: courseId,
school_id: schoolId,
teacher_id: teacherId,
},
}),
invalidatesTags: ['enrollments', 'orders', 'users', 'teachers'],
}),
deleteEnrollment: build.mutation<
ResponseI<null>,
{
enrollmentId: number;
}
>({
query: ({ enrollmentId }) => ({
url: `${ENROLLMENT_API}/delete/${enrollmentId}`,
method: 'DELETE',
}),
invalidatesTags: ['enrollments', 'orders', 'users', 'teachers'],
}),
}),
});
export const {
useGetAssignedTeachersByCourseAndSchoolQuery,
useAssignTeacherMutation,
useDeleteEnrollmentMutation,
} = enrollmentApi;