This commit is contained in:
Iliyan Angelov
2025-11-17 18:26:30 +02:00
parent 48353cde9c
commit 0c59fe1173
2535 changed files with 278997 additions and 2480 deletions

View File

@@ -11,6 +11,11 @@ export interface Room {
floor: number;
status: 'available' | 'occupied' | 'maintenance';
featured: boolean;
price?: number;
description?: string;
capacity?: number;
room_size?: string;
view?: string;
images?: string[];
amenities?: string[];
created_at: string;
@@ -86,12 +91,22 @@ export const getRooms = async (
};
/**
* Get room by ID
* Get room by ID (deprecated - use getRoomByNumber instead)
*/
export const getRoomById = async (
id: number
): Promise<{ success: boolean; data: { room: Room } }> => {
const response = await apiClient.get(`/rooms/${id}`);
const response = await apiClient.get(`/rooms/id/${id}`);
return response.data;
};
/**
* Get room by room number
*/
export const getRoomByNumber = async (
room_number: string
): Promise<{ success: boolean; data: { room: Room } }> => {
const response = await apiClient.get(`/rooms/${room_number}`);
return response.data;
};
@@ -137,6 +152,12 @@ export interface CreateRoomData {
room_type_id: number;
status: 'available' | 'occupied' | 'maintenance';
featured?: boolean;
price?: number;
description?: string;
capacity?: number;
room_size?: string;
view?: string;
amenities?: string[];
}
export const createRoom = async (
@@ -167,13 +188,25 @@ export const deleteRoom = async (
return response.data;
};
/**
* Bulk delete rooms
*/
export const bulkDeleteRooms = async (
ids: number[]
): Promise<{ success: boolean; message: string; data: { deleted_count: number; deleted_ids: number[] } }> => {
const response = await apiClient.post('/rooms/bulk-delete', { ids });
return response.data;
};
export default {
getFeaturedRooms,
getRooms,
getRoomById,
getRoomByNumber,
searchAvailableRooms,
getAmenities,
createRoom,
updateRoom,
deleteRoom,
bulkDeleteRooms,
};