$this->id, 'invoice_number' => $this->invoice_number, 'service_name' => $this->order?->orderItems->first()?->product?->name ?? ('Đơn hàng ' . $this->order?->order_num), 'total' => (float) $this->total, // Khách trả một phần thì hoá đơn vẫn chưa thanh toán — phải thấy được còn thiếu bao nhiêu. 'amount_paid' => (float) $this->amount_paid, 'outstanding' => (float) \App\Services\InvoicePaymentService::outstanding($this->resource), 'status' => $this->status, 'status_text' => InvoiceStatus::tryFrom((int) $this->status)?->label() ?? '-', 'created_at' => $this->created_at?->toISOString(), 'order_id' => $this->order?->id, 'order_num' => $this->order?->order_num, ]; } }