feat(frontend): add full reservation workflow, timeline gantt, and booking modal
This commit is contained in:
39
frontend/src/types/index.ts
Normal file
39
frontend/src/types/index.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
export type TableStatus = 'FREE' | 'OCCUPIED' | 'RESERVED' | 'BILL';
|
||||
export type TableShape = 'RECT' | 'ROUND';
|
||||
export type ReservationStatus = 'PENDING' | 'CONFIRMED' | 'ARRIVED' | 'FINISHED' | 'NO_SHOW' | 'CANCELLED';
|
||||
export type ViewMode = 'floor' | 'timeline' | 'list';
|
||||
|
||||
export interface RestaurantTable {
|
||||
id: string;
|
||||
number: string;
|
||||
seats: number;
|
||||
minCapacity: number;
|
||||
maxCapacity: number;
|
||||
status: TableStatus;
|
||||
x: number;
|
||||
y: number;
|
||||
shape: TableShape;
|
||||
area: string;
|
||||
}
|
||||
|
||||
export interface Guest {
|
||||
id: string;
|
||||
firstName: string;
|
||||
lastName: string;
|
||||
phone?: string;
|
||||
email?: string;
|
||||
}
|
||||
|
||||
export interface Reservation {
|
||||
id: string;
|
||||
guest: Guest;
|
||||
tableIds: string[];
|
||||
date: string;
|
||||
startTime: string;
|
||||
endTime: string;
|
||||
guestCount: number;
|
||||
status: ReservationStatus;
|
||||
notes: string;
|
||||
tags: string[];
|
||||
createdAt: string;
|
||||
}
|
||||
Reference in New Issue
Block a user