<?php namespace App\Models; use App\Models\User; use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use App\Traits\CreatedUpdatedBy; class Jobdemands extends Model { use HasFactory, CreatedUpdatedBy; protected $primaryKey = 'job_id'; public $timestamps = true; protected $fillable =[ 'title', 'alias', 'countries_id', 'companies_id', 'salary', 'required_nos', 'contract_period', 'duty_hrs', 'working_days', 'overtime', 'food_allowance', 'transport_allowance', 'accomodation_allowance', 'medical_provided', 'insurance_provided', 'required_documents', 'qualification', 'experience', 'details', 'image', 'thumb', 'cover', 'remarks', 'postedon', 'display_order', 'status', 'created_at', 'updated_at', 'createdby', 'updatedby', ]; protected $appends = ['status_name']; protected function getStatusNameAttribute() { return $this->status == 1 ? '<span class="badge text-bg-success-soft"> Active </span>' : '<span class="badge text-bg-danger-soft">Inactive</span>'; } protected function createdBy(): Attribute { return Attribute::make( get: fn ($value) => User::find($value) ? User::find($value)->name : '', ); } protected function updatedBy(): Attribute { return Attribute::make( get: fn ($value) => User::find($value) ? User::find($value)->name : '', ); } }