CREATE TABLE `is_training_type_banner` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `creater` int(11) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  `update_time` datetime DEFAULT NULL,
  `enterprise_id` int(11) DEFAULT NULL,
  `material_type_id` int(11) DEFAULT NULL COMMENT '分类id ',
  `pic_url` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '图片url',
  `name` varchar(100) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '图片名称',
  `jump_type` int(2) DEFAULT NULL COMMENT '1仅展示图片 2点击打开课程 3点击打开链接',
  `jump_detail` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'type1的时候空  2的时候资源id  3的时候链接',
  `sort` int(11) DEFAULT NULL COMMENT '排序',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

CREATE TABLE `is_training_recommend` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `enterprise_id` int(11) DEFAULT NULL COMMENT '企业id',
    `config` int(2) NOT NULL DEFAULT '1' COMMENT '1-规则推荐，2-手动推荐',
    `rule` int(2) DEFAULT '1' COMMENT '规则:1-最新，2-最热',
    `count` int(5) DEFAULT '1' COMMENT '数量',
    `creater` int(11) DEFAULT NULL COMMENT '创建人id',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    `updater` int(11) DEFAULT NULL COMMENT '修改人id',
    `update_time` datetime DEFAULT NULL COMMENT '修改时间',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `enterprise_id` (`enterprise_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COMMENT='企业推荐配置';

CREATE TABLE `is_training_recommend_train` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `enterprise_id` int(11) DEFAULT NULL COMMENT '企业id',
    `resource_id` int(11) NOT NULL DEFAULT '0' COMMENT '资源id',
    `sort` int(5) NOT NULL DEFAULT '1' COMMENT '序号',
    `creater` int(11) DEFAULT NULL COMMENT '创建人id',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    `updater` int(11) DEFAULT NULL COMMENT '修改人id',
    `update_time` datetime DEFAULT NULL COMMENT '修改时间',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `enterprise_id` (`enterprise_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COMMENT='企业推荐课程';

CREATE TABLE `is_training_search_history` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `user_id` int(11) DEFAULT NULL COMMENT '用户id',
    `content` varchar(255) DEFAULT '' COMMENT '搜索内容',
    `type` int(2) NOT NULL DEFAULT '1' COMMENT '来源分类：1-app在线课程',
    `enterprise_id` int(11) DEFAULT NULL COMMENT '企业id',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `user_id` (`user_id`) USING BTREE,
    KEY `enterprise_id` (`enterprise_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COMMENT='用户搜索历史';

CREATE TABLE `is_training_enterprise_config` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `enterprise_id` int(11) DEFAULT NULL COMMENT '企业id',
    `config_key` varchar(64) NOT NULL DEFAULT '' COMMENT '配置key',
    `config_value` varchar(256) NOT NULL DEFAULT '' COMMENT '配置值value',
    `creator` int(11) DEFAULT NULL COMMENT '创建人id',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    `updater` int(11) DEFAULT NULL COMMENT '修改人id',
    `update_time` datetime DEFAULT NULL COMMENT '修改时间',
    PRIMARY KEY (`id`) USING BTREE,
    UNIQUE KEY `unique_enterprise_id_config_key` (`enterprise_id`, `config_key`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COMMENT='企业通用配置';

ALTER TABLE `is_training`
ADD column `chapter_model` int(2) DEFAULT '1' COMMENT '章节模式：0-无章节，1-有章节';


ALTER TABLE is_training_paper
    MODIFY paper_state int default 0  COMMENT '考试状态:【0:草稿-0】【1:进行中:1-待考 2-在考】【3:结束-3】';
ALTER TABLE is_training_paper
    MODIFY project_show INT COMMENT '来源：【1:单独安排-null】【2:学习项目：1 or 2】【3:岗位认证-3】【4:培训计划-4】【5:课程-5】';



ALTER TABLE is_training_paper ADD COLUMN project_id INT DEFAULT 0 COMMENT '来源项目id：【课程：training_id】【培训计划：course_id】【岗位认证：job_id】【学习项目：project_id】';
ALTER TABLE is_training_paper ADD COLUMN shift_id INT DEFAULT 0 COMMENT '来源班次id：【学习项目:shift_id】';
ALTER TABLE is_training_paper ADD COLUMN is_del INT DEFAULT 0 COMMENT '是否删除：被项目创建的考试，项目被删除，则更新该字段（历史数据处理，存在被项目创建的考试项目被删除，则无法初始化来源数据）';

ALTER TABLE is_training_user_paper
    MODIFY paper_status int(2) COMMENT '0-考试中，1-待批阅，2-已完成';

ALTER TABLE `is_training_paper`
ADD COLUMN `is_important` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否重要考试 0 否 1 是 ' AFTER `is_visitor_share`,
ADD COLUMN `pass_line_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '合格线类型 0 固定比率 1 固定分值 ' AFTER `is_important`,
ADD COLUMN `exam_range_type` varchar(10) NOT NULL DEFAULT 0 COMMENT '考生范围 多选 , 隔开  0内部人员参与  1 允许游客参与 ' AFTER `pass_line_type`;


ALTER TABLE `is_training_paper`
ADD COLUMN `is_unify_exam_minutes` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否统一考试时长 0 否 1是' AFTER `exam_range_type`,
ADD COLUMN `is_allow_repeat_join_exam` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否允许重复考试 0 否 1是' AFTER `is_unify_exam_minutes`,
ADD COLUMN `is_limit_exam_times` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否限制考试次数 0否 1是' AFTER `is_allow_repeat_join_exam`;

ALTER TABLE `is_training_paper`
ADD COLUMN `is_allow_repeat_join_exam_if_passed` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否允许通过后再次考试 0 否 1 是' AFTER `is_allow_repeat_join_exam`,
ADD COLUMN `is_timing_terminate_exam` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否定时结束考试 0 否 1 是 ' AFTER `is_allow_repeat_join_exam_if_passed`,
ADD COLUMN `timing_end_exam_date` date NULL COMMENT '定时结束考试 结束时间 ' AFTER `is_timing_terminate_exam`;

ALTER TABLE `is_training_paper`
ADD COLUMN `allow_view_paper_score` varchar(5) NOT NULL DEFAULT '000' COMMENT '是否允许学员查看考试成绩 按照位数拼接  是否允许学员查看考试成绩,是否允许学员查看考试对错数量,是否允许学员查看通过标识' AFTER `timing_end_exam_date`,
ADD COLUMN `allow_view_paper_detail` varchar(11) NOT NULL DEFAULT '000001' COMMENT '是否允许学员查看考试详情 是否允许学员查看考试详情,是否允许查看对错,仅支持查看错题,允许学院查看正确答案,允许查看是答卷时间范围 0-否  1-有时间范围,时间范围类型 1-考试通过后 2-考试结束后' AFTER `allow_view_paper_score`;


ALTER TABLE `is_training_paper`
ADD COLUMN `pass_line_fix_score` int(11) NOT NULL Default 0 COMMENT '合格线类型固定分值 分值' AFTER `pass_line_type`;

ALTER TABLE `is_training_paper`
ADD COLUMN `close_time` datetime default null  COMMENT '结束考试时间（改变考试状态为已结束时，给该字段赋值，方式：定时/手动 来源 is_close）' AFTER `is_close`;

ALTER TABLE is_training_paper
    MODIFY start_time datetime default null COMMENT '入场时间-开始时间';

ALTER TABLE is_training_paper
    MODIFY end_time   datetime default null  COMMENT '入场时间-结束时间';

##初始化结束考试时间
#将状态“已结束”的考试，考试有效期的结束时间为，初始为 结束时间
UPDATE is_training_paper
SET close_time = end_time
WHERE paper_state = 3 ;

##定时结束时间
#将直接考试的考试，入场结束时间不为空时，选中定时结束，定时结束时间为入场结束时间
update is_training_paper
set is_timing_terminate_exam = 1 and timing_end_exam_date = end_time
    where is_training = 0 and end_time is not null;

##入场时间
UPDATE is_training_paper
set end_time = '2050-12-31 23:59:00'
    where is_training = 0 and end_time is null;

ALTER TABLE `is_training_user_paper`
ADD COLUMN `pass_state` varchar(1) NOT NULL DEFAULT 0 COMMENT '通过状态：0-未通过 1-通过 （有成绩时进行赋值）' AFTER `paper_status`;

ALTER TABLE is_training_paper ADD COLUMN publish_time datetime DEFAULT CURRENT_TIMESTAMP;
alter table is_training_material_type
add column material_count int default 0 comment '分类下素材数',
add column material_count_cover_child int default 0 comment '分类下素材数（包含子分类）',
add column train_count int default 0 comment '分类下课程数',
add column train_count_cover_child int default 0 comment '分类下课程数（包含子分类）';
