staff_data/packages/common/src/enum.ts

204 lines
6.2 KiB
TypeScript
Executable File

export enum SocketMsgType {
NOTIFY,
}
export enum PostType {
POST = "post",
POST_COMMENT = "post_comment",
COURSE_REVIEW = "course_review",
COURSE = "couse",
LECTURE = "lecture",
SECTION = "section",
}
export enum LectureType {
VIDEO = "video",
ARTICLE = "article",
}
export enum TaxonomySlug {
CATEGORY = "category",
UNIT = "unit",
TAG = "tag",
LEVEL = "level",
}
export enum VisitType {
STAR = "star",
READED = "read",
LIKE = "like",
HATE = "hate",
COURSE_REVIEW = "course_review",
}
export enum StorageProvider {
LOCAL = "LOCAL",
S3 = "S3",
OSS = "OSS",
COS = "COS",
CDN = "CDN",
}
export enum ResourceStatus {
UPLOADING = "UPLOADING",
UPLOADED = "UPLOADED",
PROCESS_PENDING = "PROCESS_PENDING",
PROCESSING = "PROCESSING",
PROCESSED = "PROCESSED",
PROCESS_FAILED = "PROCESS_FAILED",
}
export enum ObjectType {
DEPARTMENT = "department",
STAFF = "staff",
COMMENT = "comment",
TERM = "term",
APP_CONFIG = "app_config",
ROLE = "role",
ROLE_MAP = "rolemap",
MESSAGE = "message",
POST = "post",
VISIT = "visit",
COURSE = "course",
SECTION = "section",
LECTURE = "lecture",
ENROLLMENT = "enrollment",
RESOURCE = "resource",
}
export enum RolePerms {
// Create Permissions 创建权限
CREATE_ALERT = "CREATE_ALERT", // 创建警报
CREATE_INSTRUCTION = "CREATE_INSTRUCTION", // 创建指令
CREATE_TROUBLE = "CREATE_TROUBLE", // 创建问题
CREATE_WORKPROGRESS = "CREATE_WORKPROGRESS", // 创建工作进度
CREATE_ASSESSMENT = "CREATE_ASSESSMENT", // 创建评估
CREATE_TERM = "CREATE_TERM", // 创建术语
// Read Permissions 读取权限
READ_ANY_TROUBLE = "READ_ANY_TROUBLE", // 读取任何问题
READ_DOM_TROUBLE = "READ_DOM_TROUBLE", // 读取领域问题
READ_AUDIT_TROUBLE = "READ_AUDIT_TROUBLE",
READ_ANY_CHART = "READ_ANY_CHART", // 读取任何图表
READ_DOM_CHART = "READ_DOM_CHART", // 读取领域图表
READ_ANY_ASSESSMENT = "READ_ANY_ASSESSMENT", // 读取任何评估
READ_DOM_ASSESSMENT = "READ_DOM_ASSESSMENT", // 读取领域评估
READ_ANY_TERM = "READ_ANY_TERM", // 读取任何术语
READ_DOM_TERM = "READ_DOM_TERM", // 读取领域术语
READ_ANY_POST = "READ_ANY_POST", // 读取任何问题
READ_DOM_POST = "READ_DOM_POST", // 读取领域问题
MANAGE_ANY_POST = "MANAGE_ANY_POST",
MANAGE_DOM_POST = "MANAGE_DOM_POST",
MANAGE_ANY_TROUBLE = "MANAGE_ANY_TROUBLE",
MANAGE_DOM_TROUBLE = "MANAGE_DOM_TROUBLE",
MANAGE_DOM_TERM = "MANAGE_DOM_TERM",
MANAGE_ANY_TERM = "MANAGE_ANY_TERM",
MANAGE_BASE_SETTING = "MANAGE_BASE_SETTING",
// Staff and Department Permissions
MANAGE_ANY_STAFF = "MANAGE_ANY_STAFF",
MANAGE_DOM_STAFF = "MANAGE_DOM_STAFF",
MANAGE_ANY_DEPT = "MANAGE_ANY_DEPT",
MANAGE_DOM_DEPT = "MANAGE_DOM_DEPT",
// Role Permissions
MANAGE_ANY_ROLE = "MANAGE_ANY_ROLE",
MANAGE_DOM_ROLE = "MANAGE_DOM_ROLE",
}
export enum AppConfigSlug {
BASE_SETTING = "base_setting",
}
// 资源类型的枚举,定义了不同类型的资源,以字符串值表示
export enum ResourceType {
VIDEO = "video", // 视频资源
PDF = "pdf", // PDF文档
DOC = "doc", // Word文档
EXCEL = "excel", // Excel表格
PPT = "ppt", // PowerPoint演示文稿
CODE = "code", // 代码文件
LINK = "link", // 超链接
IMAGE = "image", // 图片资源
AUDIO = "audio", // 音频资源
ZIP = "zip", // 压缩包文件
OTHER = "other", // 其他未分类资源
}
// 课程等级的枚举,描述了不同学习水平的课程
export enum CourseLevel {
BEGINNER = "beginner", // 初级课程,适合初学者
INTERMEDIATE = "intermediate", // 中级课程,适合有一定基础的学习者
ADVANCED = "advanced", // 高级课程,适合高级水平学习者
ALL_LEVELS = "all_levels", // 适用于所有学习水平的课程
}
// 课时(课程内容)类型的枚举,定义了课程中可能包含的不同内容形式
export enum LessonType {
VIDEO = "video", // 视频课程
ARTICLE = "article", // 文章型课程内容
QUIZ = "quiz", // 测验类型
ASSIGNMENT = "assignment", // 作业类型
}
// 课程状态的枚举,定义了课程生命周期中的各个状态
export enum CourseStatus {
DRAFT = "draft", // 草稿状态的课程,尚未发布
UNDER_REVIEW = "under_review", // 正在审核中的课程
PUBLISHED = "published", // 已发布的课程,可以被学员报名学习
ARCHIVED = "archived", // 已归档的课程,不再对外展示
}
export const CourseStatusLabel: Record<CourseStatus, string> = {
[CourseStatus.DRAFT]: "草稿",
[CourseStatus.UNDER_REVIEW]: "审核中",
[CourseStatus.PUBLISHED]: "已发布",
[CourseStatus.ARCHIVED]: "已归档",
};
// 报名状态的枚举,描述了用户报名参加课程的不同状态
export enum EnrollmentStatus {
PENDING = "pending", // 报名待处理状态
ACTIVE = "active", // 活跃状态,用户可参与课程
COMPLETED = "completed", // 完成状态,用户已完成课程
CANCELLED = "cancelled", // 已取消的报名
REFUNDED = "refunded", // 已退款的报名
}
// 授课角色的枚举,定义了讲师在课程中的角色分配
export enum InstructorRole {
MAIN = "main", // 主讲教师
ASSISTANT = "assistant", // 助教
}
export const EnrollmentStatusLabel = {
[EnrollmentStatus.PENDING]: "待处理",
[EnrollmentStatus.ACTIVE]: "进行中",
[EnrollmentStatus.COMPLETED]: "已完成",
[EnrollmentStatus.CANCELLED]: "已取消",
[EnrollmentStatus.REFUNDED]: "已退款",
};
export const InstructorRoleLabel = {
[InstructorRole.MAIN]: "主讲教师",
[InstructorRole.ASSISTANT]: "助教",
};
export const ResourceTypeLabel = {
[ResourceType.VIDEO]: "视频",
[ResourceType.PDF]: "PDF文档",
[ResourceType.DOC]: "Word文档",
[ResourceType.EXCEL]: "Excel表格",
[ResourceType.PPT]: "PPT演示文稿",
[ResourceType.CODE]: "代码文件",
[ResourceType.LINK]: "链接",
[ResourceType.IMAGE]: "图片",
[ResourceType.AUDIO]: "音频",
[ResourceType.ZIP]: "压缩包",
[ResourceType.OTHER]: "其他",
};
export const CourseLevelLabel = {
[CourseLevel.BEGINNER]: "初级",
[CourseLevel.INTERMEDIATE]: "中级",
[CourseLevel.ADVANCED]: "高级",
[CourseLevel.ALL_LEVELS]: "不限级别",
};
export const LessonTypeLabel = {
[LessonType.VIDEO]: "视频课程",
[LessonType.ARTICLE]: "图文课程",
[LessonType.QUIZ]: "测验",
[LessonType.ASSIGNMENT]: "作业",
};