Files
database-kesiswaan/app/Models/StudentDocument.php
T
2026-04-12 06:24:30 +00:00

64 lines
1.4 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes;
class StudentDocument extends Model
{
use HasFactory;
use SoftDeletes;
protected $fillable = [
'student_id',
'document_type_id',
'file_name',
'file_path',
'file_extension',
'mime_type',
'file_size',
'document_number',
'issued_date',
'expired_date',
'description',
'verification_status',
'verification_note',
'uploaded_by',
'verified_by',
'verified_at',
];
protected function casts(): array
{
return [
'file_size' => 'integer',
'issued_date' => 'date',
'expired_date' => 'date',
'verified_at' => 'datetime',
];
}
public function student(): BelongsTo
{
return $this->belongsTo(Student::class);
}
public function documentType(): BelongsTo
{
return $this->belongsTo(DocumentType::class);
}
public function uploadedBy(): BelongsTo
{
return $this->belongsTo(User::class, 'uploaded_by');
}
public function verifiedBy(): BelongsTo
{
return $this->belongsTo(User::class, 'verified_by');
}
}