35 lines
671 B
PHP
35 lines
671 B
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
use App\Enums\Traits\HasLabels;
|
|
|
|
/**
|
|
* @OA\Schema(
|
|
* schema="UserGender",
|
|
* type="string",
|
|
* enum={"male", "female", "other", "unset"},
|
|
* example="male"
|
|
* )
|
|
*/
|
|
enum UserGender: string
|
|
{
|
|
use HasLabels;
|
|
|
|
case Male = 'male';
|
|
case Female = 'female';
|
|
case Other = 'other';
|
|
case Unset = 'unset';
|
|
|
|
// 返回對應的顯示文字
|
|
public function labels(): string
|
|
{
|
|
return match($this) {
|
|
self::Male => __('enums.Male'),
|
|
self::Female => __('enums.Female'),
|
|
self::Other => __('enums.Other'),
|
|
self::Unset => __('enums.Unset'),
|
|
};
|
|
}
|
|
|
|
} |