How scheasa/enrollment works
This is a Laravel REST API for a school enrollment product, with MySQL persistence and a Flutter client described in the README. The main workflow is students browsing courses and schedules, submitting an enrollment, uploading course-payment receipts, and staff reviewing enrollment and payment status. Separate API areas support authentication, profiles, announcements, dashboards, and administrative management. The graph focuses on the backend because Flutter application source files are not present in the supplied tree; unsampled API capabilities are included where documented, with relationships limited to route references and sampled source evidence.
Main entry points: api.php API routes · ApiResponses.php Shared API responses · EnrollmentController.php Student enrollment · PaymentController.php Receipt payments
Components 27
API entry and access
- API routes
enrollment-sys-api/routes/api.php - API middleware
enrollment-sys-api/bootstrap/app.php - Authentication
enrollment-sys-api/app/Http/Controllers/Api/AuthController.php
Student enrollment
- Profile management
enrollment-sys-api/app/Http/Controllers/Api/ProfileController.php - Course catalog
enrollment-sys-api/app/Http/Controllers/Api/CourseController.php - Schedule browsing
enrollment-sys-api/app/Http/Controllers/Api/ScheduleController.php - Announcements
enrollment-sys-api/app/Http/Controllers/Api/AnnouncementController.php - Student enrollment
enrollment-sys-api/app/Http/Controllers/Api/EnrollmentController.php - Receipt payments
enrollment-sys-api/app/Http/Controllers/Api/PaymentController.php
Staff review
- Staff dashboard
enrollment-sys-api/app/Http/Controllers/Api/Admin/DashboardController.php - Enrollment review
enrollment-sys-api/app/Http/Controllers/Api/Admin/EnrollmentReviewController.php - Payment review
enrollment-sys-api/app/Http/Controllers/Api/Admin/PaymentReviewController.php
Administration
- Course management
enrollment-sys-api/app/Http/Controllers/Api/Admin/CourseManageController.php - Schedule management
enrollment-sys-api/app/Http/Controllers/Api/Admin/ScheduleManageController.php - Announcement management
enrollment-sys-api/app/Http/Controllers/Api/Admin/AnnouncementManageController.php - User management
enrollment-sys-api/app/Http/Controllers/Api/Admin/UserManageController.php
Domain and responses
- Course model
enrollment-sys-api/app/Models/Course.php - Schedule model
enrollment-sys-api/app/Models/Schedule.php - Enrollment model
enrollment-sys-api/app/Models/Enrollment.php - Payment model
enrollment-sys-api/app/Models/Payment.php - Announcement model
enrollment-sys-api/app/Models/Announcement.php - User model
enrollment-sys-api/app/Models/User.php - JSON resources
enrollment-sys-api/app/Http/Resources - Shared API responses
enrollment-sys-api/app/Http/Controllers/Api/Concerns/ApiResponses.php
Other components
- Student / staff
- MySQL database
- Uploaded receipts
Connections 47
- Student / staff → API routes: sends API requests
- API routes → Authentication: routes to
enrollment-sys-api/routes/api.php - API routes → Profile management: routes to
enrollment-sys-api/routes/api.php - API routes → Course catalog: routes to
enrollment-sys-api/routes/api.php - API routes → Schedule browsing: routes to
enrollment-sys-api/routes/api.php - API routes → Announcements: routes to
enrollment-sys-api/routes/api.php - API routes → Student enrollment: routes to
enrollment-sys-api/routes/api.php - API routes → Receipt payments: routes to
enrollment-sys-api/routes/api.php - API routes → Staff dashboard: routes to
enrollment-sys-api/routes/api.php - API routes → Enrollment review: routes to
enrollment-sys-api/routes/api.php - API routes → Payment review: routes to
enrollment-sys-api/routes/api.php - API routes → Course management: routes to
enrollment-sys-api/routes/api.php - API routes → Schedule management: routes to
enrollment-sys-api/routes/api.php - API routes → Announcement management: routes to
enrollment-sys-api/routes/api.php - API routes → User management: routes to
enrollment-sys-api/routes/api.php - API routes → API middleware: uses API middleware
enrollment-sys-api/bootstrap/app.php - Course catalog → Course model: queries
enrollment-sys-api/app/Http/Controllers/Api/CourseController.php - Course catalog → JSON resources: formats course data
enrollment-sys-api/app/Http/Controllers/Api/CourseController.php - Schedule browsing → Schedule model: queries
- Student enrollment → Schedule model: checks capacity
enrollment-sys-api/app/Http/Controllers/Api/EnrollmentController.php - Student enrollment → Enrollment model: creates and updates
enrollment-sys-api/app/Http/Controllers/Api/EnrollmentController.php - Student enrollment → JSON resources: formats enrollment
enrollment-sys-api/app/Http/Controllers/Api/EnrollmentController.php - Receipt payments → Enrollment model: checks balance
enrollment-sys-api/app/Http/Controllers/Api/PaymentController.php - Receipt payments → Payment model: creates payment
enrollment-sys-api/app/Http/Controllers/Api/PaymentController.php - Receipt payments → Uploaded receipts: stores receipt
enrollment-sys-api/app/Http/Controllers/Api/PaymentController.php - Receipt payments → JSON resources: formats payment
enrollment-sys-api/app/Http/Controllers/Api/PaymentController.php - Enrollment review → Enrollment model: reviews status
enrollment-sys-api/app/Http/Controllers/Api/Admin/EnrollmentReviewController.php - Enrollment review → JSON resources: formats enrollment
enrollment-sys-api/app/Http/Controllers/Api/Admin/EnrollmentReviewController.php - Payment review → Payment model: verifies payment
enrollment-sys-api/app/Http/Controllers/Api/Admin/PaymentReviewController.php - Payment review → Enrollment model: updates enrollment
enrollment-sys-api/app/Http/Controllers/Api/Admin/PaymentReviewController.php - Payment review → JSON resources: formats payment
enrollment-sys-api/app/Http/Controllers/Api/Admin/PaymentReviewController.php - Course management → Course model: manages
enrollment-sys-api/app/Http/Controllers/Api/Admin/CourseManageController.php - Schedule management → Schedule model: manages
enrollment-sys-api/app/Http/Controllers/Api/Admin/ScheduleManageController.php - Announcement management → Announcement model: manages
enrollment-sys-api/app/Http/Controllers/Api/Admin/AnnouncementManageController.php - Announcements → Announcement model: queries
enrollment-sys-api/app/Http/Controllers/Api/AnnouncementController.php - Profile management → User model: updates profile
enrollment-sys-api/app/Http/Controllers/Api/ProfileController.php - Student enrollment → Shared API responses: uses error helper
- Course management → Shared API responses: uses response helpers
enrollment-sys-api/app/Http/Controllers/Api/Admin/CourseManageController.php - Schedule management → Shared API responses: uses response helpers
enrollment-sys-api/app/Http/Controllers/Api/Admin/ScheduleManageController.php - Announcement management → Shared API responses: uses response helpers
enrollment-sys-api/app/Http/Controllers/Api/Admin/AnnouncementManageController.php - Enrollment review → Shared API responses: uses response helpers
enrollment-sys-api/app/Http/Controllers/Api/Admin/EnrollmentReviewController.php - Payment review → Shared API responses: uses response helpers
enrollment-sys-api/app/Http/Controllers/Api/Admin/PaymentReviewController.php - Course model → MySQL database: persists course data
- Schedule model → MySQL database: persists schedule data
- Enrollment model → MySQL database: persists enrollment data
- Payment model → MySQL database: persists payment data
- User model → MySQL database: persists user data