32 lines
831 B
PHP
32 lines
831 B
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
enum FuelType: string
|
|
{
|
|
case E10 = 'e10';
|
|
case E5 = 'e5';
|
|
case B7Standard = 'b7_standard';
|
|
case B7Premium = 'b7_premium';
|
|
case B10 = 'b10';
|
|
case Hvo = 'hvo';
|
|
|
|
public static function fromApiValue(string $value): self
|
|
{
|
|
return self::from(strtolower($value));
|
|
}
|
|
|
|
public static function fromAlias(string $alias): self
|
|
{
|
|
return match (strtolower($alias)) {
|
|
'diesel', 'b7_standard' => self::B7Standard,
|
|
'premium_diesel', 'b7_premium' => self::B7Premium,
|
|
'petrol', 'unleaded', 'e10' => self::E10,
|
|
'premium_unleaded', 'e5' => self::E5,
|
|
'b10' => self::B10,
|
|
'hvo' => self::Hvo,
|
|
default => throw new \ValueError("Unknown fuel type alias: {$alias}"),
|
|
};
|
|
}
|
|
}
|