xiaofei 1 年間 前
コミット
3530d0b043
1 ファイル変更634 行追加0 行削除
  1. 634 0
      distributed-print/install/mysql/upgrade/3.3.0.sql

+ 634 - 0
distributed-print/install/mysql/upgrade/3.3.0.sql

@@ -1,3 +1,637 @@
+-- ----------------------------
+-- Table structure for mark_arbitrate_history
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_arbitrate_history` (
+    `id` bigint(20) NOT NULL COMMENT '自增主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷编号',
+    `group_number` int(11) NOT NULL COMMENT '大题号',
+    `student_code` varchar(64) NOT NULL COMMENT '准考证号',
+    `secret_number` varchar(64) NOT NULL COMMENT '考生密号',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `status` varchar(16) NOT NULL COMMENT '状态',
+    `update_user_id` bigint(20) DEFAULT NULL COMMENT '处理人ID',
+    `total_score` double DEFAULT NULL COMMENT '总分',
+    `score_list` text COMMENT '给分明细',
+    `create_time` bigint(20) NOT NULL COMMENT '创建时间',
+    `update_time` bigint(20) DEFAULT NULL COMMENT '处理时间',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `index1` (`exam_id`,`paper_number`,`group_number`,`status`) USING BTREE,
+    KEY `index3` (`student_id`,`status`) USING BTREE,
+    KEY `index2` (`update_user_id`,`status`,`update_time`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='仲裁记录表';
+
+-- ----------------------------
+-- Table structure for mark_group
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_group` (
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `course_code` varchar(100) DEFAULT NULL COMMENT '课程代码',
+    `course_name` varchar(100) DEFAULT NULL COMMENT '课程名称',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷编号',
+    `number` int(11) NOT NULL COMMENT '序号',
+    `pic_list` text COMMENT '小图配置',
+    `total_score` double NOT NULL COMMENT '满分',
+    `double_enable` tinyint(1) DEFAULT '0' COMMENT '是否开启双评',
+    `double_rate` double DEFAULT NULL COMMENT '双评比例',
+    `arbitrate_threshold` double DEFAULT NULL COMMENT '仲裁阈值',
+    `score_policy` varchar(16) DEFAULT NULL COMMENT '合分策略',
+    `task_count` int(11) NOT NULL COMMENT '任务总量',
+    `marked_count` int(11) NOT NULL COMMENT '已评数量',
+    `left_count` int(11) DEFAULT NULL COMMENT '剩余数量',
+    PRIMARY KEY (`exam_id`,`paper_number`,`number`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评卷分组表';
+
+-- ----------------------------
+-- Table structure for mark_group_student
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_group_student` (
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `group_number` int(11) NOT NULL COMMENT '分组ID',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(32) NOT NULL COMMENT '科目代码',
+    `status` varchar(16) NOT NULL COMMENT '状态',
+    PRIMARY KEY (`student_id`,`group_number`) USING BTREE,
+    KEY `index1` (`exam_id`,`paper_number`,`group_number`,`status`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='考生分组状态表';
+
+-- ----------------------------
+-- Table structure for mark_header_subjective_score
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_header_subjective_score` (
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `main_number` int(11) NOT NULL COMMENT '大题号',
+    `sub_number` varchar(32) NOT NULL COMMENT '小题号',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '课程代码',
+    `group_number` int(11) NOT NULL COMMENT '分组序号',
+    `group_score` double NOT NULL COMMENT '分组得分',
+    `main_score` double NOT NULL COMMENT '大题得分',
+    `score` double NOT NULL COMMENT '小题得分',
+    `uncalculate` tinyint(4) NOT NULL COMMENT '是否合分',
+    `user_id` bigint(20) DEFAULT NULL COMMENT '科组长ID',
+    PRIMARY KEY (`student_id`,`main_number`,`sub_number`) USING BTREE,
+    KEY `index1` (`exam_id`,`paper_number`,`main_number`,`main_score`) USING BTREE,
+    KEY `index11` (`exam_id`,`paper_number`,`main_number`,`main_score`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='主观题得分明细表';
+
+-- ----------------------------
+-- Table structure for mark_header_tag
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_header_tag` (
+    `id` bigint(20) NOT NULL COMMENT '主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(45) NOT NULL COMMENT '试卷编号',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `group_number` int(11) NOT NULL COMMENT '大题题号',
+    `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+    `tag_name` varchar(64) NOT NULL COMMENT '标记内容',
+    `position_x` double NOT NULL COMMENT 'X轴位置',
+    `position_y` double NOT NULL COMMENT 'Y轴位置',
+    `offset_index` int(11) NOT NULL COMMENT '裁切图序号',
+    `offset_x` int(11) NOT NULL COMMENT '裁切图X轴坐标',
+    `offset_y` int(11) NOT NULL COMMENT '裁切图Y轴坐标',
+    `tag_type` varchar(64) DEFAULT NULL COMMENT '标记类型',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `index1` (`student_id`,`group_number`) USING BTREE,
+    KEY `index2` (`user_id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='组长特殊标记表';
+
+-- ----------------------------
+-- Table structure for mark_header_track
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_header_track` (
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `question_number` varchar(128) NOT NULL COMMENT '完整题号',
+    `number` int(11) NOT NULL COMMENT '序号',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '科目代码',
+    `group_number` int(11) NOT NULL COMMENT '大题题号',
+    `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+    `score` double NOT NULL COMMENT '给分',
+    `position_x` double NOT NULL COMMENT 'X轴位置',
+    `position_y` double NOT NULL COMMENT 'Y轴位置',
+    `offset_index` int(11) NOT NULL COMMENT '裁切图序号',
+    `offset_x` int(11) NOT NULL COMMENT '裁切图X轴坐标',
+    `offset_y` int(11) NOT NULL COMMENT '裁切图Y轴坐标',
+    PRIMARY KEY (`student_id`,`question_number`,`number`) USING BTREE,
+    KEY `index1` (`student_id`,`group_number`) USING BTREE,
+    KEY `index2` (`user_id`) USING BTREE,
+    KEY `index3` (`exam_id`,`paper_number`,`group_number`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='组长轨迹给分表';
+
+-- ----------------------------
+-- Table structure for mark_paper
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_paper` (
+    `id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `course_code` varchar(32) NOT NULL COMMENT '课程代码',
+    `course_name` varchar(100) NOT NULL COMMENT '科目名称',
+    `paper_number` varchar(64) DEFAULT NULL COMMENT '试卷编号',
+    `course_paper_id` varchar(32) DEFAULT NULL COMMENT '试卷编号(交互)',
+    `objective_score` double NOT NULL COMMENT '客观题满分',
+    `subjective_score` double NOT NULL COMMENT '主观题满分',
+    `total_score` double NOT NULL COMMENT '全卷满分',
+    `student_count` int(11) DEFAULT NULL COMMENT '考生人数',
+    `upload_count` int(11) NOT NULL COMMENT '已上传人数',
+    `absent_count` int(11) DEFAULT NULL COMMENT '缺考人数',
+    `remark` varchar(128) DEFAULT NULL COMMENT '备注',
+    `sheet_config` text COMMENT '原图遮盖配置',
+    `pass_score` double DEFAULT NULL COMMENT '及格分',
+    `excellent_score` double DEFAULT NULL COMMENT '优秀分',
+    `card_type` varchar(16) DEFAULT NULL COMMENT '题卡类型',
+    `paper_file_path` varchar(500) DEFAULT NULL COMMENT '试卷文件类型',
+    `answer_file_path` varchar(500) DEFAULT NULL COMMENT '标答文件类型',
+    `auto_scroll` tinyint(1) DEFAULT NULL COMMENT '评卷是否跳转',
+    `mark_mode` varchar(16) DEFAULT NULL COMMENT '评卷模式',
+    `force_mode` tinyint(1) DEFAULT '1' COMMENT '强制评卷模式(不限为false)',
+    `mark_start_time` bigint(20) DEFAULT NULL COMMENT '评卷开始时间',
+    `mark_end_time` bigint(20) DEFAULT NULL COMMENT '评卷结束时间',
+    `sheet_view` tinyint(4) DEFAULT NULL COMMENT '是否原卷显示',
+    `show_object_score` tinyint(4) DEFAULT NULL COMMENT '评卷是否显示客观分',
+    `group_status` tinyint(4) DEFAULT '0' COMMENT '评卷分组是否提交',
+    `open_mark_class` tinyint(4) DEFAULT '0' COMMENT '是否开启分班阅',
+    `status` varchar(10) DEFAULT NULL COMMENT '评卷状态',
+    `package_code` mediumtext COMMENT '签到表编号',
+    `user_id` bigint(20) DEFAULT NULL COMMENT '命题老师ID',
+    `paper_type` varchar(10) DEFAULT NULL COMMENT '试卷类型',
+    PRIMARY KEY (`id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='考试科目表';
+
+-- ----------------------------
+-- Table structure for mark_paper_package
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_paper_package` (
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `course_code` varchar(32) NOT NULL COMMENT '课程代码',
+    `course_name` varchar(100) NOT NULL COMMENT '科目名称',
+    `paper_number` varchar(50) DEFAULT NULL COMMENT '试卷编号',
+    `course_paper_id` varchar(50) NOT NULL COMMENT '课程试卷号',
+    `paper_type` varchar(10) NOT NULL COMMENT '试卷类型',
+    `package_code` varchar(10) NOT NULL COMMENT '卷袋号',
+    PRIMARY KEY (`exam_id`,`course_paper_id`,`paper_type`,`package_code`)
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for mark_problem_history
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_problem_history` (
+    `id` bigint(20) NOT NULL COMMENT '自增主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(32) NOT NULL COMMENT '试卷编号',
+    `group_number` int(11) NOT NULL COMMENT '大题号',
+    `student_code` varchar(64) NOT NULL COMMENT '学号',
+    `secret_number` varchar(64) NOT NULL COMMENT '考生密号',
+    `type` varchar(10) NOT NULL COMMENT '问题类型',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `task_id` bigint(20) NOT NULL COMMENT '评卷任务ID',
+    `status` varchar(16) DEFAULT NULL COMMENT '状态',
+    `update_user_id` bigint(20) DEFAULT NULL COMMENT '处理人ID',
+    `user_id` bigint(20) DEFAULT NULL COMMENT '评卷员ID',
+    `score_list` text COMMENT '给分明细',
+    `create_time` bigint(20) NOT NULL COMMENT '创建时间',
+    `update_time` bigint(20) DEFAULT NULL COMMENT '处理时间',
+    `remark` varchar(100) DEFAULT NULL COMMENT '问题原因',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `index2` (`update_user_id`,`status`,`update_time`) USING BTREE,
+    KEY `index3` (`student_id`,`status`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='问题卷历史表';
+
+-- ----------------------------
+-- Table structure for mark_question
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_question` (
+    `id` bigint(20) NOT NULL COMMENT '主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷类型',
+    `paper_type` varchar(100) DEFAULT NULL COMMENT '卷型',
+    `objective` tinyint(4) NOT NULL COMMENT '是否客观题',
+    `group_number` int(11) DEFAULT NULL COMMENT '分组序号',
+    `main_number` int(11) NOT NULL COMMENT '大题号',
+    `sub_number` int(11) NOT NULL COMMENT '小题号',
+    `main_title` varchar(128) NOT NULL COMMENT '大题名称',
+    `answer` varchar(16) DEFAULT NULL COMMENT '正确答案',
+    `total_score` double DEFAULT NULL COMMENT '满分',
+    `option_count` int(11) DEFAULT NULL COMMENT '客观题答案数量',
+    `interval_score` double DEFAULT NULL COMMENT '评卷间隔分',
+    `objective_policy` varchar(16) DEFAULT NULL COMMENT '客观题判分策略',
+    `question_type` varchar(2) DEFAULT NULL COMMENT '题型',
+    `name` varchar(128) DEFAULT NULL,
+    `paper_index` int(11) DEFAULT NULL,
+    `page_index` int(11) DEFAULT NULL,
+    PRIMARY KEY (`id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='小题信息表';
+
+-- ----------------------------
+-- Table structure for mark_special_tag
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_special_tag` (
+    `id` bigint(20) NOT NULL COMMENT '主键',
+    `task_id` bigint(20) NOT NULL COMMENT '评卷任务ID',
+    `tag_name` varchar(64) NOT NULL COMMENT '标记内容',
+    `position_x` double NOT NULL COMMENT 'X轴位置',
+    `position_y` double NOT NULL COMMENT 'Y轴位置',
+    `offset_index` int(11) NOT NULL COMMENT '裁切图序号',
+    `offset_x` int(11) NOT NULL COMMENT '裁切图X轴坐标',
+    `offset_y` int(11) NOT NULL COMMENT '裁切图Y轴坐标',
+    `tag_type` varchar(64) DEFAULT NULL COMMENT '标记类型',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `index1` (`task_id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='特殊标记表';
+
+-- ----------------------------
+-- Table structure for mark_student
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_student` (
+    `id` bigint(20) NOT NULL COMMENT '主键(和exam_student表id一样)',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `course_code` varchar(32) NOT NULL COMMENT '科目代码',
+    `course_name` varchar(100) NOT NULL COMMENT '科目名称',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷类型',
+    `course_paper_id` varchar(45) DEFAULT NULL COMMENT '试卷编号(交互)',
+    `paper_type` varchar(10) DEFAULT NULL COMMENT '试卷编号',
+    `secret_number` varchar(64) NOT NULL COMMENT '密号',
+    `student_code` varchar(64) NOT NULL COMMENT '学号',
+    `student_name` varchar(64) NOT NULL COMMENT '姓名',
+    `package_code` varchar(64) NOT NULL COMMENT '试卷袋编号',
+    `exam_place` varchar(32) DEFAULT NULL COMMENT '校区',
+    `exam_room` varchar(32) DEFAULT NULL COMMENT '考场',
+    `remark` varchar(128) DEFAULT NULL COMMENT '备注',
+    `batch_code` varchar(32) DEFAULT NULL COMMENT '扫描批次号',
+    `sheet_count` int(11) NOT NULL COMMENT '原图数量',
+    `sheet_path` mediumtext COMMENT '考生所有图片地址',
+    `answers` text COMMENT '客观题识别结果',
+    `is_upload` tinyint(4) NOT NULL COMMENT '是否已上传',
+    `is_absent` tinyint(4) NOT NULL COMMENT '是否缺考',
+    `is_manual_absent` tinyint(4) NOT NULL COMMENT '是否人工指定缺考',
+    `is_breach` tinyint(4) NOT NULL COMMENT '是否违纪',
+    `upload_time` bigint(20) DEFAULT NULL COMMENT '上传时间',
+    `check_time` bigint(20) DEFAULT NULL COMMENT '检查时间',
+    `check_user_id` bigint(20) DEFAULT NULL COMMENT '检查人ID',
+    `objective_score` double DEFAULT NULL COMMENT '客观总分',
+    `objective_score_list` text COMMENT '客观得分明细',
+    `subjective_status` varchar(16) NOT NULL COMMENT '主观题状态',
+    `subjective_score` double DEFAULT NULL COMMENT '主观总分',
+    `subjective_score_list` text COMMENT '主观得分明细',
+    `college` varchar(64) DEFAULT NULL COMMENT '学院',
+    `major_name` varchar(100) DEFAULT NULL COMMENT '专业',
+    `class_name` varchar(64) DEFAULT NULL COMMENT '班级',
+    `teacher` varchar(64) DEFAULT NULL COMMENT '任课老师',
+    `scan_status` varchar(20) DEFAULT NULL COMMENT '扫描状态',
+    `question_filled` bit(1) DEFAULT NULL,
+    `assigned` bit(1) DEFAULT NULL,
+    `assign_confirmed` bit(1) DEFAULT b'0' COMMENT '人工绑定确认',
+    `absent_suspect` bit(1) DEFAULT NULL,
+    `incomplete` bit(1) DEFAULT NULL,
+    `breach_code` varchar(32) DEFAULT NULL,
+    `omr_absent` bit(1) DEFAULT NULL COMMENT '识别缺考',
+    `omr_absent_checked` bit(1) DEFAULT NULL COMMENT '识别缺考检查',
+    `card_number` int(11) DEFAULT NULL,
+    `exam_start_time` bigint(20) DEFAULT NULL COMMENT '考试开始时间',
+    `exam_end_time` bigint(20) DEFAULT NULL COMMENT '考试结束时间',
+    `create_id` bigint(20) DEFAULT NULL COMMENT '创建人ID',
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE KEY `index2` (`exam_id`,`secret_number`) USING BTREE,
+    UNIQUE KEY `index1` (`exam_id`,`course_paper_id`,`student_code`),
+    KEY `index3` (`exam_id`,`course_code`,`upload_time`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='考试考生库';
+
+-- ----------------------------
+-- Table structure for mark_subjective_score
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_subjective_score` (
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `main_number` int(11) NOT NULL COMMENT '大题号',
+    `sub_number` varchar(32) NOT NULL COMMENT '小题号',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '课程代码',
+    `group_number` int(11) NOT NULL COMMENT '分组序号',
+    `group_score` double NOT NULL COMMENT '分组得分',
+    `main_score` double NOT NULL COMMENT '大题得分',
+    `score` double NOT NULL COMMENT '小题得分',
+    `uncalculate` tinyint(1) NOT NULL COMMENT '是否合分',
+    PRIMARY KEY (`student_id`,`main_number`,`sub_number`) USING BTREE,
+    KEY `index1` (`exam_id`,`paper_number`,`main_number`,`main_score`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='主观题得分明细表';
+
+-- ----------------------------
+-- Table structure for mark_task
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_task` (
+    `id` bigint(20) NOT NULL COMMENT '主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `course_code` varchar(32) NOT NULL COMMENT '课程代码',
+    `course_name` varchar(100) NOT NULL COMMENT '课程名称',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷编号',
+    `group_number` int(11) NOT NULL COMMENT '大题号',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `student_code` varchar(64) NOT NULL COMMENT '学号',
+    `secret_number` varchar(64) NOT NULL COMMENT '考生密号',
+    `task_number` int(11) NOT NULL COMMENT '多评任务序号',
+    `status` varchar(16) NOT NULL COMMENT '状态',
+    `user_id` bigint(20) DEFAULT NULL COMMENT '评卷员ID',
+    `marker_time` bigint(20) DEFAULT NULL COMMENT '评卷时间',
+    `marker_score` double DEFAULT NULL COMMENT '评卷总分',
+    `marker_score_list` text COMMENT '评卷给分明细',
+    `marker_spent` int(11) DEFAULT NULL COMMENT '评卷时长',
+    `header_id` bigint(20) DEFAULT NULL COMMENT '科组长ID',
+    `header_time` bigint(20) DEFAULT NULL COMMENT '科组长评卷时间',
+    `header_score` double DEFAULT NULL COMMENT '科组长总分',
+    `header_score_list` text COMMENT '科组长给分明细',
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE KEY `index2` (`student_id`,`group_number`,`task_number`) USING BTREE,
+    KEY `index3` (`user_id`,`status`,`marker_time`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评卷任务表';
+
+-- ----------------------------
+-- Table structure for mark_track
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_track` (
+    `id` bigint(20) NOT NULL,
+    `task_id` bigint(20) NOT NULL COMMENT '评卷任务ID',
+    `question_number` varchar(128) NOT NULL COMMENT '完整题号',
+    `number` int(11) NOT NULL COMMENT '序号',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷编号',
+    `group_number` int(11) NOT NULL COMMENT '大题题号',
+    `user_id` bigint(20) NOT NULL COMMENT '评卷员ID',
+    `type` varchar(10) DEFAULT NULL COMMENT '标记类型(SCORE:分数,REMARK:备注)',
+    `score` double DEFAULT NULL COMMENT '给分',
+    `remark` varchar(20) DEFAULT NULL COMMENT '备注',
+    `position_x` double NOT NULL COMMENT 'X轴位置',
+    `position_y` double NOT NULL COMMENT 'Y轴位置',
+    `offset_index` int(11) NOT NULL COMMENT '裁切图序号',
+    `offset_x` int(11) NOT NULL COMMENT '裁切图X轴坐标',
+    `offset_y` int(11) NOT NULL COMMENT '裁切图Y轴坐标',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `index2` (`user_id`) USING BTREE,
+    KEY `index3` (`exam_id`,`paper_number`,`group_number`) USING BTREE,
+    KEY `index1` (`exam_id`,`task_id`,`student_id`,`group_number`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='轨迹给分表';
+
+-- ----------------------------
+-- Table structure for mark_user_class
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_user_class` (
+    `Id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) DEFAULT NULL COMMENT '\n考试ID',
+    `paper_number` varchar(100) DEFAULT NULL COMMENT '试卷编号',
+    `group_number` int(11) DEFAULT NULL COMMENT '分组号',
+    `user_id` bigint(20) unsigned DEFAULT NULL COMMENT '评卷员ID',
+    `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+    PRIMARY KEY (`Id`) USING BTREE,
+    KEY `idx_1` (`exam_id`,`paper_number`,`group_number`,`class_name`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评卷员班级';
+
+-- ----------------------------
+-- Table structure for mark_user_group
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `mark_user_group` (
+    `id` bigint(20) NOT NULL COMMENT '主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) NOT NULL COMMENT '试卷编号',
+    `group_number` int(11) NOT NULL COMMENT '分组编号',
+    `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+    `mode` varchar(16) DEFAULT NULL COMMENT '强制评卷模式',
+    `top_count` int(11) DEFAULT NULL COMMENT '评卷数上限',
+    `finish_count` int(11) DEFAULT NULL COMMENT '完成数量',
+    `header_finish_count` int(11) DEFAULT NULL COMMENT '管理员直接打分数量',
+    `valid_count` int(11) DEFAULT NULL COMMENT '有效数量',
+    `avg_score` double DEFAULT NULL COMMENT '平均分',
+    `avg_speed` double DEFAULT NULL COMMENT '平均时长',
+    `stdev_score` double DEFAULT NULL COMMENT '标准差',
+    `max_score` double DEFAULT NULL COMMENT '最高分',
+    `min_score` double DEFAULT NULL COMMENT '最低分',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `index2` (`exam_id`,`paper_number`,`group_number`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评卷员表';
+
+-- ----------------------------
+-- Table structure for scan_answer_card
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_answer_card` (
+    `id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `paper_number` varchar(100) DEFAULT NULL COMMENT '科目代码',
+    `course_paper_id` varchar(50) NOT NULL COMMENT '试卷编号(交互)',
+    `paper_type` varchar(100) NOT NULL COMMENT '试卷编号',
+    `card_id` bigint(20) DEFAULT NULL COMMENT '知学知考题卡ID(自定义卡格式为空)',
+    `number` int(11) NOT NULL COMMENT '序号',
+    `source` varchar(16) NOT NULL COMMENT '来源',
+    `uri` varchar(500) DEFAULT NULL COMMENT '卡格式文件路径',
+    `md5` varchar(255) DEFAULT NULL COMMENT '文件md5',
+    `parameter` varchar(255) DEFAULT NULL COMMENT '其他属性',
+    `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+    `update_time` bigint(20) DEFAULT NULL COMMENT '修改时间',
+    `need_adapte` tinyint(4) DEFAULT NULL COMMENT '是否需要适配',
+    `paper_count` int(11) DEFAULT NULL,
+    `single_page` tinyint(1) DEFAULT NULL,
+    `slice_config` text COMMENT '裁切配置',
+    `dpi` int(11) DEFAULT NULL COMMENT 'dpi',
+    `code` varchar(64) DEFAULT NULL COMMENT '混扫代码',
+    `adapte_md5` varchar(32) DEFAULT NULL COMMENT '适配后文件md5',
+    `adapte_uri` varchar(500) DEFAULT NULL,
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE KEY `idx_1` (`exam_id`,`number`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='题卡卡格式表';
+
+-- ----------------------------
+-- Table structure for scan_answer_card_subject
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_answer_card_subject` (
+    `id` bigint(20) NOT NULL COMMENT '主键',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `card_number` int(11) NOT NULL COMMENT '卡格式号',
+    `paper_number` varchar(255) NOT NULL COMMENT '试卷编号',
+    `course_paper_id` varchar(50) NOT NULL COMMENT '试卷编号(交互)',
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE KEY `index1` (`exam_id`,`card_number`,`paper_number`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='卡格式科目关联关系';
+
+-- ----------------------------
+-- Table structure for scan_batch
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_batch` (
+    `id` bigint(20) NOT NULL AUTO_INCREMENT,
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `user_id` bigint(20) NOT NULL COMMENT '扫描员ID',
+    `scan_count` int(11) NOT NULL COMMENT '扫描数量',
+    `assigned_count` int(11) NOT NULL,
+    `status` varchar(16) NOT NULL COMMENT '状态',
+    `creator_id` bigint(20) DEFAULT NULL,
+    `updater_id` bigint(20) DEFAULT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    `course_paper_id` varchar(64) DEFAULT NULL COMMENT '试卷编号',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `exam_verify_status` (`exam_id`) USING BTREE
+    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_batch_paper
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_batch_paper` (
+    `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `paper_index` int(11) NOT NULL COMMENT '试卷页数',
+    `paper_id` bigint(20) NOT NULL COMMENT '试卷ID',
+    `card_number` int(11) NOT NULL COMMENT '题卡编号',
+    `assigned` bit(1) NOT NULL,
+    PRIMARY KEY (`batch_id`,`student_id`,`paper_index`) USING BTREE,
+    UNIQUE KEY `paper_id` (`paper_id`) USING BTREE,
+    UNIQUE KEY `paper_id_2` (`paper_id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_file_property
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_file_property` (
+    `path` varchar(255) NOT NULL COMMENT '文件路径',
+    `md5` varchar(32) NOT NULL COMMENT '文件md5',
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `file_size` bigint(20) NOT NULL COMMENT '文件大小',
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`path`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_log
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_log` (
+    `school_code` varchar(20) NOT NULL COMMENT '学校代码',
+    `device_code` varchar(50) NOT NULL COMMENT '设备号',
+    `file_name` varchar(45) NOT NULL,
+    `type` varchar(10) DEFAULT NULL COMMENT '错误文件类型,崩溃异常文件:COLLAPSE,正常文件:NORMAL',
+    `md5` varchar(45) NOT NULL COMMENT '扫描端日志',
+    `path` varchar(500) DEFAULT NULL,
+    `login_name` varchar(45) DEFAULT NULL COMMENT '扫描账号',
+    `upload_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`school_code`,`device_code`,`file_name`)
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_omr_task
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_omr_task` (
+    `id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `conditions` varchar(100) NOT NULL COMMENT '条件',
+    `student_id` bigint(20) NOT NULL COMMENT '考生ID',
+    `paper_index` int(11) NOT NULL COMMENT '试卷页数',
+    `paper_id` bigint(20) NOT NULL COMMENT '试卷ID',
+    `card_number` int(11) NOT NULL COMMENT '题卡编号',
+    `status` varchar(16) NOT NULL COMMENT '状态',
+    `user_id` bigint(20) DEFAULT NULL,
+    `pages` text NOT NULL,
+    `creator_id` bigint(20) DEFAULT NULL,
+    `updater_id` bigint(20) DEFAULT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE KEY `group_paper` (`conditions`,`paper_id`) USING BTREE,
+    KEY `exam_status` (`exam_id`,`status`,`student_id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_package
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_package` (
+    `id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `course_paper_id` varchar(30) DEFAULT NULL COMMENT '试卷编号',
+    `package_code` varchar(20) DEFAULT NULL COMMENT '卷袋编号',
+    `package_no` int(11) DEFAULT NULL COMMENT '页码',
+    `path` varchar(255) NOT NULL COMMENT '签到表图片路径',
+    `md5` varchar(32) NOT NULL COMMENT '文件md5',
+    `assigned` bit(1) DEFAULT NULL,
+    `creator_id` bigint(20) DEFAULT NULL,
+    `updater_id` bigint(20) DEFAULT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `exam` (`exam_id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_paper
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_paper` (
+    `id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) NOT NULL COMMENT '考试ID',
+    `card_number` int(11) NOT NULL COMMENT '卡格式编号',
+    `number` int(11) NOT NULL COMMENT '题卡编号(对应paper_index)',
+    `page_count` int(11) NOT NULL COMMENT '数量',
+    `mismatch` bit(1) NOT NULL,
+    `assigned` bit(1) NOT NULL,
+    `question_filled` bit(1) NOT NULL,
+    `checked` varchar(45) DEFAULT NULL COMMENT '已检查',
+    `creator_id` bigint(20) DEFAULT NULL,
+    `updater_id` bigint(20) DEFAULT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    `assign_confirmed` bit(1) DEFAULT NULL COMMENT '人工绑定确认',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY `mismatch` (`exam_id`,`mismatch`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_paper_page
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_paper_page` (
+    `id` bigint(20) DEFAULT NULL,
+    `paper_id` bigint(20) NOT NULL,
+    `page_index` int(11) NOT NULL,
+    `absent` text,
+    `breach` text,
+    `question` text,
+    `selective` text,
+    `sheet_path` varchar(1000) NOT NULL,
+    `recog_data` longtext,
+    `creator_id` bigint(20) DEFAULT NULL,
+    `updater_id` bigint(20) DEFAULT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`paper_id`,`page_index`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_refix_batch
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_refix_batch` (
+    `id` bigint(20) NOT NULL,
+    `exam_id` bigint(20) NOT NULL,
+    `card_number` int(11) NOT NULL,
+    `conditions` text NOT NULL,
+    `update_slice` bit(1) NOT NULL,
+    `total_count` int(11) NOT NULL,
+    `sucess_count` int(11) NOT NULL,
+    `finished` bit(1) NOT NULL,
+    `creator_id` bigint(20) DEFAULT NULL,
+    `updater_id` bigint(20) DEFAULT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for scan_student_paper
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `scan_student_paper` (
+    `id` bigint(20) NOT NULL,
+    `student_id` bigint(20) NOT NULL,
+    `paper_index` int(11) NOT NULL,
+    `paper_id` bigint(20) NOT NULL,
+    `create_time` bigint(20) DEFAULT NULL,
+    `update_time` bigint(20) DEFAULT NULL,
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE KEY `paper_id` (`paper_id`) USING BTREE
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+
+
 ALTER TABLE `exam_student` ADD COLUMN `course_paper_id` VARCHAR(45) NULL COMMENT '试卷编号(交互)' AFTER `paper_number`;
 ALTER TABLE `exam_detail_course` ADD COLUMN `course_paper_id` VARCHAR(45) NULL COMMENT '试卷编号(交互)' AFTER `paper_number`;