File "PaymentStatusEnum.php"
Full Path: /var/www/html/back/app/Domain/Payment/Enums/PaymentStatusEnum.php
File size: 2.58 KB
MIME-type: text/x-php
Charset: utf-8
<?php
declare(strict_types=1);
namespace App\Domain\Payment\Enums;
enum PaymentStatusEnum: string
{
case STATUS_DRAFT = 'draft';
case STATUS_FINALIZE = 'finalize';
case STATUS_FINALIZE_ONE_TWO = 'finalize-one-two';
case STATUS_FINALIZE_TWO_TWO = 'finalize-two-two';
case STATUS_APPROVE = 'approve';
case STATUS_AGREE_ONE_TWO = 'agree-one-two';
case STATUS_AGREE_TWO_TWO = 'agree-two-two';
case STATUS_SENT = 'sent';
case STATUS_MOVING = 'moving';
case STATUS_PAY = 'pay';
case STATUS_ISSUE = 'issue';
case STATUS_PAID = 'paid';
case STATUS_ISSUED = 'issued';
case STATUS_RECEIVED = 'received';
public function title(): string
{
return match ($this) {
self::STATUS_DRAFT => 'Черновик',
self::STATUS_FINALIZE => 'Доработать',
self::STATUS_FINALIZE_ONE_TWO => 'Доработать 1/2',
self::STATUS_FINALIZE_TWO_TWO => 'Доработать 2/2',
self::STATUS_APPROVE => 'Согласовать',
self::STATUS_AGREE_ONE_TWO => 'Согласовать 1/2',
self::STATUS_AGREE_TWO_TWO => 'Согласовать 2/2',
self::STATUS_SENT => 'Отправлен',
self::STATUS_MOVING => 'Перемещение',
self::STATUS_PAY => 'Оплатить',
self::STATUS_ISSUE => 'Выдать',
self::STATUS_PAID => 'Оплачен',
self::STATUS_ISSUED => 'Выдано',
self::STATUS_RECEIVED => 'Получено'
};
}
public static function values(): array
{
return array_column(self::cases(), 'value');
}
public function getLabel(): ?string
{
return match ($this) {
self::STATUS_DRAFT => 'Черновик',
self::STATUS_FINALIZE => 'Доработать',
self::STATUS_FINALIZE_ONE_TWO => 'Доработать 1/2',
self::STATUS_FINALIZE_TWO_TWO => 'Доработать 2/2',
self::STATUS_APPROVE => 'Согласовать',
self::STATUS_AGREE_ONE_TWO => 'Согласовать 1/2',
self::STATUS_AGREE_TWO_TWO => 'Согласовать 2/2',
self::STATUS_SENT => 'Отправлен',
self::STATUS_MOVING => 'Перемещение',
self::STATUS_PAY => 'Оплатить',
self::STATUS_ISSUE => 'Выдать',
self::STATUS_PAID => 'Оплачен',
self::STATUS_ISSUED => 'Выдано',
self::STATUS_RECEIVED => 'Получено'
};
}
}