sozsoft-platform/ui/src/services/classroom.service.ts
Sedat Öztürk 429227df1d Initial
2026-02-24 23:44:16 +03:00

72 lines
1.9 KiB
TypeScript

import {
ClassroomAttendanceDto,
ClassroomChatDto,
ClassroomDto,
ClassroomFilterInputDto,
ClassroomParticipantDto,
} from '@/proxy/classroom/models'
import apiService from './api.service'
import { PagedAndSortedResultRequestDto, PagedResultDto } from '@/proxy'
export const getClassroomById = (id: string) =>
apiService.fetchData<ClassroomDto>({
method: 'GET',
url: `/api/app/classroom/${id}`,
})
export const getClassrooms = (input: ClassroomFilterInputDto) =>
apiService.fetchData<PagedResultDto<ClassroomDto>>({
method: 'GET',
url: `/api/app/classroom`,
params: input,
})
export const createClassroom = (input: ClassroomDto) =>
apiService.fetchData<ClassroomDto>({
method: 'POST',
url: `/api/app/classroom`,
data: input as any,
})
export const updateClassroom = (input: ClassroomDto) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/classroom/${input.id}`,
data: input,
})
export const deleteClassroom = (id: string) =>
apiService.fetchData({
method: 'DELETE',
url: `/api/app/classroom/${id}`,
})
export const startClassroom = (id: string) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/classroom/${id}/start-class`,
})
export const endClassroom = (id: string) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/classroom/${id}/end-class`,
})
export const getClassroomAttandances = (id: string) =>
apiService.fetchData<ClassroomAttendanceDto[]>({
method: 'GET',
url: `/api/app/classroom/attendance/${id}`,
})
export const getClassroomParticipants = (id: string) =>
apiService.fetchData<ClassroomParticipantDto[]>({
method: 'GET',
url: `/api/app/classroom/participant/${id}`,
})
export const getClassroomChats = (id: string) =>
apiService.fetchData<ClassroomChatDto[]>({
method: 'GET',
url: `/api/app/classroom/chat/${id}`,
})