<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;

class SuratKeteranganAhliWaris extends Model
{
    use HasFactory;

    protected $table = 'surat_keterangan_ahli_waris';

    protected $fillable = [
        'nama_pewaris',
        'nik_pewaris',
        'tempat_lahir_pewaris',
        'tanggal_lahir_pewaris',
        'agama_pewaris',
        'pekerjaan_pewaris',
        'alamat_terakhir_pewaris',
        'tanggal_meninggal_pewaris',
        'tempat_meninggal_pewaris',

        'nama_ahli_waris',
        'nik_ahli_waris',
        'nomor_kartu_keluarga_ahli_waris',
        'tempat_lahir_ahli_waris',
        'tanggal_lahir_ahli_waris',
        'jenis_kelamin_ahli_waris',
        'agama_ahli_waris',
        'pekerjaan_ahli_waris',
        'hubungan_dengan_pewaris',
        'alamat_ahli_waris',

        'foto_ktp_pewaris_path',
        'foto_ktp_ahli_waris_path',
        'foto_kartu_keluarga_path',
        'file_surat_kematian_pewaris_path',
        'file_akta_kelahiran_ahli_waris_path',
        'file_akta_nikah_path',
        'file_surat_pengantar_path',

        'keperluan',
        'nomor_surat',
        'tanggal_dikeluarkan',
        'status',
        'file_path',
        'catatan_penolakan',
        'disetujui_oleh',
        'tanggal_disetujui',
    ];

    protected $casts = [
        'tanggal_lahir_pewaris' => 'date',
        'tanggal_meninggal_pewaris' => 'date',
        'tanggal_lahir_ahli_waris' => 'date',
        'tanggal_dikeluarkan' => 'date',
        'tanggal_disetujui' => 'datetime',
    ];

    public function disetujuiOleh(): BelongsTo
    {
        return $this->belongsTo(User::class, 'disetujui_oleh');
    }
}