Carbon::parse($value)->translatedFormat('l d/m/Y') ); } public function amount(): Attribute { return Attribute::make( get:fn($value) => $this->transaction_id ? $this->setRupiahFormat($value, 0, true) : '- ' . $this->setRupiahFormat($value, 0, true) ); } public function type(): Attribute { return Attribute::make( get:fn($value) => $value == 1 ? __('words.income') : __('words.expense') ); } public function outlet() { return $this->belongsTo(Outlet::class); } public function scopeFilter($query, array $filters) { $query->when($filters['startDate'] ?? null, function ($query, $date) { $query->whereDate('created_at', '>=', $date); })->when($filters['endDate'] ?? null, function ($query, $date) { $query->whereDate('created_at', '<=', $date); })->when($filters['outlet'] ?? null, function ($query, $outlet) { $query->where('outlet_id', $outlet); }); } }