55 lines
1.6 KiB
PHP
Executable File
55 lines
1.6 KiB
PHP
Executable File
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
use BenSampo\Enum\Enum;
|
|
use Illuminate\Support\Arr;
|
|
|
|
final class LottState extends Enum
|
|
{
|
|
const NONE = 0; // 下单未支付,无
|
|
const WIN = 1; // 中
|
|
const LOSS = 2; // 不中
|
|
const WAIT = 3; // 待开,已出票
|
|
const DRAFT = 4; // 待出票,出票中
|
|
const PENDING = 5; // 待接单,未出票
|
|
const REVOKE = 6; // 撤销订单
|
|
const SEND = 7; // 已派奖
|
|
const DELETE = 20; // 未支付,系统删除
|
|
const CANCEL = 21; // 未接单,系统取消订单
|
|
|
|
public static function asOptionArray()
|
|
{
|
|
$result = [];
|
|
$result[] = ['id' => 0, 'name' => '全部'];
|
|
return array_merge($result, [
|
|
['id' => LottState::PENDING, 'name' => '未出票'],
|
|
['id' => LottState::DRAFT, 'name' => '出票中'],
|
|
['id' => LottState::WAIT, 'name' => '已出票'],
|
|
['id' => LottState::REVOKE, 'name' => '已撤单'],
|
|
['id' => LottState::WIN, 'name' => '已中奖'],
|
|
['id' => LottState::LOSS, 'name' => '未中奖'],
|
|
['id' => 7, 'name' => '已派奖'],
|
|
['id' => 12, 'name' => '已取票'],
|
|
]);
|
|
}
|
|
|
|
public static function getDescription($value): string
|
|
{
|
|
$arr = self::asOptionArray();
|
|
foreach ($arr as $item) {
|
|
if ($value == $item['id']) {
|
|
return $item['name'];
|
|
}
|
|
}
|
|
|
|
if ($value == 20) {
|
|
return '系统删除';
|
|
}
|
|
if ($value == 21) {
|
|
return '系统取消订单';
|
|
}
|
|
return $value;
|
|
}
|
|
}
|