Files
wwjcloud/src/core/common/enums/channel-dict.enum.ts
wanwu 2285206b3f feat: WWJCloud 企业级全栈框架 v0.3.5 完整更新
🚀 核心更新:
-  完善 NestJS 企业级架构设计
-  优化配置中心和基础设施层
-  增强第三方服务集成能力
-  完善多租户架构支持
- 🎯 对标 Java Spring Boot 和 PHP ThinkPHP

📦 新增文件:
- wwjcloud-nest 完整框架结构
- Docker 容器化配置
- 管理后台界面
- 数据库迁移脚本

🔑 Key: ebb38b43ec39f355f071294fd1cf9c42
2025-10-13 01:27:37 +08:00

136 lines
3.1 KiB
TypeScript

/**
* ChannelDict 枚举
* 定义相关的常量值
*/
export enum ChannelDictEnum {
// 状态枚举
STATUS_ACTIVE = 'active',
STATUS_INACTIVE = 'inactive',
STATUS_PENDING = 'pending',
STATUS_DELETED = 'deleted',
// 类型枚举
TYPE_NORMAL = 'normal',
TYPE_PREMIUM = 'premium',
TYPE_VIP = 'vip',
// 级别枚举
LEVEL_LOW = 1,
LEVEL_MEDIUM = 2,
LEVEL_HIGH = 3,
LEVEL_CRITICAL = 4,
}
/**
* ChannelDict 字典映射
*/
export const channelDictDict = {
// 状态映射
status: {
[ChannelDictEnum.STATUS_ACTIVE]: '激活',
[ChannelDictEnum.STATUS_INACTIVE]: '未激活',
[ChannelDictEnum.STATUS_PENDING]: '待处理',
[ChannelDictEnum.STATUS_DELETED]: '已删除',
},
// 类型映射
type: {
[ChannelDictEnum.TYPE_NORMAL]: '普通',
[ChannelDictEnum.TYPE_PREMIUM]: '高级',
[ChannelDictEnum.TYPE_VIP]: 'VIP',
},
// 级别映射
level: {
[ChannelDictEnum.LEVEL_LOW]: '低',
[ChannelDictEnum.LEVEL_MEDIUM]: '中',
[ChannelDictEnum.LEVEL_HIGH]: '高',
[ChannelDictEnum.LEVEL_CRITICAL]: '紧急',
},
} as const;
/**
* ChannelDict 工具类
*/
export class ChannelDictEnumUtil {
/**
* 获取状态文本
*/
static getStatusText(status: ChannelDictEnum): string {
return (channelDictDict.status as any)[status] || '未知';
}
/**
* 获取类型文本
*/
static getTypeText(type: ChannelDictEnum): string {
return (channelDictDict.type as any)[type] || '未知';
}
/**
* 获取级别文本
*/
static getLevelText(level: ChannelDictEnum): string {
return (channelDictDict.level as any)[level] || '未知';
}
/**
* 获取所有状态选项
*/
static getStatusOptions(): Array<{ value: string; label: string }> {
return Object.entries(channelDictDict.status).map(([value, label]) => ({
value,
label: label as string,
}));
}
/**
* 获取所有类型选项
*/
static getTypeOptions(): Array<{ value: string; label: string }> {
return Object.entries(channelDictDict.type).map(([value, label]) => ({
value,
label: label as string,
}));
}
/**
* 获取所有级别选项
*/
static getLevelOptions(): Array<{ value: number; label: string }> {
return Object.entries(channelDictDict.level).map(([value, label]) => ({
value: Number(value),
label: label as string,
}));
}
/**
* 验证状态值
*/
static isValidStatus(status: string): boolean {
return Object.values(ChannelDictEnum).includes(status as ChannelDictEnum);
}
/**
* 验证类型值
*/
static isValidType(type: string): boolean {
return Object.values(ChannelDictEnum).includes(type as ChannelDictEnum);
}
/**
* 验证级别值
*/
static isValidLevel(level: number): boolean {
return Object.values(ChannelDictEnum).includes(level as ChannelDictEnum);
}
}
/**
* ChannelDict 类型定义
*/
export type ChannelDictEnumStatus = keyof typeof channelDictDict.status;
export type ChannelDictEnumType = keyof typeof channelDictDict.type;
export type ChannelDictEnumLevel = keyof typeof channelDictDict.level;