Fix semester context, attendance rosters, and billing workflows
- load global semester helpers consistently and use date-based semester defaults - fix grading and daily attendance duplicate student/section rows - keep attendance violations scoped to the current semester by default - update invoice, refund, discount, payment, and financial aid flows - add configuration cleanup migrations for duplicate calendar/semester keys - refresh parent registration/report-card and print request handling - update related models, services, views, cron notes, and test coverage
This commit is contained in:
+30
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
namespace App\Database\Migrations;
|
||||
|
||||
use CodeIgniter\Database\Migration;
|
||||
|
||||
class RemoveAdditionalDuplicateCalendarConfigurationKeys extends Migration
|
||||
{
|
||||
private const DUPLICATE_KEYS = [
|
||||
'end_of_registration',
|
||||
'last_school_day',
|
||||
'year_end_date',
|
||||
];
|
||||
|
||||
public function up(): void
|
||||
{
|
||||
if (! $this->db->tableExists('configuration')) {
|
||||
return;
|
||||
}
|
||||
|
||||
$this->db->table('configuration')
|
||||
->whereIn('config_key', self::DUPLICATE_KEYS)
|
||||
->delete();
|
||||
}
|
||||
|
||||
public function down(): void
|
||||
{
|
||||
// Obsolete duplicate keys should not be recreated.
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user