system-pri/frontend/src/api/groups.ts
2022-11-17 21:49:55 +01:00

41 lines
912 B
TypeScript

import axiosInstance from './axiosInstance'
import { Leader } from './leaders'
export interface CreateGroup {
name: string
project_supervisor_id: number
students: number[]
}
export interface Group {
cdyd_kod: string
id: number
name: string
points_for_first_term: number
points_for_second_term: number
project_supervisor: Leader
prz_kod: string
tzaj_kod: string
}
export const getGroups = (
params: Partial<{
year_group_id: number
page: number
per_page: number
name: string
}>,
) =>
axiosInstance.get<{ max_pages: number; groups: Group[] }>(
`coordinator/groups/${params.year_group_id}`,
{
params,
},
)
export const createGroup = (year_group_id: number, payload: CreateGroup) =>
axiosInstance.post(`coordinator/groups/${year_group_id}/`, payload)
export const deleteGroup = (id: number) =>
axiosInstance.delete(`coordinator/groups/${id}/`)