51 lines
1.2 KiB
PHP
51 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Modules\Permissions\Enums;
|
|
|
|
use Catch\Enums\Enum;
|
|
|
|
enum DataRange: int implements Enum
|
|
{
|
|
case All_Data = 1; // 全部数据
|
|
case Personal_Choose = 2; // 自定义数据
|
|
case Personal_Data = 3; // 本人数据
|
|
case Department_Data = 4; // 部门数据
|
|
case Department_DOWN_Data = 5; // 部门及以下数据
|
|
|
|
|
|
public function value(): int
|
|
{
|
|
// TODO: Implement value() method.
|
|
return match ($this) {
|
|
self::All_Data => 1,
|
|
self::Personal_Choose => 2,
|
|
self::Personal_Data => 3,
|
|
self::Department_Data => 4,
|
|
self::Department_DOWN_Data => 5,
|
|
};
|
|
}
|
|
|
|
public function name(): string
|
|
{
|
|
// TODO: Implement name() method.
|
|
return match ($this) {
|
|
self::All_Data => '全部数据',
|
|
self::Personal_Choose => '自定义数据',
|
|
self::Personal_Data => '本人数据',
|
|
self::Department_Data => '部门数据',
|
|
self::Department_DOWN_Data => '部门及以下数据',
|
|
};
|
|
}
|
|
|
|
/**
|
|
* assert value
|
|
*
|
|
* @param int $value
|
|
* @return bool
|
|
*/
|
|
public function assert(int $value): bool
|
|
{
|
|
return $this->value === $value;
|
|
}
|
|
}
|