How trannam1304/smart-campus works
This is a Java/Spring backend scaffold for a smart-campus facility and study-room reservation platform. Its planned user-facing capabilities span authentication, room discovery, booking, device/facility operations, check-in, and notifications. The sampled controllers and service interfaces are largely TODOs, so the graph shows declared API mappings and dependency declarations, not a functioning request-to-result workflow. The README describes a broader project, but the supplied tree contains only the backend skeleton; detailed service behavior and external integrations cannot be confirmed.
Main entry points: BookingController.java Booking API · CheckinController.java Check-in API · NotificationController.java Notification API · SecurityConfig.java Security config
Components 20
API and security
- Auth API
backend/backend-skeleton/src/main/java/com/smartcampus/backend/controller/AuthController.java - Security config
backend/backend-skeleton/src/main/java/com/smartcampus/backend/config/SecurityConfig.java - JWT filter
backend/backend-skeleton/src/main/java/com/smartcampus/backend/security/JwtAuthFilter.java - JWT provider
backend/backend-skeleton/src/main/java/com/smartcampus/backend/security/JwtTokenProvider.java
Facility services
- Room API
backend/backend-skeleton/src/main/java/com/smartcampus/backend/controller/RoomController.java - Room service
backend/backend-skeleton/src/main/java/com/smartcampus/backend/service/RoomService.java - Device API
backend/backend-skeleton/src/main/java/com/smartcampus/backend/controller/DeviceController.java - Device service
backend/backend-skeleton/src/main/java/com/smartcampus/backend/service/DeviceService.java
Reservation services
- Booking API
backend/backend-skeleton/src/main/java/com/smartcampus/backend/controller/BookingController.java - Booking service
backend/backend-skeleton/src/main/java/com/smartcampus/backend/service/BookingService.java - Check-in API
backend/backend-skeleton/src/main/java/com/smartcampus/backend/controller/CheckinController.java - Check-in service
backend/backend-skeleton/src/main/java/com/smartcampus/backend/service/CheckinService.java - Notification API
backend/backend-skeleton/src/main/java/com/smartcampus/backend/controller/NotificationController.java - Notification service
backend/backend-skeleton/src/main/java/com/smartcampus/backend/service/NotificationService.java
Domain data
- Booking repository
backend/backend-skeleton/src/main/java/com/smartcampus/backend/repository/BookingRepository.java - Booking entity
backend/backend-skeleton/src/main/java/com/smartcampus/backend/entity/Booking.java - Room repository
backend/backend-skeleton/src/main/java/com/smartcampus/backend/repository/RoomRepository.java - Room entity
backend/backend-skeleton/src/main/java/com/smartcampus/backend/entity/Room.java - Incident report
backend/backend-skeleton/src/main/java/com/smartcampus/backend/entity/IncidentReport.java
Other components
- API client
Connections 11
- API client → Auth API: HTTP requests
- API client → Room API: HTTP requests
- API client → Booking API: HTTP requests
- API client → Check-in API: HTTP requests
- API client → Device API: HTTP requests
- API client → Notification API: HTTP requests
- Security config → JWT filter: configures
- Booking API → Booking service: injects
- Check-in API → Check-in service: injects
- Notification API → Notification service: injects
- Booking repository → Booking entity: persists