Add endpoint to retrieve bookings by device ID and update related API methods

This commit is contained in:
Stephanos A
2026-06-04 14:28:49 +03:00
parent 87a27677d9
commit 681825f36c
3 changed files with 133 additions and 2 deletions

View File

@@ -18,6 +18,29 @@ export const bookingsApi = {
return Array.isArray(response) ? { items: response } : response;
},
getById: (id: string) => apiClient.get<any>(`/bookings/${id}`),
getMy: async (params?: any) => {
const cleanParams = Object.fromEntries(
Object.entries(params || {}).filter(([_, value]) => value !== '' && value !== undefined && value !== null)
) as Record<string, string>;
const query = new URLSearchParams(cleanParams).toString();
const response = await apiClient.get<any>(`/bookings/my${query ? `?${query}` : ''}`);
if (response?.data) {
return Array.isArray(response.data) ? { items: response.data } : response;
}
return Array.isArray(response) ? { items: response } : response;
},
getByDevice: async (deviceId: string, params?: any) => {
const cleanParams = Object.fromEntries(
Object.entries({ ...params }).filter(([_, value]) => value !== '' && value !== undefined && value !== null)
) as Record<string, string>;
cleanParams['deviceId'] = deviceId;
const query = new URLSearchParams(cleanParams).toString();
const response = await apiClient.get<any>(`/bookings/by-device${query ? `?${query}` : ''}`);
if (response?.data) {
return Array.isArray(response.data) ? { items: response.data } : response;
}
return Array.isArray(response) ? { items: response } : response;
},
cancel: (id: string, data?: any) => apiClient.post<any>(`/bookings/${id}/cancel`, data),
modify: (id: string, data: any) => apiClient.patch<any>(`/bookings/${id}`, data),
checkUsage: (id: string) => apiClient.get<any>(`/bookings/${id}/usage`),