'datetime', 'created_at' => 'datetime', 'updated_at' => 'datetime', 'tanggal_pembukaan' => 'datetime', 'tanggal_penutupan' => 'datetime', 'tanggal_verifikasi' => 'datetime', 'tanggal_pengumuman' => 'datetime' ]; public function getStatusBadgeAttribute() { return $this->status == 'Dibuka' ? 'Dibuka' : 'Ditutup'; } public function getKodeSemesterAttribute() { return $this->semester . '-' . $this->tahun; } public function getTahunAkademikAttribute() { if ($this->semester == 'Ganjil') { return $this->tahun . '/' . ($this->tahun + 1); } return ($this->tahun - 1) . '/' . $this->tahun; } public function pengajuan() { return $this->hasMany(PengajuanUkt::class); } public function canSubmit($mahasiswaId) { $existing = $this->pengajuan() ->where('mahasiswa_id', $mahasiswaId) ->first(); return !$existing || $existing->status_validasi === 'tidak valid'; } public function getKuotaAttribute() { return $this->jenis_form == 'penurunan' ? $this->kuota_penurunan : $this->kuota_pengangsuran; } }