How dmitri170/seatflow-backend works
SeatFlow is a REST backend for configuring venues and their seating, then defining events, event-seat availability, and sector prices. The documented organizer workflow runs from venue → hall → sector (which generates physical seats) → event (which initializes event seats) → event pricing and seat-status queries. The repository excerpts show these orchestration calls and repository-backed persistence. Other controller/service modules are represented from the tree and README; their internal calls are not inferred where source was not sampled.
Main entry points: seatflow REST API · SectorService.java Sectors · EventService.java Event management · EventSectorPriceService.java Sector pricing
Components 18
Venue catalog
- Venues
src/main/java/com/dmitriy/seatflow/venue/VenueService.java - Venue records
src/main/java/com/dmitriy/seatflow/venue/VenueRepository.java - Halls
src/main/java/com/dmitriy/seatflow/hall/HallService.java - Hall records
src/main/java/com/dmitriy/seatflow/hall/HallRepository.java
Seating layout
- Sectors
src/main/java/com/dmitriy/seatflow/sector/SectorService.java - Sector records
src/main/java/com/dmitriy/seatflow/sector/SectorRepository.java - Physical seats
src/main/java/com/dmitriy/seatflow/seat/SeatService.java - Seat records
src/main/java/com/dmitriy/seatflow/seat/SeatRepository.java
Events and inventory
- Event management
src/main/java/com/dmitriy/seatflow/event/EventService.java - Event records
src/main/java/com/dmitriy/seatflow/event/EventRepository.java - Event-seat inventory
src/main/java/com/dmitriy/seatflow/eventseat/EventSeatService.java - Event-seat records
src/main/java/com/dmitriy/seatflow/eventseat/EventSeatRepository.java - Sector pricing
src/main/java/com/dmitriy/seatflow/eventpricing/EventSectorPriceService.java - Price records
src/main/java/com/dmitriy/seatflow/eventpricing/EventSectorPriceRepository.java
API platform
- REST API
src/main/java/com/dmitriy/seatflow - System status
src/main/java/com/dmitriy/seatflow/system/SystemController.java - API errors
src/main/java/com/dmitriy/seatflow/common/error/GlobalExceptionHandler.java
Other components
- Organizer
Connections 26
- Organizer → REST API: sends requests
- REST API → Venues: routes venue operations
src/main/java/com/dmitriy/seatflow/venue/VenueController.java - Venues → Venue records: reads and writes
src/main/java/com/dmitriy/seatflow/venue/VenueService.java - REST API → Halls: routes hall operations
src/main/java/com/dmitriy/seatflow/hall/HallController.java - Halls → Venue records: loads venue
src/main/java/com/dmitriy/seatflow/hall/HallService.java - Halls → Hall records: reads and writes
src/main/java/com/dmitriy/seatflow/hall/HallService.java - REST API → Sectors: routes sector operations
src/main/java/com/dmitriy/seatflow/sector/SectorController.java - Sectors → Hall records: loads hall
src/main/java/com/dmitriy/seatflow/sector/SectorService.java - Sectors → Sector records: reads and writes
src/main/java/com/dmitriy/seatflow/sector/SectorService.java - Sectors → Seat records: generates and saves seats
src/main/java/com/dmitriy/seatflow/sector/SectorService.java - REST API → Physical seats: routes seat queries
src/main/java/com/dmitriy/seatflow/seat/SeatController.java - Physical seats → Sector records: checks sector
src/main/java/com/dmitriy/seatflow/seat/SeatService.java - Physical seats → Seat records: loads seats
src/main/java/com/dmitriy/seatflow/seat/SeatService.java - REST API → Event management: routes event operations
src/main/java/com/dmitriy/seatflow/event/EventController.java - Event management → Hall records: loads hall
src/main/java/com/dmitriy/seatflow/event/EventService.java - Event management → Event records: reads and writes
src/main/java/com/dmitriy/seatflow/event/EventService.java - Event management → Event-seat inventory: initializes inventory
src/main/java/com/dmitriy/seatflow/event/EventService.java - Event-seat inventory → Seat records: loads hall seats
src/main/java/com/dmitriy/seatflow/eventseat/EventSeatService.java - Event-seat inventory → Event-seat records: saves and queries
src/main/java/com/dmitriy/seatflow/eventseat/EventSeatService.java - REST API → Event-seat inventory: routes inventory queries
src/main/java/com/dmitriy/seatflow/event/EventService.java - REST API → Sector pricing: routes price operations
src/main/java/com/dmitriy/seatflow/eventpricing/EventSectorPriceController.java - Sector pricing → Event records: loads event
src/main/java/com/dmitriy/seatflow/eventpricing/EventSectorPriceService.java - Sector pricing → Sector records: loads sectors
src/main/java/com/dmitriy/seatflow/eventpricing/EventSectorPriceService.java - Sector pricing → Price records: reads and saves prices
src/main/java/com/dmitriy/seatflow/eventpricing/EventSectorPriceService.java - REST API → System status: serves status
src/main/java/com/dmitriy/seatflow/system/SystemController.java - REST API → API errors: formats failures
src/main/java/com/dmitriy/seatflow/common/error/GlobalExceptionHandler.java