fix tables to have school year, and remove school year from other tables.
API CI/CD / Validate (composer + pint) (push) Successful in 3m6s
API CI/CD / Test (PHPUnit) (push) Failing after 5m48s
API CI/CD / Build frontend assets (push) Successful in 1m2s
API CI/CD / Security audit (push) Failing after 1m33s
API CI/CD / Deploy to shared hosting (PHP) (push) Has been skipped

This commit is contained in:
root
2026-07-06 22:27:21 -04:00
parent 304fa6bfd0
commit 58726ee0e9
13 changed files with 1343 additions and 120 deletions
@@ -4,6 +4,7 @@ namespace App\Services\SchoolYears;
use App\Models\Configuration;
use App\Models\SchoolYear;
use App\Support\SchoolYear\SchoolYearTableRegistry;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;
@@ -143,15 +144,17 @@ class SchoolYearContextService
private function legacySchoolYearNames(): array
{
$tables = [
'students', 'parents', 'users', 'staff', 'student_class', 'teacher_class',
'events', 'calendar_events', 'scan_log', 'exam_drafts', 'inventory_items',
'inventory_movements', 'certificate_records', 'semester_scores', 'final_scores',
'student_class', 'teacher_class',
'events', 'calendar_events', 'exam_drafts',
'certificate_records', 'semester_scores', 'final_score',
'student_decisions', 'below_sixty_decisions', 'whatsapp_group_links',
];
$names = [];
foreach ($tables as $table) {
if (! Schema::hasTable($table) || ! Schema::hasColumn($table, 'school_year')) {
if (! SchoolYearTableRegistry::isYearScoped($table)
|| ! Schema::hasTable($table)
|| ! Schema::hasColumn($table, 'school_year')) {
continue;
}