|
|
/*
|
|
|
Navicat Premium Dump SQL
|
|
|
|
|
|
Source Server : JavaProjects
|
|
|
Source Server Type : MySQL
|
|
|
Source Server Version : 80040 (8.0.40)
|
|
|
Source Host : localhost:3306
|
|
|
Source Schema : attendance_system
|
|
|
|
|
|
Target Server Type : MySQL
|
|
|
Target Server Version : 80040 (8.0.40)
|
|
|
File Encoding : 65001
|
|
|
|
|
|
Date: 04/06/2026 11:38:13
|
|
|
*/
|
|
|
|
|
|
SET NAMES utf8mb4;
|
|
|
SET FOREIGN_KEY_CHECKS = 0;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for att_detail
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `att_detail`;
|
|
|
CREATE TABLE `att_detail` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`task_id` bigint UNSIGNED NOT NULL COMMENT '考勤任务ID',
|
|
|
`record_id` bigint UNSIGNED NOT NULL COMMENT '考勤记录ID',
|
|
|
`student_id` bigint UNSIGNED NOT NULL COMMENT '学生ID',
|
|
|
`student_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学号',
|
|
|
`student_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学生姓名',
|
|
|
`course_id` bigint UNSIGNED NOT NULL COMMENT '课程ID',
|
|
|
`classroom_id` bigint UNSIGNED NOT NULL COMMENT '教室ID',
|
|
|
`att_date` date NOT NULL COMMENT '考勤日期',
|
|
|
`check_in_time` datetime NULL DEFAULT NULL COMMENT '签到时间',
|
|
|
`check_out_time` datetime NULL DEFAULT NULL COMMENT '签退时间',
|
|
|
`att_status` tinyint NOT NULL DEFAULT 0 COMMENT '考勤状态:0-未签到 1-正常 2-迟到 3-缺勤 4-早退 5-请假',
|
|
|
`check_type` tinyint NOT NULL DEFAULT 1 COMMENT '签到方式:1-人脸识别 2-手动补签',
|
|
|
`face_similarity` decimal(5, 2) NULL DEFAULT NULL COMMENT '人脸相似度',
|
|
|
`face_image` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '抓拍人脸图片URL',
|
|
|
`device_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '签到设备ID',
|
|
|
`remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '备注',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_task_student`(`task_id` ASC, `student_id` ASC) USING BTREE,
|
|
|
INDEX `idx_record_id`(`record_id` ASC) USING BTREE,
|
|
|
INDEX `idx_student_id`(`student_id` ASC) USING BTREE,
|
|
|
INDEX `idx_att_status`(`att_status` ASC) USING BTREE,
|
|
|
INDEX `idx_att_date`(`att_date` ASC) USING BTREE,
|
|
|
INDEX `idx_course_id`(`course_id` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '考勤明细表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of att_detail
|
|
|
-- ----------------------------
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for att_record
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `att_record`;
|
|
|
CREATE TABLE `att_record` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`task_id` bigint UNSIGNED NOT NULL COMMENT '考勤任务ID',
|
|
|
`course_id` bigint UNSIGNED NOT NULL COMMENT '课程ID',
|
|
|
`classroom_id` bigint UNSIGNED NOT NULL COMMENT '教室ID',
|
|
|
`teacher_id` bigint UNSIGNED NOT NULL COMMENT '教师ID',
|
|
|
`att_date` date NOT NULL COMMENT '考勤日期',
|
|
|
`start_time` datetime NOT NULL COMMENT '开始时间',
|
|
|
`end_time` datetime NOT NULL COMMENT '结束时间',
|
|
|
`total_count` int NOT NULL DEFAULT 0 COMMENT '应到人数',
|
|
|
`actual_count` int NOT NULL DEFAULT 0 COMMENT '实到人数',
|
|
|
`absent_count` int NOT NULL DEFAULT 0 COMMENT '缺勤人数',
|
|
|
`late_count` int NOT NULL DEFAULT 0 COMMENT '迟到人数',
|
|
|
`leave_early_count` int NOT NULL DEFAULT 0 COMMENT '早退人数',
|
|
|
`attendance_rate` decimal(5, 2) NULL DEFAULT NULL COMMENT '出勤率%',
|
|
|
`absent_rate` decimal(5, 2) NULL DEFAULT NULL COMMENT '缺勤率%',
|
|
|
`record_status` tinyint NOT NULL DEFAULT 0 COMMENT '记录状态:0-正常 1-异常',
|
|
|
`remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '备注',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_task_id`(`task_id` ASC) USING BTREE,
|
|
|
INDEX `idx_course_id`(`course_id` ASC) USING BTREE,
|
|
|
INDEX `idx_classroom_id`(`classroom_id` ASC) USING BTREE,
|
|
|
INDEX `idx_att_date`(`att_date` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '考勤记录汇总表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of att_record
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `att_record` VALUES (1, 1, 1, 1, 4, '2024-06-01', '2024-06-01 08:00:00', '2024-06-01 09:40:00', 45, 44, 1, 0, 0, 97.78, 2.22, 0, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `att_record` VALUES (2, 2, 2, 2, 2, '2024-06-01', '2024-06-01 10:00:00', '2024-06-01 11:40:00', 38, 38, 0, 0, 0, 100.00, 0.00, 0, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `att_record` VALUES (3, 3, 3, 3, 3, '2024-06-01', '2024-06-01 14:00:00', '2024-06-01 15:40:00', 52, 49, 3, 0, 0, 94.23, 5.77, 0, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `att_record` VALUES (4, 4, 4, 4, 4, '2024-05-31', '2024-05-31 08:00:00', '2024-05-31 09:40:00', 40, 38, 2, 0, 0, 95.00, 5.00, 0, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `att_record` VALUES (5, 5, 5, 5, 5, '2024-05-31', '2024-05-31 10:00:00', '2024-05-31 11:40:00', 120, 108, 12, 0, 0, 90.00, 10.00, 0, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for att_rule
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `att_rule`;
|
|
|
CREATE TABLE `att_rule` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`rule_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规则名称',
|
|
|
`rule_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规则类型:course-课程/room-教室/global-全局',
|
|
|
`target_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '关联目标ID',
|
|
|
`check_in_start` time NOT NULL COMMENT '签到开始时间(课前N分钟)',
|
|
|
`check_in_end` time NOT NULL COMMENT '签到截止时间(课后N分钟)',
|
|
|
`late_threshold` int NOT NULL DEFAULT 15 COMMENT '迟到阈值(分钟)',
|
|
|
`absent_threshold` int NOT NULL DEFAULT 30 COMMENT '缺勤阈值(分钟)',
|
|
|
`early_leave_threshold` int NOT NULL DEFAULT 15 COMMENT '早退阈值(分钟)',
|
|
|
`allow_make_up` tinyint NOT NULL DEFAULT 0 COMMENT '是否允许补签:0-否 1-是',
|
|
|
`make_up_limit` int NULL DEFAULT NULL COMMENT '补签时限(小时)',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
INDEX `idx_rule_type`(`rule_type` ASC) USING BTREE,
|
|
|
INDEX `idx_target_id`(`target_id` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '考勤规则表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of att_rule
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `att_rule` VALUES (1, '默认考勤规则', 'global', NULL, '00:10:00', '00:15:00', 15, 30, 15, 1, 24, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `att_rule` VALUES (2, '严格考勤规则', 'global', NULL, '00:05:00', '00:10:00', 5, 15, 5, 0, NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for att_task
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `att_task`;
|
|
|
CREATE TABLE `att_task` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`task_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '任务编号',
|
|
|
`schedule_id` bigint UNSIGNED NOT NULL COMMENT '课程安排ID',
|
|
|
`course_id` bigint UNSIGNED NOT NULL COMMENT '课程ID',
|
|
|
`course_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '课程名称',
|
|
|
`classroom_id` bigint UNSIGNED NOT NULL COMMENT '教室ID',
|
|
|
`classroom_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '教室名称',
|
|
|
`teacher_id` bigint UNSIGNED NOT NULL COMMENT '教师ID',
|
|
|
`teacher_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '教师姓名',
|
|
|
`class_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '班级ID',
|
|
|
`att_date` date NOT NULL COMMENT '考勤日期',
|
|
|
`start_time` datetime NOT NULL COMMENT '上课开始时间',
|
|
|
`end_time` datetime NOT NULL COMMENT '上课结束时间',
|
|
|
`total_count` int NOT NULL DEFAULT 0 COMMENT '应到人数',
|
|
|
`actual_count` int NOT NULL DEFAULT 0 COMMENT '实到人数',
|
|
|
`absent_count` int NOT NULL DEFAULT 0 COMMENT '缺勤人数',
|
|
|
`late_count` int NOT NULL DEFAULT 0 COMMENT '迟到人数',
|
|
|
`leave_early_count` int NOT NULL DEFAULT 0 COMMENT '早退人数',
|
|
|
`attendance_rate` decimal(5, 2) NULL DEFAULT NULL COMMENT '出勤率%',
|
|
|
`task_status` tinyint NOT NULL DEFAULT 0 COMMENT '任务状态:0-未开始 1-进行中 2-已结束 3-已取消',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_task_no`(`task_no` ASC) USING BTREE,
|
|
|
INDEX `idx_schedule_id`(`schedule_id` ASC) USING BTREE,
|
|
|
INDEX `idx_course_id`(`course_id` ASC) USING BTREE,
|
|
|
INDEX `idx_classroom_id`(`classroom_id` ASC) USING BTREE,
|
|
|
INDEX `idx_teacher_id`(`teacher_id` ASC) USING BTREE,
|
|
|
INDEX `idx_att_date`(`att_date` ASC) USING BTREE,
|
|
|
INDEX `idx_task_status`(`task_status` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '考勤任务表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of att_task
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `att_task` VALUES (1, 'ATT202406010001', 1, 1, '高等数学A', 1, '301教室', 4, '赵教授', 3, '2026-06-01', '2026-06-01 08:00:00', '2024-06-01 09:40:00', 45, 44, 1, 0, 0, 97.78, 2, 1, '2026-06-01 17:11:42', '2026-06-03 14:35:40', 0);
|
|
|
INSERT INTO `att_task` VALUES (2, 'ATT202406010002', 2, 2, '大学英语B', 2, '205教室', 2, '李老师', 4, '2026-06-01', '2026-06-01 10:00:00', '2024-06-01 11:40:00', 38, 38, 0, 0, 0, 100.00, 2, 1, '2026-06-01 17:11:42', '2026-06-03 14:35:48', 0);
|
|
|
INSERT INTO `att_task` VALUES (3, 'ATT202406010003', 3, 3, '计算机导论', 3, '102实验室', 3, '张教授', 1, '2026-06-01', '2026-06-01 14:00:00', '2024-06-01 15:40:00', 52, 49, 3, 0, 0, 94.23, 2, 1, '2026-06-01 17:11:42', '2026-06-03 14:35:55', 0);
|
|
|
INSERT INTO `att_task` VALUES (4, 'ATT202405310001', 4, 4, '线性代数', 4, '408教室', 4, '赵教授', 3, '2026-06-01', '2026-06-01 08:00:00', '2024-05-31 09:40:00', 40, 38, 2, 0, 0, 95.00, 2, 1, '2026-06-01 17:11:42', '2026-06-03 14:38:03', 0);
|
|
|
INSERT INTO `att_task` VALUES (5, 'ATT202405310002', 5, 5, '马克思原理', 5, '大阶梯教室', 5, '刘老师', 5, '2026-06-01', '2026-06-01 10:00:00', '2024-05-31 11:40:00', 120, 108, 12, 0, 0, 90.00, 2, 1, '2026-06-01 17:11:42', '2026-06-03 14:38:10', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for behavior_record
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `behavior_record`;
|
|
|
CREATE TABLE `behavior_record` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`task_id` bigint UNSIGNED NOT NULL COMMENT '考勤任务ID',
|
|
|
`course_id` bigint UNSIGNED NOT NULL COMMENT '课程ID',
|
|
|
`classroom_id` bigint UNSIGNED NOT NULL COMMENT '教室ID',
|
|
|
`student_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '学生ID(可为空,表示整体统计)',
|
|
|
`behavior_type_id` bigint UNSIGNED NOT NULL COMMENT '行为类型ID',
|
|
|
`behavior_time` datetime NOT NULL COMMENT '行为发生时间',
|
|
|
`duration` int NULL DEFAULT NULL COMMENT '持续时间(秒)',
|
|
|
`confidence` decimal(5, 2) NULL DEFAULT NULL COMMENT 'AI识别置信度',
|
|
|
`snapshot_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '行为抓拍图片',
|
|
|
`is_warning` tinyint NOT NULL DEFAULT 0 COMMENT '是否预警:0-否 1-是',
|
|
|
`warning_level` tinyint NULL DEFAULT NULL COMMENT '预警级别:1-低 2-中 3-高',
|
|
|
`handled` tinyint NOT NULL DEFAULT 0 COMMENT '是否已处理:0-否 1-是',
|
|
|
`handler_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '处理人ID',
|
|
|
`handle_time` datetime NULL DEFAULT NULL COMMENT '处理时间',
|
|
|
`handle_remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '处理备注',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
INDEX `idx_task_id`(`task_id` ASC) USING BTREE,
|
|
|
INDEX `idx_course_id`(`course_id` ASC) USING BTREE,
|
|
|
INDEX `idx_student_id`(`student_id` ASC) USING BTREE,
|
|
|
INDEX `idx_behavior_type_id`(`behavior_type_id` ASC) USING BTREE,
|
|
|
INDEX `idx_behavior_time`(`behavior_time` ASC) USING BTREE,
|
|
|
INDEX `idx_is_warning`(`is_warning` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 13 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '课堂行为记录表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of behavior_record
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `behavior_record` VALUES (1, 1, 1, 1, NULL, 1, '2026-06-01 08:15:00', 600, 0.95, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:04');
|
|
|
INSERT INTO `behavior_record` VALUES (2, 1, 1, 1, NULL, 1, '2026-06-01 08:30:00', 900, 0.92, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:08');
|
|
|
INSERT INTO `behavior_record` VALUES (3, 1, 1, 1, NULL, 2, '2026-06-01 08:45:00', 120, 0.88, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:16');
|
|
|
INSERT INTO `behavior_record` VALUES (4, 1, 1, 1, NULL, 3, '2026-06-01 09:00:00', 300, 0.85, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:20');
|
|
|
INSERT INTO `behavior_record` VALUES (5, 1, 1, 1, NULL, 4, '2026-06-01 09:10:00', 180, 0.78, NULL, 1, 1, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:23');
|
|
|
INSERT INTO `behavior_record` VALUES (6, 1, 1, 1, NULL, 7, '2026-06-01 09:20:00', 60, 0.65, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:27');
|
|
|
INSERT INTO `behavior_record` VALUES (7, 2, 2, 2, NULL, 1, '2026-06-01 10:15:00', 1200, 0.96, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:31');
|
|
|
INSERT INTO `behavior_record` VALUES (8, 2, 2, 2, NULL, 2, '2026-06-01 10:30:00', 180, 0.90, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:33');
|
|
|
INSERT INTO `behavior_record` VALUES (9, 2, 2, 2, NULL, 3, '2026-06-01 11:00:00', 600, 0.82, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:37');
|
|
|
INSERT INTO `behavior_record` VALUES (10, 3, 3, 3, NULL, 1, '2026-06-01 14:10:00', 800, 0.94, NULL, 0, NULL, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:40');
|
|
|
INSERT INTO `behavior_record` VALUES (11, 3, 3, 3, NULL, 4, '2026-06-01 14:30:00', 240, 0.80, NULL, 1, 1, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:43');
|
|
|
INSERT INTO `behavior_record` VALUES (12, 3, 3, 3, NULL, 5, '2026-06-01 14:50:00', 300, 0.75, NULL, 1, 2, 0, NULL, NULL, NULL, 1, '2026-06-01 17:11:42', 0, '2026-06-03 11:33:47');
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for behavior_type
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `behavior_type`;
|
|
|
CREATE TABLE `behavior_type` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`type_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '类型编码',
|
|
|
`type_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '类型名称',
|
|
|
`category` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '分类:positive-积极/neutral-中性/negative-消极',
|
|
|
`color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图表颜色',
|
|
|
`sort_order` int NOT NULL DEFAULT 0 COMMENT '排序',
|
|
|
`description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '描述',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_type_code`(`type_code` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '行为类型表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of behavior_type
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `behavior_type` VALUES (1, 'focus', '专注听讲', 'positive', '#52c41a', 1, '学生专注听课', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
INSERT INTO `behavior_type` VALUES (2, 'raise_hand', '举手互动', 'positive', '#1890ff', 2, '学生举手发言或提问', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
INSERT INTO `behavior_type` VALUES (3, 'writing', '低头书写', 'neutral', '#722ed1', 3, '学生低头做笔记或写作业', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
INSERT INTO `behavior_type` VALUES (4, 'talking', '交谈讨论', 'neutral', '#faad14', 4, '学生与旁边同学交谈', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
INSERT INTO `behavior_type` VALUES (5, 'sleeping', '趴桌睡觉', 'negative', '#f5222d', 5, '学生趴在桌上睡觉', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
INSERT INTO `behavior_type` VALUES (6, 'phone', '使用手机', 'negative', '#ff4d4f', 6, '学生在课堂上使用手机', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
INSERT INTO `behavior_type` VALUES (7, 'other', '其他', 'neutral', '#bfbfbf', 99, '其他未分类行为', 1, '2026-06-01 17:11:42', 0, '2026-06-02 17:16:38');
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for device
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `device`;
|
|
|
CREATE TABLE `device` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`device_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '设备编号',
|
|
|
`device_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '设备名称',
|
|
|
`device_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '设备类型:camera-摄像头/face_recognition-人脸识别终端/nvr-NVR',
|
|
|
`brand` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '品牌',
|
|
|
`model` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '型号',
|
|
|
`serial_no` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '序列号',
|
|
|
`ip_address` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'IP地址',
|
|
|
`port` int NULL DEFAULT NULL COMMENT '端口',
|
|
|
`mac_address` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'MAC地址',
|
|
|
`classroom_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '安装教室ID',
|
|
|
`location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '安装位置描述',
|
|
|
`firmware_version` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '固件版本',
|
|
|
`last_heartbeat` datetime NULL DEFAULT NULL COMMENT '最后心跳时间',
|
|
|
`online_status` tinyint NOT NULL DEFAULT 0 COMMENT '在线状态:0-离线 1-在线',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '使用状态:0-停用 1-正常 2-维修中',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_device_no`(`device_no` ASC) USING BTREE,
|
|
|
INDEX `idx_classroom_id`(`classroom_id` ASC) USING BTREE,
|
|
|
INDEX `idx_device_type`(`device_type` ASC) USING BTREE,
|
|
|
INDEX `idx_online_status`(`online_status` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '设备表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of device
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `device` VALUES (1, 'CAM001', '301教室摄像头', 'camera', '海康威视', 'DS-2CD3T86FWDV2', NULL, '192.168.1.101', 80, NULL, 1, '301教室前方', NULL, NULL, 1, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `device` VALUES (2, 'CAM002', '205教室摄像头', 'camera', '海康威视', 'DS-2CD3T86FWDV2', NULL, '192.168.1.102', 80, NULL, 2, '205教室前方', NULL, NULL, 1, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `device` VALUES (3, 'CAM003', '102实验室摄像头', 'camera', '大华', 'DH-IPC-HFW4631M', NULL, '192.168.1.103', 80, NULL, 3, '102实验室后方', NULL, NULL, 1, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `device` VALUES (4, 'CAM004', '408教室摄像头', 'camera', '海康威视', 'DS-2CD3T86FWDV2', NULL, '192.168.1.104', 80, NULL, 4, '408教室前方', NULL, NULL, 0, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `device` VALUES (5, 'CAM005', '大阶梯教室摄像头', 'camera', '大华', 'DH-IPC-HFW4631M', NULL, '192.168.1.105', 80, NULL, 5, '大阶梯教室中央', NULL, NULL, 1, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `device` VALUES (6, 'FACE001', '301人脸识别终端', 'face_recognition', '旷视', 'FaceID-Pro', NULL, '192.168.1.201', 8080, NULL, 1, '301教室门口', NULL, NULL, 1, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `device` VALUES (7, 'FACE002', '205人脸识别终端', 'face_recognition', '旷视', 'FaceID-Pro', NULL, '192.168.1.202', 8080, NULL, 2, '205教室门口', NULL, NULL, 1, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_class
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_class`;
|
|
|
CREATE TABLE `edu_class` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`class_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '班级名称',
|
|
|
`class_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '班级编码',
|
|
|
`grade` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '年级',
|
|
|
`major` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '专业',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`student_count` int NOT NULL DEFAULT 0 COMMENT '学生人数',
|
|
|
`headteacher_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '班主任ID(教师)',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_class_code`(`class_code` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '班级表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_class
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `edu_class` VALUES (1, '计算机科学与技术1班', 'CS202401', '2024级', '计算机科学与技术', 1, 52, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_class` VALUES (2, '软件工程2班', 'SE202402', '2024级', '软件工程', 1, 45, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_class` VALUES (3, '数学与应用数学1班', 'MA202401', '2024级', '数学与应用数学', 1, 40, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_class` VALUES (4, '英语师范1班', 'EN202401', '2024级', '英语', 1, 38, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_class` VALUES (5, '思想政治教育1班', 'PE202401', '2024级', '思想政治教育', 1, 120, NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_building
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_building`;
|
|
|
CREATE TABLE `edu_building` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`building_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '教学楼名称',
|
|
|
`building_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '教学楼编码',
|
|
|
`floors` int NULL DEFAULT NULL COMMENT '楼层数',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:0-停用 1-正常',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '教学楼表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_building
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `edu_building` VALUES (1, '第一教学楼', 'BLD-A', 5, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_building` VALUES (2, '第二教学楼', 'BLD-B', 6, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_building` VALUES (3, '实验楼', 'BLD-C', 3, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_classroom
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_classroom`;
|
|
|
CREATE TABLE `edu_classroom` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`room_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '教室编号',
|
|
|
`room_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '教室名称',
|
|
|
`building_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属教学楼ID',
|
|
|
`floor` int NULL DEFAULT NULL COMMENT '楼层',
|
|
|
`capacity` int NULL DEFAULT NULL COMMENT '容纳人数',
|
|
|
`room_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '普通教室' COMMENT '教室类型',
|
|
|
`camera_device_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '关联摄像头设备ID',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:0-停用 1-正常',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_room_no`(`room_no` ASC) USING BTREE,
|
|
|
INDEX `idx_building_id`(`building_id` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '教室表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_classroom
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `edu_classroom` VALUES (1, '301', '301教室', 1, 3, 50, '普通教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (2, '205', '205教室', 1, 2, 45, '普通教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (3, '102', '102实验室', 3, 1, 55, '实验室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (4, '408', '408教室', 2, 4, 48, '普通教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (5, 'DJT', '大阶梯教室', 1, 1, 150, '阶梯教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (6, '302', '302教室', 1, 3, 50, '普通教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (7, '303', '303教室', 1, 3, 50, '普通教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_classroom` VALUES (8, '304', '304教室', 1, 3, 50, '普通教室', NULL, 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_course
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_course`;
|
|
|
CREATE TABLE `edu_course` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`course_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '课程编码',
|
|
|
`course_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '课程名称',
|
|
|
`course_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '课程类型',
|
|
|
`credit` decimal(3, 1) NULL DEFAULT NULL COMMENT '学分',
|
|
|
`teacher_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '授课教师ID',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '课程描述',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_course_code`(`course_code` ASC) USING BTREE,
|
|
|
INDEX `idx_teacher_id`(`teacher_id` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '课程表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_course
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `edu_course` VALUES (1, 'CS101', '高等数学A', '必修课', 4.0, 4, 1, '高等数学基础课程', 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_course` VALUES (2, 'EN101', '大学英语B', '必修课', 3.0, 2, 1, '大学英语基础课程', 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_course` VALUES (3, 'CS102', '计算机导论', '必修课', 2.0, 3, 1, '计算机专业入门课程', 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_course` VALUES (4, 'MA101', '线性代数', '必修课', 3.0, 4, 1, '线性代数基础课程', 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_course` VALUES (5, 'PE101', '马克思原理', '必修课', 3.0, 5, 1, '马克思主义基本原理', 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_course_schedule
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_course_schedule`;
|
|
|
CREATE TABLE `edu_course_schedule` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`course_id` bigint UNSIGNED NOT NULL COMMENT '课程ID',
|
|
|
`classroom_id` bigint UNSIGNED NOT NULL COMMENT '教室ID',
|
|
|
`class_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '上课班级ID',
|
|
|
`teacher_id` bigint UNSIGNED NOT NULL COMMENT '授课教师ID',
|
|
|
`week_day` tinyint NOT NULL COMMENT '星期几:1-7',
|
|
|
`start_section` tinyint NOT NULL COMMENT '开始节次',
|
|
|
`end_section` tinyint NOT NULL COMMENT '结束节次',
|
|
|
`start_week` int NOT NULL DEFAULT 1 COMMENT '开始周',
|
|
|
`end_week` int NOT NULL DEFAULT 16 COMMENT '结束周',
|
|
|
`semester` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学期,如:2024-2025-1',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
INDEX `idx_course_id`(`course_id` ASC) USING BTREE,
|
|
|
INDEX `idx_classroom_id`(`classroom_id` ASC) USING BTREE,
|
|
|
INDEX `idx_teacher_id`(`teacher_id` ASC) USING BTREE,
|
|
|
INDEX `idx_class_id`(`class_id` ASC) USING BTREE,
|
|
|
INDEX `idx_week_day`(`week_day` ASC) USING BTREE,
|
|
|
INDEX `idx_semester`(`semester` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '课程安排表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_course_schedule
|
|
|
-- ----------------------------
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_student
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_student`;
|
|
|
CREATE TABLE `edu_student` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`student_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学号',
|
|
|
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '姓名',
|
|
|
`gender` tinyint NULL DEFAULT NULL COMMENT '性别:0-女 1-男',
|
|
|
`avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '头像URL',
|
|
|
`face_feature` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '人脸特征值(Base64)',
|
|
|
`face_image` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '人脸照片URL',
|
|
|
`class_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属班级ID',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '手机号',
|
|
|
`email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱',
|
|
|
`user_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '关联系统用户ID',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:0-离校 1-在读',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_student_no`(`student_no` ASC) USING BTREE,
|
|
|
INDEX `idx_class_id`(`class_id` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_user_id`(`user_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '学生表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_student
|
|
|
-- ----------------------------
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for edu_teacher
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `edu_teacher`;
|
|
|
CREATE TABLE `edu_teacher` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`teacher_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '工号',
|
|
|
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '姓名',
|
|
|
`gender` tinyint NULL DEFAULT NULL COMMENT '性别:0-女 1-男',
|
|
|
`avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '头像URL',
|
|
|
`title` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '职称',
|
|
|
`department` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '所属院系',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '手机号',
|
|
|
`email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱',
|
|
|
`user_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '关联系统用户ID',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_teacher_no`(`teacher_no` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_user_id`(`user_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '教师表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of edu_teacher
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `edu_teacher` VALUES (1, 'T001', '王教授', 1, NULL, '教授', '计算机学院', 1, '13900139001', 'wang@school.edu', NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_teacher` VALUES (2, 'T002', '李老师', 0, NULL, '讲师', '外国语学院', 1, '13900139002', 'li@school.edu', NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_teacher` VALUES (3, 'T003', '张教授', 1, NULL, '教授', '计算机学院', 1, '13900139003', 'zhang@school.edu', NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_teacher` VALUES (4, 'T004', '赵教授', 1, NULL, '副教授', '数学学院', 1, '13900139004', 'zhao@school.edu', NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `edu_teacher` VALUES (5, 'T005', '刘老师', 0, NULL, '讲师', '马克思主义学院', 1, '13900139005', 'liu@school.edu', NULL, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for monitor_record
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `monitor_record`;
|
|
|
CREATE TABLE `monitor_record` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`classroom_id` bigint UNSIGNED NOT NULL COMMENT '教室ID',
|
|
|
`device_id` bigint UNSIGNED NOT NULL COMMENT '监控设备ID',
|
|
|
`record_date` date NOT NULL COMMENT '记录日期',
|
|
|
`start_time` datetime NOT NULL COMMENT '开始时间',
|
|
|
`end_time` datetime NULL DEFAULT NULL COMMENT '结束时间',
|
|
|
`stream_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '直播流地址',
|
|
|
`record_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '录像地址',
|
|
|
`file_size` bigint NULL DEFAULT NULL COMMENT '录像文件大小(字节)',
|
|
|
`record_status` tinyint NOT NULL DEFAULT 1 COMMENT '记录状态:0-失败 1-成功',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
INDEX `idx_classroom_id`(`classroom_id` ASC) USING BTREE,
|
|
|
INDEX `idx_device_id`(`device_id` ASC) USING BTREE,
|
|
|
INDEX `idx_record_date`(`record_date` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '教室监控记录表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of monitor_record
|
|
|
-- ----------------------------
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for sys_operation_log
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `sys_operation_log`;
|
|
|
CREATE TABLE `sys_operation_log` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`user_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '操作用户ID',
|
|
|
`username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '操作用户名',
|
|
|
`module` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '操作模块',
|
|
|
`action` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '操作动作',
|
|
|
`method` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '请求方法',
|
|
|
`request_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '请求URL',
|
|
|
`request_params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '请求参数',
|
|
|
`response_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '响应数据',
|
|
|
`ip_address` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'IP地址',
|
|
|
`user_agent` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'User-Agent',
|
|
|
`duration` int NULL DEFAULT NULL COMMENT '执行时长(毫秒)',
|
|
|
`status` tinyint NULL DEFAULT NULL COMMENT '状态:0-失败 1-成功',
|
|
|
`error_msg` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '错误信息',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
INDEX `idx_user_id`(`user_id` ASC) USING BTREE,
|
|
|
INDEX `idx_module`(`module` ASC) USING BTREE,
|
|
|
INDEX `idx_created_at`(`created_at` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统操作日志表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of sys_operation_log
|
|
|
-- ----------------------------
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for sys_permission
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `sys_permission`;
|
|
|
CREATE TABLE `sys_permission` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`perm_code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '权限编码',
|
|
|
`perm_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '权限名称',
|
|
|
`perm_type` tinyint NOT NULL DEFAULT 1 COMMENT '权限类型:1-菜单 2-按钮 3-接口',
|
|
|
`parent_id` bigint UNSIGNED NULL DEFAULT 0 COMMENT '父权限ID',
|
|
|
`path` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '前端路由路径',
|
|
|
`icon` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图标',
|
|
|
`sort_order` int NOT NULL DEFAULT 0 COMMENT '排序',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_perm_code`(`perm_code` ASC) USING BTREE,
|
|
|
INDEX `idx_parent_id`(`parent_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '权限表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of sys_permission
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `sys_permission` VALUES (1, 'dashboard', '首页', 1, 0, '/dashboard', 'HomeFilled', 1, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (2, 'behavior', '课堂行为分析', 1, 0, '/behavior', 'TrendCharts', 2, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (3, 'history', '历史记录查询', 1, 0, '/history', 'Search', 3, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (4, 'bigscreen', '数据展示大屏', 1, 0, '/bigscreen', 'DataAnalysis', 4, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (5, 'settings', '系统设置', 1, 0, '/settings', 'Setting', 5, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (6, 'settings.personnel', '人员管理', 1, 5, '/settings/personnel', 'User', 1, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (7, 'settings.device', '设备管理', 1, 5, '/settings/device', 'Monitor', 2, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (8, 'settings.rules', '考勤规则设置', 1, 5, '/settings/rules', 'Notebook', 3, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_permission` VALUES (9, 'settings.permissions', '权限管理', 1, 5, '/settings/permissions', 'Lock', 4, 1, '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for sys_role
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `sys_role`;
|
|
|
CREATE TABLE `sys_role` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`role_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '角色编码:admin/teacher/staff',
|
|
|
`role_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '角色名称',
|
|
|
`description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '角色描述',
|
|
|
`sort_order` int NOT NULL DEFAULT 0 COMMENT '排序',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:0-禁用 1-启用',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_role_code`(`role_code` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '角色表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of sys_role
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `sys_role` VALUES (1, 'admin', '管理员', '系统管理员,拥有全部权限', 1, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role` VALUES (2, 'teacher', '教师', '授课教师,可查看本班/本课程考勤', 2, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role` VALUES (3, 'staff', '教务员', '教务管理人员,可查看和管理考勤数据', 3, 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for sys_role_permission
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `sys_role_permission`;
|
|
|
CREATE TABLE `sys_role_permission` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
|
`role_id` bigint UNSIGNED NOT NULL COMMENT '角色ID',
|
|
|
`permission_id` bigint UNSIGNED NOT NULL COMMENT '权限ID',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_role_perm`(`role_id` ASC, `permission_id` ASC) USING BTREE,
|
|
|
INDEX `idx_permission_id`(`permission_id` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 24 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '角色权限关联表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of sys_role_permission
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `sys_role_permission` VALUES (1, 1, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (2, 1, 2, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (3, 1, 3, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (4, 1, 4, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (5, 1, 5, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (6, 1, 6, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (7, 1, 7, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (8, 1, 8, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (9, 1, 9, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (16, 3, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (17, 3, 2, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (18, 3, 3, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (19, 3, 6, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (20, 3, 8, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (21, 2, 1, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (22, 2, 2, '2026-06-01 17:11:42', 0);
|
|
|
INSERT INTO `sys_role_permission` VALUES (23, 2, 3, '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for sys_school
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `sys_school`;
|
|
|
CREATE TABLE `sys_school` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学校名称',
|
|
|
`code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '学校编码',
|
|
|
`address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '地址',
|
|
|
`contact_phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '联系电话',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:0-禁用 1-启用',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_school_code`(`code` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '学校/机构表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of sys_school
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `sys_school` VALUES (1, '阳光实验学校', 'SCHOOL_001', '阳光大道88号', '010-88888888', 1, '2026-06-01 17:11:42', '2026-06-01 17:11:42', 0);
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Table structure for sys_user
|
|
|
-- ----------------------------
|
|
|
DROP TABLE IF EXISTS `sys_user`;
|
|
|
CREATE TABLE `sys_user` (
|
|
|
`id` bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
`username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '登录账号(工号/学号)',
|
|
|
`password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '登录密码(BCrypt加密)',
|
|
|
`real_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '真实姓名',
|
|
|
`avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '头像URL',
|
|
|
`role_id` bigint UNSIGNED NOT NULL COMMENT '角色ID',
|
|
|
`school_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '所属学校ID',
|
|
|
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '手机号',
|
|
|
`email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱',
|
|
|
`last_login_time` datetime NULL DEFAULT NULL COMMENT '最后登录时间',
|
|
|
`last_login_ip` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '最后登录IP',
|
|
|
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:0-禁用 1-启用',
|
|
|
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
|
`deleted` tinyint NULL DEFAULT 0,
|
|
|
PRIMARY KEY (`id`) USING BTREE,
|
|
|
UNIQUE INDEX `uk_username`(`username` ASC) USING BTREE,
|
|
|
INDEX `idx_role_id`(`role_id` ASC) USING BTREE,
|
|
|
INDEX `idx_school_id`(`school_id` ASC) USING BTREE,
|
|
|
INDEX `idx_status`(`status` ASC) USING BTREE
|
|
|
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统用户表' ROW_FORMAT = Dynamic;
|
|
|
|
|
|
-- ----------------------------
|
|
|
-- Records of sys_user
|
|
|
-- ----------------------------
|
|
|
INSERT INTO `sys_user` VALUES (1, 'admin', 'e10adc3949ba59abbe56e057f20f883e', '管理员', NULL, 1, 1, '13800138001', 'admin@school.edu', '2026-06-03 10:13:06', '10.23.22.43', 1, '2026-06-01 17:11:42', '2026-06-02 17:26:20', 0);
|
|
|
|
|
|
SET FOREIGN_KEY_CHECKS = 1;
|