Initial project import for team collaboration.
Exclude local docs, MCP, and secrets via gitignore. Made-with: Cursor
This commit is contained in:
54
app/Config/Roles.php
Normal file
54
app/Config/Roles.php
Normal file
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
namespace Config;
|
||||
|
||||
use CodeIgniter\Config\BaseConfig;
|
||||
|
||||
/**
|
||||
* 사용자 역할(mb_level) 코드 매핑
|
||||
*
|
||||
* Phase 2 메뉴·권한 제어 시 config('Roles')로 참조
|
||||
*/
|
||||
class Roles extends BaseConfig
|
||||
{
|
||||
/**
|
||||
* mb_level 상수 (member.mb_level)
|
||||
*/
|
||||
public const LEVEL_SUPER_ADMIN = 4;
|
||||
public const LEVEL_LOCAL_ADMIN = 3; // 지자체관리자
|
||||
public const LEVEL_SHOP = 2; // 지정판매소
|
||||
public const LEVEL_CITIZEN = 1; // 일반 사용자(시민)
|
||||
|
||||
/**
|
||||
* mb_level → 한글명 매핑
|
||||
*
|
||||
* @var array<int, string>
|
||||
*/
|
||||
public array $levelNames = [
|
||||
self::LEVEL_CITIZEN => '일반 사용자',
|
||||
self::LEVEL_SHOP => '지정판매소',
|
||||
self::LEVEL_LOCAL_ADMIN => '지자체관리자',
|
||||
self::LEVEL_SUPER_ADMIN => 'super admin',
|
||||
];
|
||||
|
||||
/**
|
||||
* 자체 회원가입 시 기본 역할 (mb_level)
|
||||
*/
|
||||
public int $defaultLevelForSelfRegister = self::LEVEL_CITIZEN;
|
||||
|
||||
/**
|
||||
* mb_level 유효 여부
|
||||
*/
|
||||
public function isValidLevel(int $level): bool
|
||||
{
|
||||
return isset($this->levelNames[$level]);
|
||||
}
|
||||
|
||||
/**
|
||||
* mb_level 한글명 반환
|
||||
*/
|
||||
public function getLevelName(int $level): string
|
||||
{
|
||||
return $this->levelNames[$level] ?? '알 수 없음';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user