'date', 'last_working_date' => 'date', 'processed_at' => 'datetime', 'total_payable' => 'decimal:0', 'total_deductions' => 'decimal:0', 'net_payable' => 'decimal:0', ]; public function tenant() { return $this->belongsTo(Tenant::class); } public function employee() { return $this->belongsTo(Employee::class); } public function currency() { return $this->belongsTo(Currency::class); } public function processedBy() { return $this->belongsTo(User::class, 'processed_by'); } public function financials() { return $this->hasMany(EmployeeFinancial::class, 'settlement_id'); } public function getSettlementTypeLabelAttribute() { return match($this->settlement_type) { 'resignation' => 'استعفا', 'termination' => 'اخراج', 'end_of_contract' => 'پایان قرارداد', default => $this->settlement_type, }; } }