<?php

namespace App\Models;

use App\Models\Onboarding\Onboarding;
use App\Models\Onboarding\OnboardingActivity;
use App\Models\Staff\Staff;
use App\Traits\AbstractModel;
use App\Traits\Auditable;
use App\Traits\DeleteGuarded;
use App\Traits\HasDynamicSchema;
use App\Traits\ModelFinder;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes;

class OnboardingDetail extends Model
{
    use HasFactory, SoftDeletes;

    protected $fillable = ['onboarding_id', 'onboarding_activity_id', 'status', 'staff_reviewer', 'review_comment', 'reviewed_on', 'staff_approver', 'approve_comment', 'approved_on'];

    public function onboarding(): BelongsTo
    {
        return $this->belongsTo(Onboarding::class, 'onboarding_id');
    }

    public function onboardingActivity(): BelongsTo
    {
        return $this->belongsTo(OnboardingActivity::class, 'onboarding_activity_id');
    }

    public function reviewer(): BelongsTo
    {
        return $this->belongsTo(Staff::class, 'staff_reviewer');
    }

}
