Loading...
User search functionality
Room booking process
Payment Process
Hotel staff Management process
hotel_id. This will distribute the load and ensure faster queries.GET /v1/hotels/roomsstartDate: The check-in dateendDate: The check-out datelocation, numberOfGuestsPOST /v1/bookingsroomId: ID of the room to be bookedguestDetails: Information about the guest (name, contact)paymentDetails: Payment information (secured)POST /v1/paymentsbookingId: ID of the booking for which the payment is being madepaymentMethod: Details of the payment method being used (e.g., credit card info)/v1/bookings/{bookingId}: Retrieve booking details for a specific booking ID./v1/bookings/{bookingId}: Allow users to update their booking details (e.g., date changes, guest details)./v1/bookings/{bookingId}: Allow users to cancel their booking.HLD is included in the attached "High level diagram".
Public_Services subgraph.Private_Services subgraph.The follwoing are the main components of this architecture
Sequence diagram is included in the attached "Sequence diagram".
GET /v1/hotels/rooms?location={location}&startDate={checkIn}&endDate={checkOut}POST /v1/bookings with body containing room ID, user details, and dates.POST /v1/payments with body containing booking ID and payment info.GET /v1/hotels/roomslocation: The location where the user wants to find hotels.startDate: Check-in date.endDate: Check-out date.numberOfGuests: Number of guests.Hotels: Contains hotel details (ID, name, location, description).Rooms: Contains room details (ID, hotel_id, room_type, price, amenities, available status).POST /v1/bookingsroomId: The ID of the room being booked.userId: The ID of the user making the booking.checkIn: Check-in date.checkOut: Check-out date.Bookings: Contains booking details (ID, room_id, user_id, check_in, check_out, status).Payments: Contains payment transaction details (ID, booking_id, amount, payment_method, status).Trade-offs:
Trade-offs:
Trade-offs:
Trade-offs:
Trade-offs:
Trade-offs:
Trade-offs: