feat : Ajout d'un écran pour afficher les informations d'un bovin
This commit is contained in:
25
frontend/services/identification-bovin.ts
Normal file
25
frontend/services/identification-bovin.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
import { useApi } from '~/composables/useApi'
|
||||
|
||||
export type BovinDataResponse =
|
||||
| IdentificationBovinData
|
||||
| { 'hydra:member'?: IdentificationBovinData }
|
||||
|
||||
export async function getBovinData(
|
||||
nationalNumber: string
|
||||
): Promise<IdentificationBovinData | null> {
|
||||
const api = useApi()
|
||||
const response = await api.get<BovinDataResponse>(
|
||||
`bovins/${nationalNumber}/identification`,
|
||||
{},
|
||||
{ toastErrorKey: 'errors.building.list' }
|
||||
)
|
||||
|
||||
if (response && typeof response === 'object') {
|
||||
// direct item
|
||||
if (!('hydra:member' in response)) return response as IdentificationBovinData
|
||||
// hydra format
|
||||
if (response['hydra:member']) return response['hydra:member']
|
||||
}
|
||||
|
||||
return null
|
||||
}
|
||||
Reference in New Issue
Block a user