| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- <?php
- declare(strict_types=1);
- namespace App\Enums;
- enum ProductionOrderStatus: string
- {
- case Placed = 'placed';
- case ReadyAtFactory = 'ready_at_factory';
- case InTransit = 'in_transit';
- case PartialReceipt = 'partial_receipt';
- case InStock = 'in_stock';
- case Closed = 'closed';
- public const LABELS = [
- self::Placed->value => 'Размещен',
- self::ReadyAtFactory->value => 'Готов на фабрике',
- self::InTransit->value => 'В пути',
- self::PartialReceipt->value => 'Частичное поступление',
- self::InStock->value => 'На складе',
- self::Closed->value => 'Закрыт',
- ];
- public function label(): string
- {
- return self::LABELS[$this->value];
- }
- public function color(): string
- {
- return match ($this) {
- self::Placed => 'secondary',
- self::ReadyAtFactory => 'info',
- self::InTransit => 'primary',
- self::PartialReceipt => 'warning',
- self::InStock => 'success',
- self::Closed => 'dark',
- };
- }
- /** @return array<string, string> */
- public static function options(): array
- {
- return self::LABELS;
- }
- }
|