Browse Source

课表数据同步逻辑调整

dzx 6 months ago
parent
commit
49cafe94c4

+ 44 - 14
src/main/java/com/xjrsoft/module/schedule/util/DataUtil.java

@@ -618,9 +618,17 @@ public class DataUtil {
 
     public void insertCourseTableEntiy(JsonArray data, Map<String, String> classroomMap, Map<String, String> coureseMap,
                                   Map<String, String> semesterMap, Map<String, String> teacherMap, Map<String, String> classMap) {
+
+        String sql = "SELECT CONCAT(schedule_date,class_id,time_number) AS only_key,id FROM course_table";
+        List<Map<String, Object>> oldDataList = SqlRunnerAdapter.db().selectList(sql);
+        Map<String, String> oldDataMap = new HashMap<>();
+        for (Map<String, Object> objectMap : oldDataList) {
+            oldDataMap.put(objectMap.get("only_key").toString(), objectMap.get("id").toString());
+        }
         Map<Integer, Integer> tmePeriod = ScheduleUtil.getTmePeriod();
         String tableName = "course_table";
         List<Entity> entityList = new ArrayList();
+        List<String> updateSqlList = new ArrayList();
         SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
         List<Map<String, Object>> list = SqlRunnerAdapter.db().selectList("select * from course_table");
         Set<String> serialNos = new HashSet<>();
@@ -640,24 +648,41 @@ public class DataUtil {
                 continue;
             }
             int timeNumber = asJsonObject.get("numberOfDay").getAsInt();//节次
+            String classId = classMap.get(asJsonObject.get("classSerialNo").getAsString());
+            String scheduleDate = asJsonObject.get("scheduleDate").getAsString();
+            String courseClassId = coureseMap.get(asJsonObject.get("courseClassId").getAsString());
+            String courseClassName = asJsonObject.get("courseClassName").getAsString();
+            String teacherId = "0";
+            String teacherName = "";
+            String teacher_serial_no = "";
+            if(teachers.size() > 0){
+                JsonObject teacherJson = teachers.get(0).getAsJsonObject();
+                teacherId = (teacherMap.get(teacherJson.get("teacherSerialNo").getAsString())==null?"0":teacherMap.get(teacherJson.get("teacherSerialNo").getAsString()));
+                teacherName = teacherJson.get("name").getAsString();
+                teacher_serial_no = teacherJson.get("teacherSerialNo").getAsString();
+            }
+
+            String onlyKey = scheduleDate + classId + timeNumber;
+            if(oldDataMap.get(onlyKey) != null){
+                String updSql = "update course_table set teacher_serial_no = '" + teacher_serial_no + "'" +
+                        ", teacher_id = " + teacherId
+                        + ", teacher_name = '" + teacherName + "'" +
+                        " where course_id = " + courseClassId +
+                        " and class_id = " + classId + " and time_number = " + timeNumber + ";";
+                updateSqlList.add(updSql);
+                continue;
+            }
 
             Entity entity = Entity.create(tableName);
             entity.set("id", IdUtil.getSnowflakeNextId());
             entity.set("base_semester_id", semesterMap.get(asJsonObject.get("semesterSerialNo").getAsString()));
 
-            if(teachers.size() > 0){
-                JsonObject teacherJson = teachers.get(0).getAsJsonObject();
-                entity.set("teacher_id", (teacherMap.get(teacherJson.get("teacherSerialNo").getAsString())==null?0:teacherMap.get(teacherJson.get("teacherSerialNo").getAsString())));
-                entity.set("teacher_name", teacherJson.get("name").getAsString());
-                entity.set("teacher_serial_no", teacherJson.get("teacherSerialNo").getAsString());
-            }else{
-                entity.set("teacher_id", 0);
-//                entity.set("teacher_name", "");
-//                entity.set("teacher_serial_no", "");
-            }
-            entity.set("course_id", coureseMap.get(asJsonObject.get("courseClassId").getAsString()));
-            entity.set("course_name", asJsonObject.get("courseClassName").getAsString());
-            entity.set("class_id", classMap.get(asJsonObject.get("classSerialNo").getAsString()));
+            entity.set("teacher_name", teacherName);
+            entity.set("teacher_serial_no", teacher_serial_no);
+            entity.set("teacher_id", teacherId);
+            entity.set("course_id", courseClassId);
+            entity.set("course_name", courseClassName);
+            entity.set("class_id", classId);
             entity.set("class_name", asJsonObject.get("className").getAsString());
             entity.set("weeks", asJsonObject.get("dayOfWeek").getAsInt());
             entity.set("weeks_cn", asJsonObject.get("dayOfWeekName").getAsString());
@@ -667,13 +692,18 @@ public class DataUtil {
             entity.set("site_name", asJsonObject.get("classRoomName").getAsString());
             entity.set("status", 1);
             entity.set("create_date", sdf.format(new Date()));
-            entity.set("schedule_date", asJsonObject.get("scheduleDate").getAsString());
+            entity.set("schedule_date", scheduleDate);
             entity.set("jianyue_id", asJsonObject.get("id").getAsString());
             entityList.add(entity);
         }
         if(!entityList.isEmpty()){
             SqlRunnerAdapter.db().dynamicInsertBatch(tableName, entityList);
         }
+        if(!updateSqlList.isEmpty()){
+            for (String updateSql : updateSqlList) {
+                SqlRunnerAdapter.db().update(updateSql);
+            }
+        }
     }
 
     /**

+ 200 - 0
src/main/resources/sqlScript/20240724_sql.sql

@@ -0,0 +1,200 @@
+-- --------------------------------------------------------------------------------------------
+-- 微信消息模板
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS wechat_message_template;   
+CREATE TABLE `wechat_message_template` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `name` BIGINT DEFAULT NULL COMMENT '活动(activity_info)',
+  user_id DATETIME DEFAULT NULL COMMENT '参与人(xjr_user)',
+  STATUS INT DEFAULT 0 COMMENT '状态(0:待确认 1:未参与 2:已参与)',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动登记表';
+
+
+ALTER TABLE  `textbook`   
+  CHANGE `textbook_type` `textbook_type` VARCHAR(20) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL   COMMENT '教材分类(xjr_dictionary_item[textbook_type])',
+  ADD COLUMN `textbook_category` VARCHAR(30) NULL   COMMENT '教材类型' AFTER `work_total_count`;
+
+-- --------------------------------------------------------------------------------------------
+-- 奖学金发放记录表
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS base_student_scholarship_release;   
+CREATE TABLE `base_student_scholarship_release` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `base_student_scholarship_applicant_id` BIGINT DEFAULT NULL COMMENT '奖学金申请id',
+  `amount` DOUBLE DEFAULT NULL COMMENT '发放金额',
+  `release_date` DATETIME DEFAULT NULL COMMENT '发放日期',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='奖学金发放记录表';
+
+
+ALTER TABLE `base_student_scholarship_applicant`   
+  ADD COLUMN `bank_user_name` VARCHAR(50) NULL   COMMENT '银行账户名称' AFTER `release_status`;
+
+ALTER TABLE `base_student_scholarship_applicant`   
+  CHANGE `release_status` `release_status` INT DEFAULT 0  NOT NULL   COMMENT '发放状态(2:全部发放 1:部分发放 0:未发放)';
+
+DROP TABLE IF EXISTS base_employment_information;
+CREATE TABLE `base_employment_information` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATE DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATE DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `job_name` VARCHAR(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '就业岗位名称',
+  `salary` VARCHAR(100) DEFAULT NULL COMMENT '薪资待遇',
+  `industry_information` VARCHAR(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '行业信息',
+  `develop_prospect` VARCHAR(500) DEFAULT NULL COMMENT '发展前景',
+  `employ_advice` VARCHAR(500) DEFAULT NULL COMMENT '就业建议',
+  `major_set` LONGTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '关联专业方向',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='就业信息维护';
+
+ALTER TABLE `base_student_scholarship_applicant`   
+  ADD COLUMN `review_status` INT DEFAULT 0  NULL   COMMENT '评审状态' AFTER `bank_user_name`;
+
+
+-- --------------------------------------------------------------------------------------------
+-- 第二课堂
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS second_course;   
+CREATE TABLE `second_course` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `base_semester_id` BIGINT DEFAULT NULL COMMENT '学期id',
+  `name` VARCHAR(100) DEFAULT NULL COMMENT '课程名称',
+  `content` VARCHAR(1000) DEFAULT NULL COMMENT '课程主要内容',
+  `place` VARCHAR(100) DEFAULT NULL COMMENT '开课地点',
+  `teacher_name` VARCHAR(40) DEFAULT NULL COMMENT '讲课老师',
+  `cover_id` BIGINT DEFAULT NULL COMMENT '封面图片',
+  `enroll_range` TEXT DEFAULT NULL COMMENT '参与范围',
+  `status` INT DEFAULT 0 COMMENT '状态(0:未发布 1:进行中 2:已结束)',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='第二课堂';
+
+-- --------------------------------------------------------------------------------------------
+-- 第二课堂开课时间
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS second_course_time;   
+CREATE TABLE `second_course_time` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `second_course_id` BIGINT DEFAULT NULL COMMENT '第二课堂id',
+  `class_time` VARCHAR(50) DEFAULT NULL COMMENT '上课日期',
+  `time_period` INT DEFAULT NULL COMMENT '时段(1=上午 2=下午 3=晚上)',
+  `start_time` TIME DEFAULT NULL COMMENT '开始时间',
+  `end_time` TIME DEFAULT NULL COMMENT '结束时间',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='第二课堂开课时间';
+
+-- --------------------------------------------------------------------------------------------
+-- 第二课堂参与范围
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS second_course_enroll_range;   
+CREATE TABLE `second_course_enroll_range` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `second_course_id` BIGINT DEFAULT NULL COMMENT '第二课堂id',
+  `class_id` BIGINT DEFAULT NULL COMMENT '班级id',
+  `dept_id` BIGINT DEFAULT NULL COMMENT '部门id',
+  `user_id` BIGINT DEFAULT NULL COMMENT '用户id',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='第二课堂参与范围';
+
+
+-- --------------------------------------------------------------------------------------------
+-- 第二课堂报名表
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS second_course_enroll;   
+CREATE TABLE `second_course_enroll` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `second_course_id` BIGINT DEFAULT NULL COMMENT '第二课堂id',
+  `user_id` BIGINT DEFAULT NULL COMMENT '用户id',
+  `status` BIGINT DEFAULT NULL COMMENT '状态',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='第二课堂报名表';
+
+ALTER TABLE `activity_enroll`   
+  ADD INDEX (`user_id`);
+ALTER TABLE `activity_enroll`   
+  ADD INDEX (`activity_info_id`);
+  
+ALTER TABLE `second_course_enroll`   
+  ADD INDEX (`user_id`);
+ALTER TABLE `second_course_enroll`   
+  ADD INDEX (`second_course_id`);
+  
+ALTER TABLE `base_teacher`   
+  ADD INDEX (`user_id`);
+ALTER TABLE `base_student`   
+  ADD INDEX (`user_id`);
+
+DROP TABLE IF EXISTS wf_repair_declaration;   
+CREATE TABLE `wf_repair_declaration` (
+  `id` BIGINT NOT NULL,
+  `user_id` BIGINT DEFAULT NULL COMMENT '申请人',
+  `application_time` DATETIME DEFAULT NULL COMMENT '申请时间',
+  `department` BIGINT DEFAULT NULL COMMENT '所在部门',
+  `department_leader` BIGINT DEFAULT NULL COMMENT '部门领导',
+  `telephone` VARCHAR(500) DEFAULT NULL COMMENT '联系电话',
+  `repair_location` VARCHAR(500) DEFAULT NULL COMMENT '维修地点',
+  `maintenance_description` VARCHAR(700) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '维修情况说明',
+  `upkeep_classify` VARCHAR(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '维修分类',
+  `is_artificial` VARCHAR(50) DEFAULT NULL COMMENT '是否人为损坏',
+  `is_cash` VARCHAR(50) DEFAULT NULL COMMENT '是否现金赔偿',
+  `indemnity` VARCHAR(50) DEFAULT NULL COMMENT '赔偿金额',
+  `maintenance_feedback` VARCHAR(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '维修反馈',
+  `annex` BIGINT DEFAULT NULL COMMENT '附件',
+  `qr_code` BIGINT DEFAULT NULL COMMENT '二维码',
+  `status` INT DEFAULT NULL COMMENT '流程状态',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='维修申报流程';
+
+-- --------------------------------------------------------------------------------------------
+-- 流程提醒记录表
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS xjr_workflow_alert_record;   
+CREATE TABLE `xjr_workflow_alert_record` (
+  `id` BIGINT NOT NULL,
+  `send_time` DATETIME DEFAULT NULL COMMENT '提醒时间',
+  `user_id` BIGINT DEFAULT NULL COMMENT '被提醒人id',
+  `process_name` VARCHAR(200) DEFAULT NULL COMMENT '流程名称',
+  `process_id` BIGINT DEFAULT NULL COMMENT '进程id',
+  `type` INT DEFAULT NULL COMMENT '提醒类别(1:超时提醒...)',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='流程提醒记录表';

+ 127 - 0
src/main/resources/sqlScript/20240805_sql.sql

@@ -0,0 +1,127 @@
+-- --------------------------------------------------------------------------------------------
+-- 学生去向登记
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS base_student_development;   
+CREATE TABLE `base_student_development` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `user_id` BIGINT DEFAULT NULL COMMENT '学生id(xjr_user)',
+  `enroll_type` INT DEFAULT NULL COMMENT '登记类型(1:升学 2:就业 3:未就业)',
+  `base_student_graduate_id` BIGINT DEFAULT NULL COMMENT '毕业id(base_student_graduate)',
+  `is_entrepreneurship` INT DEFAULT NULL COMMENT '是否自己创业(1:是 0:否)',
+  `entrepreneurial_project` VARCHAR(100) DEFAULT NULL COMMENT '创业项目名称',
+  `is_flexible_work` INT DEFAULT NULL COMMENT '是否灵活就业(1:是 0:否)',
+  `work_content` VARCHAR(1000) DEFAULT NULL COMMENT '工作内容',
+  `is_company_coop` INT DEFAULT NULL COMMENT '是否校企合作单位(1:是 0:否)',
+  `company_coop_id` BIGINT DEFAULT NULL COMMENT '企合作单位(company_coop),是校企合作单位',
+  `work_company` VARCHAR(100) DEFAULT NULL COMMENT '就业单位名称(非校企合作单位)',
+  `company_industry` VARCHAR(100) DEFAULT NULL COMMENT '就业单位行业',
+  `company_nature` VARCHAR(100) DEFAULT NULL COMMENT '就业单位性质',
+  `company_scale` VARCHAR(50) DEFAULT NULL COMMENT '就业单位规模(xjr_dictionary_item[company_scale])',
+  `is_matching` INT DEFAULT NULL COMMENT '是否对口(1:是 0:否)',
+  `money` DOUBLE DEFAULT NULL COMMENT '最低薪资',
+  `work_date` DATE DEFAULT NULL COMMENT '就业日期',
+  `work_city` VARCHAR(50) DEFAULT NULL COMMENT '就业所在地区',
+  `culture_type` VARCHAR(50) DEFAULT NULL COMMENT '学生类型(xjr_dictionary_item[culture_type])',
+  `ascending_channels` VARCHAR(50) DEFAULT NULL COMMENT '升学渠道(xjr_dictionary_item[ascending_channels])',
+  `school` VARCHAR(50) DEFAULT NULL COMMENT '学校名称',
+  `admission_major` VARCHAR(50) DEFAULT NULL COMMENT '录取专业',
+  `score`INT DEFAULT NULL COMMENT '分数',
+  `ascending_arrangement` VARCHAR(50) DEFAULT NULL COMMENT '升学层次(xjr_dictionary_item[education_type])',
+  `unemployed_type` VARCHAR(50) DEFAULT NULL COMMENT '未就业类型(xjr_dictionary_item[unemployed_type])',
+  `remark` VARCHAR(500) DEFAULT NULL COMMENT '备注信息',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='学生去向登记';
+
+
+ALTER TABLE `room_bed_check_record`   
+  CHANGE `condition` `record` VARCHAR(1000) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL   COMMENT '情况';
+
+ALTER TABLE `xjr_department`   
+  ADD COLUMN `is_major` INT NULL   COMMENT '是否专业部(1:是 0:否)' AFTER `department_type`;
+  
+-- --------------------------------------------------------------------------------------------
+-- 功能分类设置
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS xjr_menu_group_set;   
+CREATE TABLE `xjr_menu_group_set` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `name` VARCHAR(100) DEFAULT NULL COMMENT '功能分类名称',
+  `code` VARCHAR(50) DEFAULT NULL COMMENT '分组代码(xjr_dictionary_item[xjr_menu_group])',
+  `use_range` INT DEFAULT NULL COMMENT '使用范围(1:全部学生 2:白名单学生)',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='功能分类设置';
+INSERT INTO xjr_menu_group_set(id, create_user_id,create_date, NAME, CODE, use_range,delete_mark,enabled_mark) 
+VALUES(1821825335458217984,1000000000000000000,NOW(),'基础功能','XMGS_001',1,0,1),
+(1821825335458217985,1000000000000000000,NOW(),'增值功能','XMGS_002',2,0,1);
+
+
+DROP TABLE IF EXISTS xjr_menu_group;   
+CREATE TABLE `xjr_menu_group` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `xjr_menu_id` BIGINT DEFAULT NULL COMMENT '菜单id(xjr_menu)',
+  `xjr_menu_group_set_id` BIGINT DEFAULT NULL COMMENT '功能分类设置(xjr_menu_group_set)',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='功能分类设置菜单关联表';
+
+-- --------------------------------------------------------------------------------------------
+-- 系统提示信息设置
+-- --------------------------------------------------------------------------------------------
+DROP TABLE IF EXISTS xjr_tips_message;   
+CREATE TABLE `xjr_tips_message` (
+  `id` BIGINT NOT NULL,
+  `create_user_id` BIGINT DEFAULT NULL COMMENT '创建人',
+  `create_date` DATETIME DEFAULT NULL COMMENT '创建时间',
+  `modify_user_id` BIGINT DEFAULT NULL COMMENT '修改人',
+  `modify_date` DATETIME DEFAULT NULL COMMENT '修改日期',
+  `delete_mark` INT DEFAULT NULL COMMENT '删除标记',
+  `enabled_mark` INT DEFAULT NULL COMMENT '有效标记',
+  `group_name` VARCHAR(100) DEFAULT NULL COMMENT '消息分组',
+  `name` VARCHAR(100) DEFAULT NULL COMMENT '提示名称',
+  `code` VARCHAR(50) DEFAULT NULL COMMENT '唯一code',
+  `content` VARCHAR(500) DEFAULT NULL COMMENT '消息内容',
+  PRIMARY KEY (`id`)
+) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统提示信息设置';
+INSERT INTO xjr_tips_message(id, create_user_id,create_date, group_name,`name`, `code`,delete_mark,enabled_mark) 
+VALUES(1821825335458217986,1000000000000000000,NOW(),'teleservice','无权限提示语','XTM_001',0,1),
+(1821825335458217987,1000000000000000000,NOW(),'teleservice','家长绑定非校园卡学生提示语','XTM_002',0,1);
+
+INSERT INTO xjr_tips_message(id, create_user_id,create_date, group_name,`name`, `code`,delete_mark,enabled_mark) 
+VALUES(1821825335458217988,1000000000000000000,NOW(),'teleservice','报名流程','XTM_008',0,1);
+
+
+
+DROP PROCEDURE IF EXISTS createCom;
+DELIMITER $$
+CREATE
+    PROCEDURE createCom()
+BEGIN
+    IF NOT EXISTS(SELECT 1 FROM information_schema.columns  WHERE table_name='base_class' AND COLUMN_NAME = 'major_set_id') THEN
+ALTER TABLE `base_class`   
+  ADD COLUMN `major_set_id` BIGINT NULL   COMMENT '专业方向id(base_major_set)' AFTER `class_type`;
+    END IF;
+END$$
+DELIMITER ;
+CALL createCom;
+DROP PROCEDURE createCom;
+
+UPDATE base_class t1
+INNER JOIN base_class_major_set t2 ON t1.id = t2.class_id
+SET t1.major_set_id = t2.major_set_id;