e9948d6ac3
| Numéro du ticket | Titre du ticket | |------------------|-----------------| | 256 | Créer une nouvelle réception (étape 3 - bovin) | ## Description de la PR ## Modification du .env ## Check list - [x ] Pas de régression - [ ] TU/TI/TF rédigée - [x ] TU/TI/TF OK - [x ] CHANGELOG modifié Co-authored-by: tristan <tristan@yuno.malio.fr> Reviewed-on: https://gitea.malio.fr/MALIO-DEV/Ferme/pulls/11 Co-authored-by: kevin <kevin@yuno.malio.fr> Co-committed-by: kevin <kevin@yuno.malio.fr>
60 lines
1.7 KiB
TypeScript
60 lines
1.7 KiB
TypeScript
import { useApi } from '~/composables/useApi'
|
|
import type { ReceptionBovineTypeData } from '~/services/dto/reception-bovine-data'
|
|
|
|
export type ReceptionBovineListResponse =
|
|
| ReceptionBovineTypeData[]
|
|
| { 'hydra:member'?: ReceptionBovineTypeData[] }
|
|
|
|
export type ReceptionBovinePayload = {
|
|
quantity: number
|
|
reception: string
|
|
bovineType: string
|
|
}
|
|
|
|
export async function getReceptionBovineList(
|
|
receptionIri: string
|
|
): Promise<ReceptionBovineTypeData[]> {
|
|
const api = useApi()
|
|
const response = await api.get<ReceptionBovineListResponse>(
|
|
'reception_bovines',
|
|
{ reception: receptionIri },
|
|
{
|
|
toastErrorKey: 'errors.receptionBovine.list'
|
|
}
|
|
)
|
|
|
|
if (Array.isArray(response)) {
|
|
return response
|
|
}
|
|
if (response && typeof response === 'object' && Array.isArray(response['hydra:member'])) {
|
|
return response['hydra:member']
|
|
}
|
|
return []
|
|
}
|
|
|
|
export async function createReceptionBovine(
|
|
payload: ReceptionBovinePayload
|
|
): Promise<ReceptionBovineTypeData> {
|
|
const api = useApi()
|
|
return api.post<ReceptionBovineTypeData>('reception_bovines', payload, {
|
|
toastErrorKey: 'errors.receptionBovine.create'
|
|
})
|
|
}
|
|
|
|
export async function deleteReceptionBovine(id: number): Promise<void> {
|
|
const api = useApi()
|
|
await api.delete<void>(`reception_bovines/${id}`, {}, {
|
|
toastErrorKey: 'errors.receptionBovine.delete'
|
|
})
|
|
}
|
|
|
|
export async function updateReceptionBovine(
|
|
id: number,
|
|
payload: Partial<ReceptionBovinePayload>
|
|
): Promise<ReceptionBovineTypeData> {
|
|
const api = useApi()
|
|
return api.patch<ReceptionBovineTypeData>(`reception_bovines/${id}`, payload, {
|
|
toastErrorKey: 'errors.receptionBovine.update'
|
|
})
|
|
}
|