store-manage/app/Enums/LedgerStatus.php

42 lines
1.1 KiB
PHP

<?php
namespace App\Enums;
enum LedgerStatus: int
{
case Pending = 1;
case Processing = 2;
case Passed = 3;
case Rejected = 4;
public function label(): string
{
return match ($this) {
self::Pending => '待编辑',
self::Processing => '待审核',
self::Passed => '已完成',
self::Rejected => '未通过',
};
}
public static function options(): array
{
return collect(self::cases())
->map(fn (LedgerStatus $case) => [
'label' => $case->label(),
'value' => $case->value,
])
->all();
}
public static function labelMap(): array
{
return [
self::Pending->value => '<span class="label label-primary">待编辑</span>',
self::Processing->value => '<span class="label label-warning">待审核</span>',
self::Passed->value => '<span class="label label-success">已完成</span>',
self::Rejected->value => '<span class="label label-danger">未通过</span>',
];
}
}