73 lines
1.9 KiB
TypeScript
73 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}`,
|
||
|
|
})
|