Admin Platform

Reservation platform with separate public/admin portals, role-based access, and operational workflows for reception and management.

Admin Platform

User Roles (RBAC)

Guest (Public)

  • Create reservations
  • View booking status via reference
  • Access public endpoints only

Receptionist (Authenticated)

  • View arrivals, in-house stays, and departures
  • Perform check-in and check-out operations
  • Update booking statuses

Admin (Authenticated)

  • Full access to bookings and reports
  • Manage rooms, rates, and availability
  • Manage users and roles

System Design

  • • Single Spring Boot backend serving public + admin clients.
  • • Layered architecture (Controllers → Services → Domain → Persistence).
  • • Domain-driven modeling for booking lifecycle and states.
  • • Flyway migrations keep schema versioned.
  • • Cache-ready design (Caffeine / Redis).

Security & Access Control

  • • JWT-secured admin APIs (/api/admin/**).
  • • Public booking APIs isolated (/api/public/**).
  • • Role permissions enforced in controllers and services.
  • • Stateless backend design for horizontal scalability.