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) {
static::Pending => '待编辑',
static::Processing => '待审核',
static::Passed => '已完成',
static::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 [
static::Pending->value => '<span class="label label-primary">待编辑</span>',
static::Processing->value => '<span class="label label-warning">待审核</span>',
static::Passed->value => '<span class="label label-success">已完成</span>',
static::Rejected->value => '<span class="label label-danger">未通过</span>',
];
}
}