
-- ------------------------------------------------------------------学籍异动管理--------------------------------------------------------------------
-- ----------------------------
-- 学籍异动类别
-- ----------------------------
DROP TABLE IF EXISTS school_roll_category;
CREATE TABLE school_roll_category
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `name` VARCHAR(200) NOT NULL COMMENT '名称',
    `scholarship_source` varchar(20) NOT NULL DEFAULT 0 COMMENT '学籍异动类型(xjr_dictionary_item[school_change_type])',
    `remark` VARCHAR(1000) COMMENT '备注',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '学籍异动类别';

-- ----------------------------
-- 学籍异动原因
-- ----------------------------
DROP TABLE IF EXISTS school_roll_reason;
CREATE TABLE school_roll_reason
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `reason` VARCHAR(2000) NOT NULL COMMENT '原因',
    `school_roll_category_id` bigint NULL DEFAULT NULL COMMENT '学籍异动类别ID(school_roll_category)',
    `remark` VARCHAR(1000) COMMENT '备注',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '学籍异动原因';

-- ----------------------------
-- 学籍异动学生
-- ----------------------------
DROP TABLE IF EXISTS school_roll_student;
CREATE TABLE school_roll_student
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `applicant_user_id` bigint NULL DEFAULT NULL COMMENT '申请人',
    `scholarship_source` varchar(20) NOT NULL DEFAULT 0 COMMENT '学籍异动类型(xjr_dictionary_item[school_change_type])',
    `school_roll_category_id` bigint NULL DEFAULT NULL COMMENT '学籍异动类别ID(school_roll_category)',
    `school_roll_reason_id` bigint NULL DEFAULT NULL COMMENT '学籍异动原因ID(school_roll_reason)',
    `reason` varchar(2000) NULL DEFAULT NULL COMMENT '原因',

    `before_department_id` bigint NULL DEFAULT NULL COMMENT '异动前所属机构(xjr_department)',
    `before_grade_id` bigint NULL DEFAULT NULL COMMENT '异动前入学年级(base_grade)',
    `before_class_id` bigint NULL DEFAULT NULL COMMENT '异动前班级(base_class)',
    `before_major_set_id` bigint NULL DEFAULT NULL COMMENT '异动前专业方向(base_major_set)',

    `back_department_id` bigint NULL DEFAULT NULL COMMENT '异动后所属机构(xjr_department)',
    `back_grade_id` bigint NULL DEFAULT NULL COMMENT '异动后入学年级(base_grade)',
    `back_class_id` bigint NULL DEFAULT NULL COMMENT '异动后班级(base_class)',
    `back_major_set_id` bigint NULL DEFAULT NULL COMMENT '异动后专业方向(base_major_set)',

    `student_id` bigint NULL DEFAULT NULL COMMENT '学生编号(学生user_id)',
    `is_retain` int NULL DEFAULT NULL COMMENT '是否保留学籍(0:否 1:是)',
    `is_record` int NULL DEFAULT NULL COMMENT '是否记录到档案(0:否 1:是)',
    `is_cancel_account` int NULL DEFAULT NULL COMMENT '是否注销账号(0:否 1:是)',
    `is_recover` int NULL DEFAULT NULL COMMENT '是否恢复账号(0:否 1:是)',
    `is_under_graduate` int NULL DEFAULT NULL COMMENT '是否给予肄业(0:否 1:是)',
    `is_maintained` int NULL DEFAULT NULL COMMENT '是否已经维护到国家/省学籍系统(0:未维护 1:已维护 2:无需维护)',
    `in_class_date` date NULL DEFAULT NULL COMMENT '入班时间',
    `out_class_date` date NULL DEFAULT NULL COMMENT '离班时间',
    `leave_year` varchar(200) NULL DEFAULT NULL COMMENT '休学年限 ',
    `leave_start_year` date NULL DEFAULT NULL COMMENT '休学时段(开始时间)',
    `leave_end_year` date NULL DEFAULT NULL COMMENT '休学时段(结束时间)',
    `remark` varchar(1000) COMMENT '备注',
    `status` int not null default 0 COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '学籍异动学生';

-- ----------------------------
-- 插班生管理
-- ----------------------------
DROP TABLE IF EXISTS school_roll_transfer_student;
CREATE TABLE school_roll_transfer_student
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `department_id` bigint NULL DEFAULT NULL COMMENT '所属机构(xjr_department)',
    `grade_id` bigint NULL DEFAULT NULL COMMENT '入学年级(base_grade)',
    `class_id` bigint NULL DEFAULT NULL COMMENT '班级(base_class)',
    `major_set_id` bigint NULL DEFAULT NULL COMMENT '专业方向(base_major_set)',
    `in_class_date` date NULL DEFAULT NULL COMMENT '入班时间',

    `before_school_name` varchar(200) NULL DEFAULT NULL COMMENT '转学前学校名称',
    `before_grade_name` varchar(200) NULL DEFAULT NULL COMMENT '转学前年级名称',
    `before_class_name`  varchar(200) NULL DEFAULT NULL COMMENT '转学前班级名称',
    `before_major_set_name` varchar(200) NULL DEFAULT NULL COMMENT '转学前专业方向名称',
    `before_school_id` varchar(200) NULL DEFAULT NULL COMMENT '转学前学号',
    `transfer_date` date NULL DEFAULT NULL COMMENT '转学日期',

    `student_id` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '学号',
    `name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '姓名',
    `as_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '别名',
    `gender` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '性别(xjr_dictionary_item[gender])',
    `credential_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '证件类型(xjr_dictionary_item[credential_type])',
    `credential_number` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '证件号码',
    `day_of_birth` date NULL DEFAULT NULL COMMENT '出生日期',
    `birth_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '生日类型(xjr_dictionary_item[date_type])',
    `nation` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '民族(xjr_dictionary_item[nation])',
    `blood_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '血型(xjr_dictionary_item[blood_type])',
    `health` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '健康状况(xjr_dictionary_item[health])',
    `marital_state` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '婚姻状况(xjr_dictionary_item[marital_state])',
    `political_state` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '政治面貌(xjr_dictionary_item[political_state])',
    `religion` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '信仰宗教(xjr_dictionary_item[religion])',
    `nationality` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '国籍地区(xjr_dictionary_item[nationality])',
    `chinese_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '港澳台侨外(xjr_dictionary_item[chinese_type])',
    `provinces` bigint NULL DEFAULT NULL COMMENT '籍贯 省(xjr_area)',
    `city` bigint NULL DEFAULT NULL COMMENT '籍贯 市(xjr_area)',
    `district` bigint NULL DEFAULT NULL COMMENT '籍贯 区/县(xjr_area)',
    `house_hold_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '户口类别(xjr_dictionary_item[house_hold_type])',
    `house_provinces` bigint NULL DEFAULT NULL COMMENT '户口所在地 省(xjr_area)',
    `house_city` bigint NULL DEFAULT NULL COMMENT '户口所在地 市(xjr_area)',
    `house_district` bigint NULL DEFAULT NULL COMMENT '户口所在地 区/县(xjr_area)',
    `house_hold_address` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '户口所在详细地址',
    `belongs_police` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '所属派出所',
    `birth_provinces` bigint NULL DEFAULT NULL COMMENT '出生地 省(xjr_area)',
    `birth_city` bigint NULL DEFAULT NULL COMMENT '出生地 市(xjr_area)',
    `birth_district` bigint NULL DEFAULT NULL COMMENT '出生地 区/县(xjr_area)',
    `residence_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '学生居住地类型(xjr_dictionary_item[residence_type])',
    `is_migrate_children` smallint NULL DEFAULT NULL COMMENT '是否随迁子女',
    `is_floating_population` smallint NULL DEFAULT NULL COMMENT '是否流动人口',
    `telephone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '家庭电话',
    `contact` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '联系人姓名',
    `address` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '家庭住址',
    `wechat` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci  NULL COMMENT '微信号',
    `is_indemnify` smallint NULL DEFAULT NULL COMMENT '是否低保',
    `is_stipend` smallint NULL DEFAULT NULL COMMENT '是否享受国家助学金',
    `is_free` smallint NULL DEFAULT NULL COMMENT '是否免学费',
    `is_filing_card` smallint NULL DEFAULT NULL COMMENT '是否建档立卡',
    `is_stay` smallint NULL DEFAULT NULL COMMENT '是否住宿',
    `status` int not null default 0 COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '插班生管理';

-- ----------------------------
-- 升学管理
-- ----------------------------
DROP TABLE IF EXISTS school_roll_further_education;
CREATE TABLE school_roll_further_education
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `applicant_user_id` bigint NULL DEFAULT NULL COMMENT '申请人',
    `reason` varchar(2000) NULL DEFAULT NULL COMMENT '原因',

    `before_department_id` bigint NULL DEFAULT NULL COMMENT '异动前所属机构(xjr_department)',
    `before_grade_id` bigint NULL DEFAULT NULL COMMENT '异动前入学年级(base_grade)',
    `before_class_id` bigint NULL DEFAULT NULL COMMENT '异动前班级(base_class)',
    `before_major_set_id` bigint NULL DEFAULT NULL COMMENT '异动前专业方向(base_major_set)',

    `back_department_id` bigint NULL DEFAULT NULL COMMENT '异动后所属机构(xjr_department)',
    `back_grade_id` bigint NULL DEFAULT NULL COMMENT '异动后入学年级(base_grade)',
    `back_class_id` bigint NULL DEFAULT NULL COMMENT '异动后班级(base_class)',
    `back_major_set_id` bigint NULL DEFAULT NULL COMMENT '异动后专业方向(base_major_set)',
    `student_id` bigint NULL DEFAULT NULL COMMENT '学生编号(学生user_id)',

    `remark` varchar(1000) COMMENT '备注',
    `status` int not null default 0 COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '升学管理';
-- ------------------------------------------------------------------学籍异动管理--------------------------------------------------------------------

ALTER TABLE base_punishment_type ADD COLUMN `validity_period_day` INT NULL DEFAULT NULL COMMENT '有效期(天)' AFTER punishment_level;

-- ------------------------------------------------------------------班主任请假--------------------------------------------------------------------
-- ----------------------------
-- 班主任事项请假
-- ----------------------------
DROP TABLE IF EXISTS wf_head_teacher_leave;
CREATE TABLE wf_head_teacher_leave
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `applicant_user_id` bigint NULL DEFAULT NULL COMMENT '申请人',
    `leave_reason`varchar(20) NULL DEFAULT NULL COMMENT '请假原因(xjr_dictionary_item[leave_reason])',
    `start_time` datetime NULL DEFAULT NULL COMMENT '开始时间',
    `end_time` datetime NULL DEFAULT NULL COMMENT '结束时间',
    `is_substitute` INT NOT NULL default 0 COMMENT '是否有替班教师（1:是 0:否）',
    `substitute_user_id` bigint NULL DEFAULT NULL COMMENT '替换教师',
    `remark` varchar(1000) COMMENT '备注',
    `status` int not null default 0 COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '班主任事项请假';
-- ------------------------------------------------------------------班主任请假--------------------------------------------------------------------

-- ------------------------------------------------------------------荣誉--------------------------------------------------------------------
-- ----------------------------
-- 班级荣誉
-- ----------------------------
DROP TABLE IF EXISTS class_honors;
CREATE TABLE class_honors
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `base_semester_id` BIGINT COMMENT '学期ID(base_semester)',
    `class_id` BIGINT NULL DEFAULT NULL COMMENT '班级id',
    `honors_level` varchar(20) NULL DEFAULT NULL COMMENT '荣誉级别(xjr_dictionary_item[honors_level])',
    `honors_grade`varchar(20) NULL DEFAULT NULL COMMENT '荣誉等级(xjr_dictionary_item[honors_grade])',
    `name` varchar(1000) NULL DEFAULT NULL COMMENT '荣誉名称',
    `award_date` date NULL DEFAULT NULL COMMENT '获奖日期',
    `file_id` BIGINT NULL DEFAULT NULL COMMENT '附件文件id',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '班级荣誉';

-- ----------------------------
-- 学生荣誉
-- ----------------------------
DROP TABLE IF EXISTS student_honors;
CREATE TABLE student_honors
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `applicant_user_id` bigint NULL DEFAULT NULL COMMENT '申请人',
    `data_entry_method` int NULL DEFAULT 1 COMMENT '数据录入方式 1=推荐 2=登记',
    `base_semester_id` BIGINT COMMENT '学期ID(base_semester)',
    `class_id` BIGINT NULL DEFAULT NULL COMMENT '班级id',
    `student_user_id` BIGINT NULL DEFAULT NULL COMMENT '学生用户编号',
    `student_id` VARCHAR(30) NULL DEFAULT NULL COMMENT '学号',
    `major_set_id` bigint NOT NULL COMMENT '专业(base_major)',
    `honors_level` varchar(20) NULL DEFAULT NULL COMMENT '荣誉级别(xjr_dictionary_item[honors_level])',
    `honors_grade`varchar(20) NULL DEFAULT NULL COMMENT '荣誉等级(xjr_dictionary_item[honors_grade])',
    `honors_type`varchar(20) NULL DEFAULT NULL COMMENT '荣誉类型(xjr_dictionary_item[honors_type])',
    `name` varchar(1000) NULL DEFAULT NULL COMMENT '荣誉名称',
    `award_date` date NULL DEFAULT NULL COMMENT '获奖日期',
    `file_id` BIGINT NULL DEFAULT NULL COMMENT '附件文件id',
    `status` int not null default 0 COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '学生荣誉';
-- ------------------------------------------------------------------荣誉--------------------------------------------------------------------


-- ------------------------------------------------------------------公文--------------------------------------------------------------------
-- ----------------------------
-- 公文收文
-- ----------------------------
DROP TABLE IF EXISTS official_document_received;
CREATE TABLE official_document_received
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `received_title` varchar(200) NULL DEFAULT NULL COMMENT '收文标题',
    `received_number` varchar(200) NULL DEFAULT NULL COMMENT '收文文号',
    `received_date` date NULL DEFAULT NULL COMMENT '收文时间',
    `communication_org` varchar(200) NULL DEFAULT NULL COMMENT '来文机构',
    `communication_number` varchar(200) NULL DEFAULT NULL COMMENT '来文文号',
    `checkout_time` date NULL DEFAULT NULL COMMENT '办结时间',
    `document_level`varchar(20) NULL DEFAULT NULL COMMENT '文件密级(xjr_dictionary_item[document_level])',
    `emergency_level`varchar(20) NULL DEFAULT NULL COMMENT '紧急程度(xjr_dictionary_item[emergency_level])',
    `file_id` BIGINT NULL DEFAULT NULL COMMENT '附件文件id',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '公文收文';

-- ----------------------------
-- 公文发文
-- ----------------------------
DROP TABLE IF EXISTS official_document_post;
CREATE TABLE official_document_post
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `post_title` varchar(200) NULL DEFAULT NULL COMMENT '发文标题',
    `post_number` varchar(200) NULL DEFAULT NULL COMMENT '发文文号（发文文号自动生成，年+三位数字（三位数字从001开始）如2023001、2023002，依次生成）',
    `post_date` date NULL DEFAULT NULL COMMENT '发文时间',
    `post_department_id` bigint NOT NULL COMMENT '发文所属机构(xjr_department)',
    `file_id` BIGINT NULL DEFAULT NULL COMMENT '附件文件id',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '公文发文';
-- ------------------------------------------------------------------公文--------------------------------------------------------------------

-- ------------------------------------------------------------------教师获奖登记--------------------------------------------------------------------
-- ----------------------------
-- 教师获奖登记
-- ----------------------------
DROP TABLE IF EXISTS teacher_award;
CREATE TABLE teacher_award
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `applicant_user_id` bigint NULL DEFAULT NULL COMMENT '申请人',
    `award_type` varchar(20) NULL DEFAULT NULL COMMENT '获奖类型(xjr_dictionary_item[award_type])',

    `award_level` varchar(20) NULL DEFAULT NULL COMMENT '奖项级别(xjr_dictionary_item[honors_level])',
    `competition_name`varchar(200) NULL DEFAULT NULL COMMENT '赛项名称',
    `award_grade`varchar(200) NULL DEFAULT NULL COMMENT '获奖等级（一等奖、二等奖、三等奖、指导奖一等奖、指导奖二等奖、指导奖三等奖）',
    `award_group`varchar(200) NULL DEFAULT NULL COMMENT '组别（职工、师生同赛）',

    `paper_name`varchar(200) NULL DEFAULT NULL COMMENT '论文名称',
    `journal_name`varchar(200) NULL DEFAULT NULL COMMENT '期刊名称',
    `journal_number`varchar(200) NULL DEFAULT NULL COMMENT '期刊号',
    `journal_level`varchar(200) NULL DEFAULT NULL COMMENT '期刊级别（国家级、省级）',
    `issue_date` date NULL DEFAULT NULL COMMENT '发表时间',

    `honors_type`varchar(200) NULL DEFAULT NULL COMMENT '荣誉类型(骨干老师、双师型教师)',
    `identify_date`date NULL DEFAULT NULL COMMENT '认定时间',
    `certificate_file_id` BIGINT NULL DEFAULT NULL COMMENT '证书文件id',
    `policy_file_id` BIGINT NULL DEFAULT NULL COMMENT '政策文件id',

    `approval_user_id` bigint NULL DEFAULT NULL COMMENT '审核人',
    `remark` varchar(1000) COMMENT '备注',
    `file_id` BIGINT NULL DEFAULT NULL COMMENT '附件文件id',
    `status` int not null default 0 COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '教师获奖登记';
-- ------------------------------------------------------------------教师获奖登记--------------------------------------------------------------------

-- ------------------------------------------------------------------加班申请--------------------------------------------------------------------
-- ----------------------------
-- 加班申请-加班人
-- ----------------------------
DROP TABLE IF EXISTS wf_overtime_teacher;
CREATE TABLE wf_overtime_teacher
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',
    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `wf_overtime_id` bigint NULL DEFAULT NULL COMMENT '加班申请编号',
    `teacher_user_id` bigint NULL DEFAULT NULL COMMENT '加班人编号',
    `teacher_user_name` varchar(200) NULL DEFAULT NULL COMMENT '加班人姓名',
    `department_id` bigint NULL DEFAULT NULL COMMENT '所属机构(xjr_department)',
    `department_name` varchar(200) NULL DEFAULT NULL COMMENT '所属机构(xjr_department)',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '加班申请-加班人';
-- ------------------------------------------------------------------加班申请--------------------------------------------------------------------

-- ----------------------------
-- 教职工经历信息
-- ----------------------------
DROP TABLE IF EXISTS wf_personnel_experience;
CREATE TABLE wf_personnel_experience
(
    id BIGINT NOT NULL COMMENT '主键编号',
    `create_user_id` BIGINT NULL DEFAULT NULL COMMENT '创建人',
    `create_date` DATE NULL DEFAULT NULL COMMENT '创建时间',
    `modify_user_id` BIGINT NULL DEFAULT NULL COMMENT '修改人',
    `modify_date` DATE NULL DEFAULT NULL COMMENT '修改时间',
    `delete_mark` INT NOT NULL COMMENT '删除标记',
    `enabled_mark` INT NOT NULL COMMENT '有效标志',

    `sort_code` INT NULL DEFAULT NULL COMMENT '序号',
    `applicant_user_id` bigint NULL DEFAULT NULL COMMENT '申请人',
    `department_id` bigint NULL DEFAULT NULL COMMENT '所属机构(xjr_department)',
    `company_name` VARCHAR(50) NULL DEFAULT NULL COMMENT '企业名称',
    `learning_forms` VARCHAR(100) NULL DEFAULT NULL COMMENT '学习形式',
    `post` VARCHAR(100) NULL DEFAULT NULL COMMENT '岗位',
    `start_date` DATE NULL DEFAULT NULL COMMENT '实习开始时间',
    `end_date` DATE NULL DEFAULT NULL COMMENT '实习结束时间',
    `total_duration` BIGINT NULL DEFAULT NULL COMMENT '共计时长',
    `practice_description` VARCHAR(1000) NULL DEFAULT NULL COMMENT '实践描述',
    `file_id` BIGINT NULL DEFAULT NULL COMMENT '附件文件id',
    `notes` VARCHAR(500) NULL DEFAULT NULL COMMENT '备注',
    `status` INT NOT NULL COMMENT '状态（1:结束 0:未结束）',
    PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT '教职工经历信息';


DROP TABLE IF EXISTS `wf_subscription`;
CREATE TABLE `wf_subscription` (
    `id` bigint NOT NULL,
    `application_department` varchar(500) DEFAULT NULL COMMENT '申请部门',
    `shen_qing_ri_qi4752` datetime DEFAULT NULL COMMENT '申请日期',
    `user_id` longtext COMMENT '申请人',
    `total_amount` double DEFAULT NULL COMMENT '预估总额（元）',
    `annex` longtext COMMENT '附件',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='物品申购';












