<?php

namespace Database\Seeders;

use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    use WithoutModelEvents;

    public function run(): void
    {
        $seeders = [
            RolePermissionSeeder::class,
            DepartmentSeeder::class,
            AcademicTermSeeder::class,
            UserSeeder::class,
        ];

        if (app()->environment('local')) {
            $seeders = [
                ...$seeders,
                DepartmentLeadershipSeeder::class,
                CourseSeeder::class,
                CourseClassSeeder::class,
                ClassEnrollmentSeeder::class,
                CourseRegistrationSeeder::class,
                MaterialSeeder::class,
                AssignmentSeeder::class,
                SubmissionSeeder::class,
                ScheduleSeeder::class,
                AttendanceSeeder::class,
                TuitionInvoiceSeeder::class,
                TuitionPaymentSeeder::class,
                AnnouncementSeeder::class,
                LetterRequestSeeder::class,
                AcademicAdvisingLogSeeder::class,
                NotificationSeeder::class,
            ];
        }

        $this->call($seeders);
    }
}
