- 从服务器拉取完整代码 - 按框架规范整理项目结构 - 配置 Drone CI 测试环境部署 - 包含后端(FastAPI)、前端(Vue3)、管理端 技术栈: Vue3 + TypeScript + FastAPI + MySQL
818 lines
54 KiB
SQL
818 lines
54 KiB
SQL
-- MySQL dump 10.13 Distrib 8.0.43, for Linux (x86_64)
|
||
--
|
||
-- Host: localhost Database: kaopeilian
|
||
-- ------------------------------------------------------
|
||
-- Server version 8.0.43
|
||
|
||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||
/*!50503 SET NAMES utf8mb4 */;
|
||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||
|
||
--
|
||
-- Table structure for table `course_exam_settings`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `course_exam_settings`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `course_exam_settings` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`course_id` int NOT NULL COMMENT '课程ID',
|
||
`single_choice_count` int NOT NULL DEFAULT '10' COMMENT '单选题数量',
|
||
`multiple_choice_count` int NOT NULL DEFAULT '5' COMMENT '多选题数量',
|
||
`true_false_count` int NOT NULL DEFAULT '5' COMMENT '判断题数量',
|
||
`fill_blank_count` int NOT NULL DEFAULT '0' COMMENT '填空题数量',
|
||
`duration_minutes` int NOT NULL DEFAULT '60' COMMENT '考试时长(分钟)',
|
||
`difficulty_level` int NOT NULL DEFAULT '3' COMMENT '难度系数(1-5)',
|
||
`passing_score` int NOT NULL DEFAULT '60' COMMENT '及格分数',
|
||
`is_enabled` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否启用',
|
||
`show_answer_immediately` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否立即显示答案',
|
||
`allow_retake` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否允许重考',
|
||
`max_retake_times` int DEFAULT NULL COMMENT '最大重考次数',
|
||
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`is_deleted` tinyint(1) NOT NULL DEFAULT '0',
|
||
`deleted_at` datetime DEFAULT NULL,
|
||
`deleted_by` int DEFAULT NULL COMMENT '删除人ID',
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `course_id` (`course_id`),
|
||
KEY `ix_course_exam_settings_id` (`id`),
|
||
CONSTRAINT `course_exam_settings_ibfk_1` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='课程考试设置表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `course_exam_settings`
|
||
--
|
||
|
||
LOCK TABLES `course_exam_settings` WRITE;
|
||
/*!40000 ALTER TABLE `course_exam_settings` DISABLE KEYS */;
|
||
INSERT INTO `course_exam_settings` VALUES (1,1,5,3,2,0,60,2,80,1,1,1,3,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(2,2,4,2,2,2,45,1,75,1,1,1,3,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(3,3,3,2,3,2,50,2,80,1,0,1,2,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(4,4,4,3,2,1,55,2,85,1,1,1,3,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(5,5,5,2,2,1,40,1,70,1,1,1,5,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(6,6,3,2,3,2,45,1,75,1,1,1,3,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(7,7,4,2,2,2,50,2,80,1,0,1,2,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(8,8,5,3,2,0,60,3,85,1,1,1,2,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(9,9,4,2,4,0,50,2,80,1,1,1,3,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(10,10,3,2,3,2,45,1,75,1,1,1,3,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(11,11,5,3,2,0,60,3,90,1,0,1,2,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL),(12,12,4,2,4,0,40,1,70,1,1,1,5,'2025-09-23 02:41:33','2025-09-23 02:41:33',1,1,0,NULL,NULL);
|
||
/*!40000 ALTER TABLE `course_exam_settings` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `course_materials`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `course_materials`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `course_materials` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`course_id` int NOT NULL COMMENT '所属课程ID',
|
||
`name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '资料名称',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '资料描述',
|
||
`file_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件URL',
|
||
`file_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件类型',
|
||
`file_size` int NOT NULL COMMENT '文件大小(字节)',
|
||
`sort_order` int DEFAULT '0' COMMENT '排序序号',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_course_id` (`course_id`),
|
||
KEY `idx_is_deleted` (`is_deleted`),
|
||
CONSTRAINT `course_materials_ibfk_1` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='课程资料表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `course_materials`
|
||
--
|
||
|
||
LOCK TABLES `course_materials` WRITE;
|
||
/*!40000 ALTER TABLE `course_materials` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `course_materials` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `courses`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `courses`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `courses` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '课程名称',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '课程描述',
|
||
`category` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '课程分类',
|
||
`status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'draft' COMMENT '课程状态',
|
||
`cover_image` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '封面图片',
|
||
`duration_hours` decimal(5,2) DEFAULT NULL COMMENT '课程时长(小时)',
|
||
`difficulty_level` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '难度等级',
|
||
`tags` json DEFAULT NULL COMMENT '标签列表',
|
||
`published_at` datetime DEFAULT NULL COMMENT '发布时间',
|
||
`publisher_id` int DEFAULT NULL COMMENT '发布人ID',
|
||
`sort_order` int DEFAULT '0' COMMENT '排序',
|
||
`is_featured` tinyint(1) DEFAULT '0' COMMENT '是否推荐',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_category` (`category`),
|
||
KEY `idx_is_featured` (`is_featured`),
|
||
KEY `idx_is_deleted` (`is_deleted`),
|
||
KEY `idx_sort_order` (`sort_order`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='课程信息表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `courses`
|
||
--
|
||
|
||
LOCK TABLES `courses` WRITE;
|
||
/*!40000 ALTER TABLE `courses` DISABLE KEYS */;
|
||
INSERT INTO `courses` VALUES (1,'皮肤生理学基础','学习皮肤结构、功能和常见问题,为专业护理打下坚实基础','technology','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(2,'医美产品知识与应用','全面了解各类医美产品的成分、功效和适用人群,掌握产品推荐技巧','technology','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(3,'美容仪器操作与维护','掌握各类美容仪器的操作方法、注意事项和日常维护保养','technology','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(4,'医美项目介绍与咨询','详细了解各类医美项目的原理、效果和适应症,提升咨询专业度','business','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(5,'轻医美销售技巧','学习专业的销售话术、客户需求分析和成交技巧,提升业绩能力','business','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(6,'客户服务与投诉处理','提升服务意识,掌握客户投诉处理的方法和技巧,维护品牌形象','management','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(7,'社媒营销与私域运营','学习如何通过社交媒体进行品牌推广和客户维护,建立私域流量','business','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(8,'门店运营管理','学习门店日常管理、团队建设和业绩管理的方法和技巧','management','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(9,'卫生消毒与感染控制','学习医美机构的卫生标准和消毒流程,确保服务安全合规','general','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(10,'美容心理学','了解客户心理需求,掌握沟通技巧,提升服务满意度','general','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(11,'法律法规与行业规范','学习医美行业相关法律法规,确保合规经营','general','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(12,'新员工入职培训','新员工必修课程,包含企业文化、基础知识和操作规范','general','published',NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24');
|
||
/*!40000 ALTER TABLE `courses` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `exam_results`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `exam_results`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `exam_results` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`exam_id` int NOT NULL COMMENT '考试ID',
|
||
`question_id` int NOT NULL COMMENT '题目ID',
|
||
`user_answer` json DEFAULT NULL COMMENT '用户答案',
|
||
`is_correct` tinyint(1) NOT NULL COMMENT '是否正确',
|
||
`score` decimal(5,2) NOT NULL COMMENT '考试得分',
|
||
`answer_time` int DEFAULT NULL COMMENT '答题时长(秒)',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_exam_id` (`exam_id`),
|
||
KEY `idx_question_id` (`question_id`),
|
||
CONSTRAINT `exam_results_ibfk_1` FOREIGN KEY (`exam_id`) REFERENCES `exams` (`id`) ON DELETE CASCADE,
|
||
CONSTRAINT `exam_results_ibfk_2` FOREIGN KEY (`question_id`) REFERENCES `questions` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考试结果表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `exam_results`
|
||
--
|
||
|
||
LOCK TABLES `exam_results` WRITE;
|
||
/*!40000 ALTER TABLE `exam_results` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `exam_results` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `exams`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `exams`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `exams` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`user_id` int NOT NULL COMMENT '用户ID',
|
||
`course_id` int NOT NULL COMMENT '课程ID',
|
||
`exam_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '考试名称',
|
||
`question_count` int DEFAULT NULL COMMENT '题目数量',
|
||
`total_score` decimal(5,2) DEFAULT NULL COMMENT '总分',
|
||
`pass_score` decimal(5,2) DEFAULT NULL COMMENT '及格分',
|
||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||
`end_time` datetime DEFAULT NULL COMMENT '结束时间',
|
||
`duration_minutes` int DEFAULT NULL COMMENT '考试时长(分钟)',
|
||
`score` decimal(5,2) DEFAULT NULL COMMENT '得分',
|
||
`is_passed` tinyint(1) DEFAULT '0' COMMENT '是否通过',
|
||
`status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'pending' COMMENT '考试状态',
|
||
`questions` json DEFAULT NULL COMMENT '题目数据(JSON格式)',
|
||
`answers` json DEFAULT NULL COMMENT '答案数据(JSON格式)',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_course_id` (`course_id`),
|
||
KEY `idx_status` (`status`),
|
||
CONSTRAINT `exams_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE,
|
||
CONSTRAINT `exams_ibfk_2` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='考试记录表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `exams`
|
||
--
|
||
|
||
LOCK TABLES `exams` WRITE;
|
||
/*!40000 ALTER TABLE `exams` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `exams` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `growth_paths`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `growth_paths`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `growth_paths` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '成长路径名称',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '路径描述',
|
||
`target_role` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目标角色',
|
||
`courses` json DEFAULT NULL COMMENT '课程列表',
|
||
`estimated_duration_days` int DEFAULT NULL COMMENT '预计完成天数',
|
||
`is_active` tinyint(1) DEFAULT '1' COMMENT '是否启用',
|
||
`sort_order` int DEFAULT '0' COMMENT '排序顺序',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_is_active` (`is_active`),
|
||
KEY `idx_is_deleted` (`is_deleted`),
|
||
KEY `idx_sort_order` (`sort_order`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成长路径表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `growth_paths`
|
||
--
|
||
|
||
LOCK TABLES `growth_paths` WRITE;
|
||
/*!40000 ALTER TABLE `growth_paths` DISABLE KEYS */;
|
||
INSERT INTO `growth_paths` VALUES (1,'美容顾问成长路径','从初级美容顾问到资深顾问的完整成长路径,包含专业技能和销售能力提升','资深美容顾问',NULL,NULL,1,0,0,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(2,'美容技师进阶路径','美容技师的技能进阶路径,从基础护理到高级项目操作','高级美容技师',NULL,NULL,1,0,0,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(3,'管理岗位培养路径','从一线员工到管理岗位的培养路径,包含领导力和管理技能','店长/区域经理',NULL,NULL,1,0,0,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(4,'医美咨询师专业路径','医美咨询师的专业发展路径,深度掌握医美项目知识','资深医美咨询师',NULL,NULL,1,0,0,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48');
|
||
/*!40000 ALTER TABLE `growth_paths` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `knowledge_points`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `knowledge_points`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `knowledge_points` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`course_id` int DEFAULT NULL COMMENT '所属课程ID',
|
||
`name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '知识点名称',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '知识点描述',
|
||
`parent_id` int DEFAULT NULL COMMENT '父知识点ID',
|
||
`level` int DEFAULT '1' COMMENT '层级深度',
|
||
`path` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '知识点路径',
|
||
`sort_order` int DEFAULT '0' COMMENT '排序顺序',
|
||
`weight` decimal(3,2) DEFAULT '1.00' COMMENT '权重',
|
||
`is_required` tinyint(1) DEFAULT '1' COMMENT '是否必修',
|
||
`estimated_hours` decimal(4,2) DEFAULT NULL COMMENT '预计学习时间(小时)',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_course_id` (`course_id`),
|
||
KEY `idx_parent_id` (`parent_id`),
|
||
KEY `idx_is_deleted` (`is_deleted`),
|
||
KEY `idx_sort_order` (`sort_order`),
|
||
CONSTRAINT `knowledge_points_ibfk_1` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`) ON DELETE CASCADE,
|
||
CONSTRAINT `knowledge_points_ibfk_2` FOREIGN KEY (`parent_id`) REFERENCES `knowledge_points` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='知识点表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `knowledge_points`
|
||
--
|
||
|
||
LOCK TABLES `knowledge_points` WRITE;
|
||
/*!40000 ALTER TABLE `knowledge_points` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `knowledge_points` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `material_knowledge_points`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `material_knowledge_points`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `material_knowledge_points` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`material_id` int NOT NULL COMMENT '资料ID',
|
||
`knowledge_point_id` int NOT NULL COMMENT '知识点ID',
|
||
`sort_order` int DEFAULT '0' COMMENT '排序顺序',
|
||
`is_ai_generated` tinyint(1) DEFAULT '0' COMMENT '是否AI生成',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `idx_material_knowledge` (`material_id`,`knowledge_point_id`),
|
||
KEY `idx_material_id` (`material_id`),
|
||
KEY `idx_knowledge_point_id` (`knowledge_point_id`),
|
||
CONSTRAINT `material_knowledge_points_ibfk_1` FOREIGN KEY (`material_id`) REFERENCES `course_materials` (`id`) ON DELETE CASCADE,
|
||
CONSTRAINT `material_knowledge_points_ibfk_2` FOREIGN KEY (`knowledge_point_id`) REFERENCES `knowledge_points` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='资料知识点关联表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `material_knowledge_points`
|
||
--
|
||
|
||
LOCK TABLES `material_knowledge_points` WRITE;
|
||
/*!40000 ALTER TABLE `material_knowledge_points` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `material_knowledge_points` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `position_courses`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `position_courses`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `position_courses` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`position_id` int NOT NULL COMMENT '岗位ID',
|
||
`course_id` int NOT NULL COMMENT '课程ID',
|
||
`course_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'required' COMMENT '课程类型(必修/选修)',
|
||
`priority` int DEFAULT '0' COMMENT '优先级',
|
||
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`is_deleted` tinyint(1) NOT NULL DEFAULT '0',
|
||
`deleted_at` datetime DEFAULT NULL,
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `uix_position_course` (`position_id`,`course_id`,`is_deleted`),
|
||
KEY `course_id` (`course_id`),
|
||
KEY `ix_position_courses_id` (`id`),
|
||
CONSTRAINT `position_courses_ibfk_1` FOREIGN KEY (`position_id`) REFERENCES `positions` (`id`),
|
||
CONSTRAINT `position_courses_ibfk_2` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='岗位课程关联表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `position_courses`
|
||
--
|
||
|
||
LOCK TABLES `position_courses` WRITE;
|
||
/*!40000 ALTER TABLE `position_courses` DISABLE KEYS */;
|
||
INSERT INTO `position_courses` VALUES (1,1,6,'required',1,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(2,1,8,'required',2,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(3,1,11,'required',3,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(4,1,12,'required',4,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(5,3,1,'required',1,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(6,3,2,'required',2,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(7,3,5,'required',3,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(8,3,6,'required',4,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(9,3,10,'required',5,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(10,3,12,'required',6,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(11,4,1,'required',1,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(12,4,2,'required',2,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(13,4,4,'required',3,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(14,4,5,'required',4,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(15,4,9,'required',5,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(16,4,12,'required',6,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(17,5,1,'required',1,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(18,5,2,'required',2,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(19,5,3,'required',3,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(20,5,9,'required',4,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(21,5,12,'required',5,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(22,7,6,'required',1,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(23,7,10,'required',2,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(24,7,12,'required',3,'2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL);
|
||
/*!40000 ALTER TABLE `position_courses` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `position_members`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `position_members`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `position_members` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`position_id` int NOT NULL COMMENT '岗位ID',
|
||
`user_id` int NOT NULL COMMENT '用户ID',
|
||
`role` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '在岗位中的角色',
|
||
`joined_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入时间',
|
||
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`is_deleted` tinyint(1) NOT NULL DEFAULT '0',
|
||
`deleted_at` datetime DEFAULT NULL,
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `uix_position_user` (`position_id`,`user_id`,`is_deleted`),
|
||
KEY `user_id` (`user_id`),
|
||
KEY `ix_position_members_id` (`id`),
|
||
CONSTRAINT `position_members_ibfk_1` FOREIGN KEY (`position_id`) REFERENCES `positions` (`id`),
|
||
CONSTRAINT `position_members_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='岗位成员关联表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `position_members`
|
||
--
|
||
|
||
LOCK TABLES `position_members` WRITE;
|
||
/*!40000 ALTER TABLE `position_members` DISABLE KEYS */;
|
||
INSERT INTO `position_members` VALUES (1,1,3,NULL,'2025-09-22 18:42:32','2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(2,1,4,NULL,'2025-09-22 18:42:32','2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(3,3,5,NULL,'2025-09-22 18:42:32','2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(4,4,6,NULL,'2025-09-22 18:42:32','2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(5,5,7,NULL,'2025-09-22 18:42:32','2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL),(6,7,8,NULL,'2025-09-22 18:42:32','2025-09-23 02:42:32','2025-09-23 02:42:32',NULL,NULL,0,NULL);
|
||
/*!40000 ALTER TABLE `position_members` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `positions`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `positions`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `positions` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '岗位名称',
|
||
`code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '岗位代码',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '岗位描述',
|
||
`parent_id` int DEFAULT NULL COMMENT '上级岗位ID',
|
||
`status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'active' COMMENT '岗位状态',
|
||
`skills` json DEFAULT NULL COMMENT '核心技能',
|
||
`level` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '岗位级别',
|
||
`sort_order` int DEFAULT '0' COMMENT '排序',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `code` (`code`),
|
||
KEY `parent_id` (`parent_id`),
|
||
KEY `idx_positions_name` (`name`),
|
||
CONSTRAINT `positions_ibfk_1` FOREIGN KEY (`parent_id`) REFERENCES `positions` (`id`) ON DELETE SET NULL
|
||
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='岗位信息表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `positions`
|
||
--
|
||
|
||
LOCK TABLES `positions` WRITE;
|
||
/*!40000 ALTER TABLE `positions` DISABLE KEYS */;
|
||
INSERT INTO `positions` VALUES (1,'区域经理','region_manager','负责多家门店的运营管理和业绩达成,制定区域发展战略',NULL,'active',NULL,'expert',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(2,'店长','store_manager','负责门店日常运营管理,团队建设和业绩达成',NULL,'active',NULL,'senior',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(3,'美容顾问','beauty_consultant','为客户提供专业的美容咨询和个性化方案设计',NULL,'active',NULL,'intermediate',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(4,'医美咨询师','medical_beauty_consultant','提供医疗美容项目咨询和专业方案制定',NULL,'active',NULL,'senior',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(5,'美容技师','beauty_therapist','为客户提供专业的美容护理和技术服务',NULL,'active',NULL,'intermediate',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(6,'美容护士','beauty_nurse','协助医生进行医美项目操作,负责术后护理指导',NULL,'active',NULL,'intermediate',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(7,'前台接待','receptionist','负责客户接待、预约管理和前台事务处理',NULL,'active',NULL,'junior',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24'),(8,'市场专员','marketing_specialist','负责门店营销活动策划、执行和客户维护',NULL,'active',NULL,'intermediate',0,0,NULL,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24');
|
||
/*!40000 ALTER TABLE `positions` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `questions`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `questions`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `questions` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`course_id` int NOT NULL COMMENT '所属课程ID',
|
||
`question_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '题目类型',
|
||
`title` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '题目标题',
|
||
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '题目内容',
|
||
`options` json DEFAULT NULL COMMENT '选项内容',
|
||
`correct_answer` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '正确答案',
|
||
`explanation` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '答案解析',
|
||
`score` float DEFAULT '10' COMMENT '题目分值',
|
||
`difficulty` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'medium' COMMENT '难度等级',
|
||
`tags` json DEFAULT NULL COMMENT '题目标签',
|
||
`usage_count` int DEFAULT '0' COMMENT '使用次数',
|
||
`correct_count` int DEFAULT '0' COMMENT '答对次数',
|
||
`is_active` tinyint(1) DEFAULT '1' COMMENT '是否启用',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_course_id` (`course_id`),
|
||
KEY `idx_question_type` (`question_type`),
|
||
KEY `idx_difficulty` (`difficulty`),
|
||
KEY `idx_is_active` (`is_active`),
|
||
CONSTRAINT `questions_ibfk_1` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='题目表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `questions`
|
||
--
|
||
|
||
LOCK TABLES `questions` WRITE;
|
||
/*!40000 ALTER TABLE `questions` DISABLE KEYS */;
|
||
INSERT INTO `questions` VALUES (1,1,'single_choice','皮肤的最外层是什么?',NULL,'[{\"text\": \"表皮\", \"label\": \"A\"}, {\"text\": \"真皮\", \"label\": \"B\"}, {\"text\": \"皮下组织\", \"label\": \"C\"}, {\"text\": \"角质层\", \"label\": \"D\"}]','A','A选项是表皮,这是皮肤的最外层,起到保护作用',10,'easy',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(2,2,'single_choice','透明质酸的主要功效是什么?',NULL,'[{\"text\": \"美白淡斑\", \"label\": \"A\"}, {\"text\": \"保湿补水\", \"label\": \"B\"}, {\"text\": \"紧致提升\", \"label\": \"C\"}, {\"text\": \"去除皱纹\", \"label\": \"D\"}]','B','B选项是保湿补水,透明质酸具有强大的保湿能力',10,'easy',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(3,3,'multiple_choice','射频美容仪的禁忌症包括哪些?',NULL,'[{\"text\": \"孕期和哺乳期\", \"label\": \"A\"}, {\"text\": \"皮肤过敏\", \"label\": \"B\"}, {\"text\": \"心脏起搏器\", \"label\": \"C\"}, {\"text\": \"轻微痤疮\", \"label\": \"D\"}]','A,C','A和C选项都是射频美容仪的禁忌症,需要特别注意',15,'medium',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(4,4,'true_false','水光针适合所有肤质的客户',NULL,'[{\"text\": \"正确\", \"label\": \"A\"}, {\"text\": \"错误\", \"label\": \"B\"}]','B','水光针虽然适用范围广,但仍有一些禁忌症和不适合的肤质',10,'easy',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(5,4,'fill_blank','肉毒素注射后____小时内不能平躺','肉毒素注射后【】小时内不能平躺,以免影响药物分布效果。',NULL,'4','肉毒素注射后4小时内不能平躺,以免影响药物分布',10,'medium',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(6,5,'single_choice','客户咨询时最重要的是什么?',NULL,'[{\"text\": \"倾听客户需求\", \"label\": \"A\"}, {\"text\": \"推荐最贵的产品\", \"label\": \"B\"}, {\"text\": \"快速成交\", \"label\": \"C\"}, {\"text\": \"展示专业知识\", \"label\": \"D\"}]','A','A选项是倾听客户需求,这是专业咨询的基础',10,'easy',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(7,6,'single_choice','处理客户投诉的第一步是什么?',NULL,'[{\"text\": \"解释原因\", \"label\": \"A\"}, {\"text\": \"耐心倾听\", \"label\": \"B\"}, {\"text\": \"提供补偿\", \"label\": \"C\"}, {\"text\": \"转交上级\", \"label\": \"D\"}]','B','B选项是耐心倾听,让客户充分表达不满是处理投诉的第一步',10,'easy',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(8,7,'true_false','社交媒体营销只需要发布产品信息',NULL,'[{\"text\": \"正确\", \"label\": \"A\"}, {\"text\": \"错误\", \"label\": \"B\"}]','B','社交媒体营销需要内容多样化,包括教育内容、互动内容等',10,'easy',NULL,0,0,1,'2025-09-23 02:39:48','2025-09-23 02:39:48');
|
||
/*!40000 ALTER TABLE `questions` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `teams`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `teams`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `teams` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '团队名称',
|
||
`code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '团队代码',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '团队描述',
|
||
`team_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '团队类型',
|
||
`is_active` tinyint(1) DEFAULT '1' COMMENT '是否激活',
|
||
`leader_id` int DEFAULT NULL COMMENT '负责人ID',
|
||
`parent_id` int DEFAULT NULL COMMENT '父团队ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `name` (`name`),
|
||
UNIQUE KEY `code` (`code`),
|
||
KEY `leader_id` (`leader_id`),
|
||
KEY `parent_id` (`parent_id`),
|
||
KEY `idx_team_type` (`team_type`),
|
||
KEY `idx_is_active` (`is_active`),
|
||
CONSTRAINT `teams_ibfk_1` FOREIGN KEY (`leader_id`) REFERENCES `users` (`id`) ON DELETE SET NULL,
|
||
CONSTRAINT `teams_ibfk_2` FOREIGN KEY (`parent_id`) REFERENCES `teams` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='团队信息表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `teams`
|
||
--
|
||
|
||
LOCK TABLES `teams` WRITE;
|
||
/*!40000 ALTER TABLE `teams` DISABLE KEYS */;
|
||
INSERT INTO `teams` VALUES (1,'管理层','MANAGEMENT','负责公司整体战略规划和运营管理','department',1,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(2,'北京运营团队','BJ_OPERATIONS','负责北京地区所有门店的运营管理','department',1,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(3,'上海运营团队','SH_OPERATIONS','负责上海地区所有门店的运营管理','department',1,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(4,'技术培训部','TECH_TRAINING','负责员工技术培训和考核','department',1,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(5,'客服质量部','QUALITY_SERVICE','负责客户服务质量监督和改进','department',1,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(6,'新员工培训小组','NEW_EMPLOYEE_TRAINING','专门负责新员工入职培训','study_group',1,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL);
|
||
/*!40000 ALTER TABLE `teams` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `training_messages`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `training_messages`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `training_messages` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`session_id` int NOT NULL COMMENT '会话ID',
|
||
`role` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消息角色',
|
||
`type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消息类型',
|
||
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消息内容',
|
||
`voice_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '语音文件URL',
|
||
`voice_duration` int DEFAULT NULL COMMENT '语音时长(秒)',
|
||
`message_metadata` json DEFAULT NULL COMMENT '消息元数据',
|
||
`coze_message_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Coze消息ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_session_id` (`session_id`),
|
||
KEY `idx_role` (`role`),
|
||
CONSTRAINT `training_messages_ibfk_1` FOREIGN KEY (`session_id`) REFERENCES `training_sessions` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='培训消息表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `training_messages`
|
||
--
|
||
|
||
LOCK TABLES `training_messages` WRITE;
|
||
/*!40000 ALTER TABLE `training_messages` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `training_messages` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `training_reports`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `training_reports`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `training_reports` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`session_id` int NOT NULL COMMENT '会话ID',
|
||
`user_id` int NOT NULL COMMENT '用户ID',
|
||
`overall_score` decimal(5,2) DEFAULT NULL COMMENT '总体评分',
|
||
`dimension_scores` json DEFAULT NULL COMMENT '各维度得分',
|
||
`strengths` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '优势点',
|
||
`weaknesses` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '待改进点',
|
||
`suggestions` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '改进建议',
|
||
`detailed_analysis` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '详细分析',
|
||
`transcript` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '对话记录',
|
||
`statistics` json DEFAULT NULL COMMENT '统计数据',
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `session_id` (`session_id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
CONSTRAINT `training_reports_ibfk_1` FOREIGN KEY (`session_id`) REFERENCES `training_sessions` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='培训报告表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `training_reports`
|
||
--
|
||
|
||
LOCK TABLES `training_reports` WRITE;
|
||
/*!40000 ALTER TABLE `training_reports` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `training_reports` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `training_scenes`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `training_scenes`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `training_scenes` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '场景名称',
|
||
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '场景描述',
|
||
`category` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '场景分类',
|
||
`ai_config` json DEFAULT NULL COMMENT 'AI配置',
|
||
`prompt_template` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '提示模板',
|
||
`evaluation_criteria` json DEFAULT NULL COMMENT '评估标准',
|
||
`status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'active' COMMENT '场景状态',
|
||
`is_public` tinyint(1) DEFAULT '1' COMMENT '是否公开',
|
||
`required_level` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '所需用户等级',
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_category` (`category`),
|
||
KEY `idx_is_public` (`is_public`),
|
||
KEY `idx_is_deleted` (`is_deleted`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='培训场景表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `training_scenes`
|
||
--
|
||
|
||
LOCK TABLES `training_scenes` WRITE;
|
||
/*!40000 ALTER TABLE `training_scenes` DISABLE KEYS */;
|
||
INSERT INTO `training_scenes` VALUES (1,'客户咨询模拟','模拟真实的客户咨询场景,练习专业咨询技巧','客户服务',NULL,NULL,NULL,'ACTIVE',1,NULL,0,NULL,NULL,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(2,'产品推荐演练','针对不同客户需求进行产品推荐的实战演练','销售技巧',NULL,NULL,NULL,'ACTIVE',1,NULL,0,NULL,NULL,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(3,'投诉处理训练','模拟各种客户投诉情况,训练处理技巧和话术','客户服务',NULL,NULL,NULL,'ACTIVE',1,NULL,0,NULL,NULL,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(4,'项目操作指导','美容项目操作的标准流程指导和安全注意事项','技术指导',NULL,NULL,NULL,'ACTIVE',1,NULL,0,NULL,NULL,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48'),(5,'团队管理讨论','管理岗位的团队建设和绩效管理讨论','管理培训',NULL,NULL,NULL,'ACTIVE',1,NULL,0,NULL,NULL,NULL,'2025-09-23 02:39:48','2025-09-23 02:39:48');
|
||
/*!40000 ALTER TABLE `training_scenes` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `training_sessions`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `training_sessions`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `training_sessions` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`user_id` int NOT NULL COMMENT '用户ID',
|
||
`scene_id` int NOT NULL COMMENT '场景ID',
|
||
`coze_conversation_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Coze对话ID',
|
||
`start_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '开始时间',
|
||
`end_time` datetime DEFAULT NULL COMMENT '结束时间',
|
||
`duration_seconds` int DEFAULT NULL COMMENT '持续时长(秒)',
|
||
`status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'active' COMMENT '会话状态',
|
||
`session_config` json DEFAULT NULL COMMENT '会话配置',
|
||
`total_score` decimal(5,2) DEFAULT NULL COMMENT '总分',
|
||
`evaluation_result` json DEFAULT NULL COMMENT '评估结果详情',
|
||
`created_by` int DEFAULT NULL COMMENT '创建人ID',
|
||
`updated_by` int DEFAULT NULL COMMENT '更新人ID',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_scene_id` (`scene_id`),
|
||
KEY `idx_status` (`status`),
|
||
CONSTRAINT `training_sessions_ibfk_1` FOREIGN KEY (`scene_id`) REFERENCES `training_scenes` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='培训会话表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `training_sessions`
|
||
--
|
||
|
||
LOCK TABLES `training_sessions` WRITE;
|
||
/*!40000 ALTER TABLE `training_sessions` DISABLE KEYS */;
|
||
/*!40000 ALTER TABLE `training_sessions` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `user_teams`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `user_teams`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `user_teams` (
|
||
`user_id` int NOT NULL COMMENT '用户ID',
|
||
`team_id` int NOT NULL COMMENT '团队ID',
|
||
`role` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '在团队中的角色',
|
||
`joined_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入时间',
|
||
PRIMARY KEY (`user_id`,`team_id`),
|
||
KEY `team_id` (`team_id`),
|
||
CONSTRAINT `user_teams_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE,
|
||
CONSTRAINT `user_teams_ibfk_2` FOREIGN KEY (`team_id`) REFERENCES `teams` (`id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户团队关联表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `user_teams`
|
||
--
|
||
|
||
LOCK TABLES `user_teams` WRITE;
|
||
/*!40000 ALTER TABLE `user_teams` DISABLE KEYS */;
|
||
INSERT INTO `user_teams` VALUES (1,1,'leader','2025-09-22 18:42:32'),(2,1,'member','2025-09-22 18:42:32'),(3,2,'leader','2025-09-22 18:42:32'),(4,3,'leader','2025-09-22 18:42:32'),(5,2,'member','2025-09-22 18:42:32'),(5,4,'member','2025-09-22 18:42:32'),(6,2,'member','2025-09-22 18:42:32'),(6,4,'member','2025-09-22 18:42:32'),(7,3,'member','2025-09-22 18:42:32'),(7,4,'member','2025-09-22 18:42:32'),(8,3,'member','2025-09-22 18:42:32'),(8,6,'member','2025-09-22 18:42:32');
|
||
/*!40000 ALTER TABLE `user_teams` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Table structure for table `users`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `users`;
|
||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
CREATE TABLE `users` (
|
||
`id` int NOT NULL AUTO_INCREMENT,
|
||
`username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '用户名',
|
||
`email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '邮箱',
|
||
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
|
||
`password_hash` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '密码哈希',
|
||
`full_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '真实姓名',
|
||
`gender` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '性别',
|
||
`avatar_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '头像URL',
|
||
`bio` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '个人简介',
|
||
`school` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学校',
|
||
`major` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '专业',
|
||
`role` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'trainee' COMMENT '用户角色',
|
||
`is_active` tinyint(1) DEFAULT '1' COMMENT '是否激活',
|
||
`is_verified` tinyint(1) DEFAULT '0' COMMENT '是否验证',
|
||
`last_login_at` datetime DEFAULT NULL COMMENT '最后登录时间',
|
||
`password_changed_at` datetime DEFAULT NULL COMMENT '密码修改时间',
|
||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
`is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除',
|
||
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `username` (`username`),
|
||
UNIQUE KEY `email` (`email`),
|
||
UNIQUE KEY `phone` (`phone`),
|
||
KEY `idx_role` (`role`),
|
||
KEY `idx_is_active` (`is_active`)
|
||
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户信息表';
|
||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||
|
||
--
|
||
-- Dumping data for table `users`
|
||
--
|
||
|
||
LOCK TABLES `users` WRITE;
|
||
/*!40000 ALTER TABLE `users` DISABLE KEYS */;
|
||
INSERT INTO `users` VALUES (1,'superadmin','superadmin@ruimei.com','13800138001','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','超级管理员','male',NULL,'负责系统整体管理和运营','睿美医疗美容学院','医疗美容管理','admin',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(2,'admin','admin@ruimei.com','13800138002','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','系统管理员','female',NULL,'负责日常系统管理工作','睿美医疗美容学院','医疗美容技术','admin',1,0,'2025-09-25 18:51:58',NULL,'2025-09-23 02:38:24','2025-09-25 18:51:58',0,NULL),(3,'manager_beijing','manager.bj@ruimei.com','13800138003','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','北京区域经理','male',NULL,'负责北京地区门店管理','北京医科大学','临床医学','manager',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(4,'manager_shanghai','manager.sh@ruimei.com','13800138004','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','上海区域经理','female',NULL,'负责上海地区门店管理','复旦大学医学院','医疗美容','manager',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(5,'consultant_001','consultant001@ruimei.com','13800138005','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','资深美容顾问','female',NULL,'专业美容咨询师,5年从业经验','上海健康医学院','医疗美容技术','trainee',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(6,'nurse_001','nurse001@ruimei.com','13800138006','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','美容护士','female',NULL,'持证美容护士,专业技术过硬','首都医科大学','护理学','trainee',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(7,'therapist_001','therapist001@ruimei.com','13800138007','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','美容技师','female',NULL,'专业美容技师,擅长面部护理','北京卫生职业学院','医疗美容技术','trainee',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL),(8,'receptionist_001','front001@ruimei.com','13800138008','$2b$12$jFhkYU3.Cd1kAfr64/073eayPquAr0z9WWUQEdOyFRmAqcxz.i10C','前台接待','female',NULL,'负责客户接待和预约管理','北京商贸职业学院','商务管理','trainee',1,0,NULL,NULL,'2025-09-23 02:38:24','2025-09-23 02:38:24',0,NULL);
|
||
/*!40000 ALTER TABLE `users` ENABLE KEYS */;
|
||
UNLOCK TABLES;
|
||
|
||
--
|
||
-- Temporary view structure for view `v_user_course_progress`
|
||
--
|
||
|
||
DROP TABLE IF EXISTS `v_user_course_progress`;
|
||
/*!50001 DROP VIEW IF EXISTS `v_user_course_progress`*/;
|
||
SET @saved_cs_client = @@character_set_client;
|
||
/*!50503 SET character_set_client = utf8mb4 */;
|
||
/*!50001 CREATE VIEW `v_user_course_progress` AS SELECT
|
||
1 AS `user_id`,
|
||
1 AS `username`,
|
||
1 AS `course_id`,
|
||
1 AS `course_name`,
|
||
1 AS `exam_count`,
|
||
1 AS `avg_score`,
|
||
1 AS `best_score`*/;
|
||
SET character_set_client = @saved_cs_client;
|
||
|
||
--
|
||
-- Final view structure for view `v_user_course_progress`
|
||
--
|
||
|
||
/*!50001 DROP VIEW IF EXISTS `v_user_course_progress`*/;
|
||
/*!50001 SET @saved_cs_client = @@character_set_client */;
|
||
/*!50001 SET @saved_cs_results = @@character_set_results */;
|
||
/*!50001 SET @saved_col_connection = @@collation_connection */;
|
||
/*!50001 SET character_set_client = latin1 */;
|
||
/*!50001 SET character_set_results = latin1 */;
|
||
/*!50001 SET collation_connection = latin1_swedish_ci */;
|
||
/*!50001 CREATE ALGORITHM=UNDEFINED */
|
||
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
|
||
/*!50001 VIEW `v_user_course_progress` AS select `u`.`id` AS `user_id`,`u`.`username` AS `username`,`c`.`id` AS `course_id`,`c`.`name` AS `course_name`,count(distinct `e`.`id`) AS `exam_count`,avg(`e`.`score`) AS `avg_score`,max(`e`.`score`) AS `best_score` from ((`users` `u` join `courses` `c`) left join `exams` `e` on(((`e`.`user_id` = `u`.`id`) and (`e`.`course_id` = `c`.`id`) and (`e`.`status` = 'submitted')))) group by `u`.`id`,`c`.`id` */;
|
||
/*!50001 SET character_set_client = @saved_cs_client */;
|
||
/*!50001 SET character_set_results = @saved_cs_results */;
|
||
/*!50001 SET collation_connection = @saved_col_connection */;
|
||
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||
|
||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||
|
||
-- Dump completed on 2025-09-25 20:45:58
|