How ceos-developers/spring-cgv-24th works
This is a Spring-based cinema booking and concession-ordering backend. Customers can browse movies and screenings, reserve seats, order store items, and pay; members can also manage favorites, while administrators manage catalog, theater, screening, and store data. The graph follows the sampled service calls where available. Several controller and administration paths are represented by their exact source files, but their wiring was not sampled; those links are therefore marked unverified.
Main entry points: ReservationService.java Seat Reservation · OrderService.java Order Creation · PaymentService.java Payment Processing · MovieService.java Movie Catalog
Components 27
Identity
- Auth API
src/main/java/com/ceos24/cgv/domain/auth/controller/AuthController.java - Authentication
src/main/java/com/ceos24/cgv/domain/auth/service/AuthService.java - Member Records
src/main/java/com/ceos24/cgv/domain/member/repository/MemberRepository.java
Cinema Catalog
- Movie API
src/main/java/com/ceos24/cgv/domain/movie/controller/MovieController.java - Movie Catalog
src/main/java/com/ceos24/cgv/domain/movie/service/MovieService.java - Movie Records
src/main/java/com/ceos24/cgv/domain/movie/entity/Movie.java - Screening API
src/main/java/com/ceos24/cgv/domain/screening/controller/ScreeningController.java - Screening Catalog
src/main/java/com/ceos24/cgv/domain/screening/service/ScreeningService.java - Screening Records
src/main/java/com/ceos24/cgv/domain/screening/entity/Screening.java - Theater Admin
src/main/java/com/ceos24/cgv/domain/theater/controller/TheaterAdminController.java - Theater Favorites
src/main/java/com/ceos24/cgv/domain/theater/service/FavoriteTheaterService.java - Movie Favorites
src/main/java/com/ceos24/cgv/domain/movie/service/FavoriteMovieService.java
Booking and Orders
- Reservation API
src/main/java/com/ceos24/cgv/domain/reservation/controller/ReservationController.java - Seat Reservation
src/main/java/com/ceos24/cgv/domain/reservation/service/ReservationService.java - Seat Records
src/main/java/com/ceos24/cgv/domain/theater/entity/Seat.java - Reservations
src/main/java/com/ceos24/cgv/domain/reservation/repository/ReservationRepository.java - Order API
src/main/java/com/ceos24/cgv/domain/order/controller/OrderController.java - Order Creation
src/main/java/com/ceos24/cgv/domain/order/service/OrderService.java - Order Records
src/main/java/com/ceos24/cgv/domain/order/repository/OrderRepository.java
Payments
- Payment API
src/main/java/com/ceos24/cgv/domain/payment/controller/PaymentController.java - Payment Processing
src/main/java/com/ceos24/cgv/domain/payment/service/PaymentService.java - Payment Records
src/main/java/com/ceos24/cgv/domain/payment/repository/PaymentRepository.java
Concessions
- Store API
src/main/java/com/ceos24/cgv/domain/store/controller/StoreController.java - Store Admin
src/main/java/com/ceos24/cgv/domain/store/service/StoreAdminService.java - Menu Stock
src/main/java/com/ceos24/cgv/domain/store/entity/MenuStock.java
Other components
- Customer
- Toss Payments
Connections 29
- Customer → Auth API: requests
- Auth API → Authentication: delegates
src/main/java/com/ceos24/cgv/domain/auth/controller/AuthController.java - Authentication → Member Records: reads and saves
src/main/java/com/ceos24/cgv/domain/auth/service/AuthService.java - Customer → Movie API: browses
- Movie API → Movie Catalog: delegates
- Movie Catalog → Movie Records: queries
src/main/java/com/ceos24/cgv/domain/movie/service/MovieService.java - Movie Catalog → Screening Records: queries
src/main/java/com/ceos24/cgv/domain/movie/service/MovieService.java - Customer → Screening API: browses
- Screening API → Screening Catalog: delegates
- Customer → Reservation API: requests seats
- Reservation API → Seat Reservation: delegates
src/main/java/com/ceos24/cgv/domain/reservation/controller/ReservationController.java - Seat Reservation → Seat Records: reads and updates
src/main/java/com/ceos24/cgv/domain/reservation/service/ReservationService.java - Seat Reservation → Member Records: reads
src/main/java/com/ceos24/cgv/domain/reservation/service/ReservationService.java - Seat Reservation → Reservations: saves and deletes
src/main/java/com/ceos24/cgv/domain/reservation/service/ReservationService.java - Customer → Order API: places order
- Order API → Order Creation: delegates
src/main/java/com/ceos24/cgv/domain/order/controller/OrderController.java - Order Creation → Member Records: reads
src/main/java/com/ceos24/cgv/domain/order/service/OrderService.java - Order Creation → Menu Stock: validates and deducts
src/main/java/com/ceos24/cgv/domain/order/service/OrderService.java - Order Creation → Order Records: saves
src/main/java/com/ceos24/cgv/domain/order/service/OrderService.java - Customer → Payment API: pays
- Payment API → Payment Processing: delegates
src/main/java/com/ceos24/cgv/domain/payment/controller/PaymentController.java - Payment Processing → Order Records: reads
src/main/java/com/ceos24/cgv/domain/payment/service/PaymentService.java - Payment Processing → Payment Records: records payment
src/main/java/com/ceos24/cgv/domain/payment/service/PaymentService.java - Payment Processing → Toss Payments: confirms and cancels
src/main/java/com/ceos24/cgv/domain/payment/service/PaymentService.java - Theater Admin → Screening Catalog: manages screenings
- Store API → Store Admin: delegates
- Store Admin → Menu Stock: creates stock
src/main/java/com/ceos24/cgv/domain/store/service/StoreAdminService.java - Customer → Theater Favorites: manages favorites
- Customer → Movie Favorites: manages favorites