'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;
}
}