'در انتظار پرداخت', self::Cancelled => 'لغو شده', self::Processed => 'Processed', self::PickedUp => 'Picked Up', self::InTransit => 'In Transit', self::OutForDelivery => 'Out For Delivery', self::Failed => 'Failed', self::Delivered => 'Delivered', self::Returned => 'Returned', self::Archived => 'آرشیو', }; } public function color(): string { return match ($this) { self::PendingPayment => 'warning', self::Cancelled => 'danger', self::Processed => 'gray', self::PickedUp => 'info', self::InTransit => 'primary', self::OutForDelivery => 'success', self::Failed => 'danger', self::Delivered => 'success', self::Returned => 'warning', self::Archived => 'gray', }; } public function isPaid(): bool { return $this !== self::PendingPayment; } public function canBeCancelledByCustomer(): bool { return $this === self::PendingPayment; } }