app->bind(StudentServiceContract::class, StudentService::class); $this->app->bind(StudentIdentifierGeneratorContract::class, SequentialStudentIdentifierGenerator::class); $this->app->bind(GuardianServiceContract::class, GuardianService::class); $this->app->bind(EnrollmentServiceContract::class, EnrollmentService::class); $this->app->bind(AttendanceServiceContract::class, AttendanceService::class); $this->app->bind(AttendancePolicyContract::class, StandardSchoolAttendancePolicy::class); $this->app->bind(AcademicCalendarProviderContract::class, StandardAcademicCalendarProvider::class); $this->app->bind(GradeScalePolicyContract::class, DefaultGradeScalePolicy::class); $this->app->bind(PromotionPolicyContract::class, DefaultPromotionPolicy::class); $this->app->bind(InvoiceServiceContract::class, InvoiceService::class); $this->app->bind(PaymentServiceContract::class, PaymentService::class); $this->app->bind(PaymentAllocationPolicyContract::class, DefaultPaymentAllocationPolicy::class); $this->app->bind(FileAccessPolicyContract::class, PaymentFileAccessPolicy::class); $this->app->bind(FileStorageServiceContract::class, LaravelLocalFileStorageService::class); $this->app->bind(CommunicationServiceContract::class, CommunicationService::class); $this->app->bind(RecipientResolverContract::class, RecipientResolver::class); $this->app->bind(CommunicationPreferencePolicyContract::class, DefaultCommunicationPreferencePolicy::class); $this->app->bind(ReportServiceContract::class, ReportService::class); } }