diff --git a/sql/saber.sql b/sql/saber.sql
index 8cff9a480f8a94d8f0198e0759179acfd69b9b8d..7a34a44867377d14d04d94ff53b4898cbc25a40f 100644
--- a/sql/saber.sql
+++ b/sql/saber.sql
@@ -1,17 +1,17 @@
 /*
  Navicat Premium Data Transfer
 
- Source Server         : 本地
+ Source Server         : sipc-saber
  Source Server Type    : MySQL
- Source Server Version : 80032
- Source Host           : localhost:3306
+ Source Server Version : 80100
+ Source Host           : 192.168.115.23:3308
  Source Schema         : saber
 
  Target Server Type    : MySQL
- Target Server Version : 80032
+ Target Server Version : 80100
  File Encoding         : 65001
 
- Date: 08/10/2023 23:23:41
+ Date: 03/11/2023 02:08:40
 */
 
 SET NAMES utf8mb4;
@@ -26,22 +26,13 @@ CREATE TABLE `admin` (
   `phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '手机号',
   `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '用户名',
   `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '密码',
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
   `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of admin
--- ----------------------------
-BEGIN;
-INSERT INTO `admin` (`id`, `phone`, `username`, `password`, `create_by`, `version`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, '13880734508', 'steadon.wei', '123456', 'root', 0, '2023-09-19 17:07:59', 'root', '2023-09-19 18:19:46', 0);
-INSERT INTO `admin` (`id`, `phone`, `username`, `password`, `create_by`, `version`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (2, '13302238687', 'yuleng.mei', '12345678', 'root', 0, '2023-09-19 17:07:59', 'root', '2023-09-21 08:02:44', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for business
@@ -51,7 +42,6 @@ CREATE TABLE `business` (
   `id` int unsigned NOT NULL AUTO_INCREMENT,
   `app_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
   `description` varchar(255) DEFAULT NULL,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -59,14 +49,7 @@ CREATE TABLE `business` (
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `app_code` (`app_code`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of business
--- ----------------------------
-BEGIN;
-INSERT INTO `business` (`id`, `app_code`, `description`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, 'TEST', '测试业务', 0, 'steadon', '2023-09-21 08:02:24', 'steadon', '2023-10-08 10:53:20', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for business_robot_merge
@@ -77,7 +60,6 @@ CREATE TABLE `business_robot_merge` (
   `app_code` varchar(255) DEFAULT NULL,
   `feishu_app_id` varchar(255) DEFAULT NULL,
   `is_default` tinyint unsigned DEFAULT '0',
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -88,14 +70,7 @@ CREATE TABLE `business_robot_merge` (
   KEY `feishu_app_id` (`feishu_app_id`),
   CONSTRAINT `business_robot_merge_ibfk_1` FOREIGN KEY (`app_code`) REFERENCES `business` (`app_code`) ON DELETE CASCADE ON UPDATE CASCADE,
   CONSTRAINT `business_robot_merge_ibfk_2` FOREIGN KEY (`feishu_app_id`) REFERENCES `feishu_robot` (`feishu_app_id`) ON DELETE CASCADE ON UPDATE CASCADE
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of business_robot_merge
--- ----------------------------
-BEGIN;
-INSERT INTO `business_robot_merge` (`id`, `app_code`, `feishu_app_id`, `is_default`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, 'TEST', 'cli_a583b6b767d8900b', 1, 1, 'steadon.wei', '2023-10-08 02:15:16', 'steadon.wei', '2023-10-08 10:56:01', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for chat_info
@@ -106,7 +81,6 @@ CREATE TABLE `chat_info` (
   `name` varchar(255) DEFAULT NULL,
   `chat_id` varchar(255) DEFAULT NULL,
   `owner_id` varchar(255) DEFAULT NULL,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -114,15 +88,7 @@ CREATE TABLE `chat_info` (
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `chat_id` (`chat_id`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of chat_info
--- ----------------------------
-BEGIN;
-INSERT INTO `chat_info` (`id`, `name`, `chat_id`, `owner_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, 'Saber项目组', 'oc_d6b1396a2a21cb375bdd689bfee52d0b', 'ou_95bf564ada320a7ab0a4151b16a1d8c4', 0, 'steadon.wei', '2023-09-20 17:55:18', 'steadon.wei', '2023-09-20 17:55:33', 0);
-INSERT INTO `chat_info` (`id`, `name`, `chat_id`, `owner_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (2, '测试', 'oc_4d0ed5bda345f5cfaaf9b383dd19fc7f', 'ou_95bf564ada320a7ab0a4151b16a1d8c4', 0, 'steadon.wei', '2023-09-20 17:55:18', 'steadon.wei', '2023-09-20 17:55:33', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for feishu_robot
@@ -134,7 +100,6 @@ CREATE TABLE `feishu_robot` (
   `feishu_app_secret` varchar(255) DEFAULT NULL,
   `name` varchar(255) DEFAULT NULL,
   `description` varchar(255) DEFAULT NULL,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -142,14 +107,7 @@ CREATE TABLE `feishu_robot` (
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `feishu_app_id` (`feishu_app_id`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of feishu_robot
--- ----------------------------
-BEGIN;
-INSERT INTO `feishu_robot` (`id`, `feishu_app_id`, `feishu_app_secret`, `name`, `description`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, 'cli_a583b6b767d8900b', 'rBW1Rb1L3D3JLmq5dBFwecpJjAYf8myT', '兰斯洛特', '「圆桌骑士之一」Saber的直属机器人', 0, 'steadon.wei', '2023-09-21 16:43:30', 'steadon.wei', '2023-09-21 16:43:40', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for group
@@ -158,20 +116,13 @@ DROP TABLE IF EXISTS `group`;
 CREATE TABLE `group` (
   `id` int unsigned NOT NULL AUTO_INCREMENT,
   `name` varchar(30) DEFAULT NULL,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
   `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of group
--- ----------------------------
-BEGIN;
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for group_user_merge
@@ -181,7 +132,6 @@ CREATE TABLE `group_user_merge` (
   `id` int unsigned NOT NULL AUTO_INCREMENT,
   `uid` int unsigned DEFAULT NULL,
   `group_id` int unsigned DEFAULT NULL,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -192,13 +142,7 @@ CREATE TABLE `group_user_merge` (
   KEY `group_id` (`group_id`),
   CONSTRAINT `group_user_merge_ibfk_1` FOREIGN KEY (`uid`) REFERENCES `user_info` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
   CONSTRAINT `group_user_merge_ibfk_2` FOREIGN KEY (`group_id`) REFERENCES `group` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
-) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of group_user_merge
--- ----------------------------
-BEGIN;
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=98 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for notification
@@ -208,16 +152,32 @@ CREATE TABLE `notification` (
   `id` int unsigned NOT NULL AUTO_INCREMENT,
   `title` varchar(255) DEFAULT NULL,
   `content` text,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
   `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-BEGIN;
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=675 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
+
+-- ----------------------------
+-- Table structure for notification_feishu_attrs
+-- ----------------------------
+DROP TABLE IF EXISTS `notification_feishu_attrs`;
+CREATE TABLE `notification_feishu_attrs` (
+  `ruleId` int unsigned NOT NULL COMMENT '规则ID',
+  `user_id` varchar(255) DEFAULT NULL COMMENT '飞书用户ID',
+  `chat_id` varchar(255) DEFAULT NULL COMMENT '飞书群聊ID',
+  `template_id` varchar(255) DEFAULT NULL COMMENT '消息卡片ID',
+  `feishu_app_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '飞书机器人ID',
+  `message_type` varchar(255) DEFAULT NULL COMMENT '消息类型 text/post/card',
+  `create_by` varchar(255) DEFAULT NULL,
+  `create_time` datetime DEFAULT NULL,
+  `update_by` varchar(255) DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
+  `is_deleted` tinyint unsigned DEFAULT '0',
+  PRIMARY KEY (`ruleId`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for notification_rule
@@ -225,12 +185,12 @@ COMMIT;
 DROP TABLE IF EXISTS `notification_rule`;
 CREATE TABLE `notification_rule` (
   `id` int unsigned NOT NULL AUTO_INCREMENT,
-  `template_id` int unsigned DEFAULT NULL COMMENT '指定消息模板',
+  `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '规则代号',
   `group_id` int unsigned DEFAULT NULL COMMENT '自定义用户组',
+  `template_id` int unsigned DEFAULT NULL COMMENT '指定消息模板',
   `feishu_status` tinyint unsigned DEFAULT '0' COMMENT '飞书激活',
   `sms_status` tinyint unsigned DEFAULT '0' COMMENT '短信激活',
   `email_status` tinyint unsigned DEFAULT '0' COMMENT '邮箱激活',
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -239,16 +199,26 @@ CREATE TABLE `notification_rule` (
   PRIMARY KEY (`id`),
   KEY `group_id` (`group_id`),
   KEY `template_id` (`template_id`),
+  KEY `code` (`code`) USING BTREE,
   CONSTRAINT `notification_rule_ibfk_1` FOREIGN KEY (`group_id`) REFERENCES `group` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
   CONSTRAINT `notification_rule_ibfk_2` FOREIGN KEY (`template_id`) REFERENCES `template` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=60 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
--- Records of notification_rule
+-- Table structure for notification_sms_attrs
 -- ----------------------------
-BEGIN;
-INSERT INTO `notification_rule` (`id`, `template_id`, `group_id`, `feishu_status`, `sms_status`, `email_status`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, 1, NULL, 1, 0, 0, 0, 'steadon.wei', '2023-10-08 02:10:57', 'steadon.wei', '2023-10-08 02:10:57', 0);
-COMMIT;
+DROP TABLE IF EXISTS `notification_sms_attrs`;
+CREATE TABLE `notification_sms_attrs` (
+  `ruleId` int NOT NULL COMMENT '规则ID',
+  `template_id` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '短信模板ID',
+  `sign_name` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '短信签名',
+  `create_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
+  `create_time` datetime DEFAULT NULL,
+  `update_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
+  `is_deleted` tinyint unsigned DEFAULT '0',
+  PRIMARY KEY (`ruleId`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
 
 -- ----------------------------
 -- Table structure for notification_user_merge
@@ -258,7 +228,6 @@ CREATE TABLE `notification_user_merge` (
   `id` int unsigned NOT NULL AUTO_INCREMENT,
   `uid` int unsigned DEFAULT NULL,
   `notification_id` int unsigned DEFAULT NULL,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -269,13 +238,7 @@ CREATE TABLE `notification_user_merge` (
   KEY `notification_id` (`notification_id`),
   CONSTRAINT `notification_user_merge_ibfk_1` FOREIGN KEY (`uid`) REFERENCES `user_info` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
   CONSTRAINT `notification_user_merge_ibfk_2` FOREIGN KEY (`notification_id`) REFERENCES `notification` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of notification_user_merge
--- ----------------------------
-BEGIN;
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for template
@@ -286,21 +249,13 @@ CREATE TABLE `template` (
   `name` varchar(255) DEFAULT NULL,
   `description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
   `content` text,
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
   `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of template
--- ----------------------------
-BEGIN;
-INSERT INTO `template` (`id`, `name`, `description`, `content`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, '测试-改', '测试-改', '一次成功的测试', 2, 'steadon.wei', '2023-09-29 01:03:04', 'steadon.wei', '2023-10-05 23:32:53', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 -- ----------------------------
 -- Table structure for user_info
@@ -313,7 +268,6 @@ CREATE TABLE `user_info` (
   `email` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '邮箱',
   `mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '电话',
   `user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '飞书UID',
-  `version` int unsigned DEFAULT '1',
   `create_by` varchar(255) DEFAULT NULL,
   `create_time` datetime DEFAULT NULL,
   `update_by` varchar(255) DEFAULT NULL,
@@ -321,123 +275,6 @@ CREATE TABLE `user_info` (
   `is_deleted` tinyint unsigned DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `user_info_ibfk_1` (`grade`)
-) ENGINE=InnoDB AUTO_INCREMENT=113 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
--- ----------------------------
--- Records of user_info
--- ----------------------------
-BEGIN;
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (1, '苏栖淼', '2018+', NULL, '+8618822043307', 'gd5a2431', 1, 'steadon.wei', '2023-10-07 17:00:04', 'steadon.wei', '2023-10-07 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (2, '刘思嘉', '2018+', NULL, '+8613602110705', '4b8g3abf', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (3, '孟祥钊', '2018+', NULL, '+8613072212219', '147ddba6', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (4, '王皓晨', '2018+', NULL, '+8615902283850', '9ae2174b', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (5, '张述伟', '2018+', NULL, '+8616631819668', 'd22819d5', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:41', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (6, '黄政源', '2018+', NULL, '+8613526606896', 'e7f13d5e', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (7, '吴梦歌', '2018+', NULL, '+8617695560414', '453cf16f', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:41', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (8, '马嘉骏', '2018+', NULL, '+8615581985088', '34c9bf88', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (9, '张若萱', '2018+', NULL, '+8615712565942', '523d53ab', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:41', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (10, '牛梓雨', '2018+', NULL, '+8613920919124', '4ge3935g', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (11, 'å¼ é’Šé“­', '2018+', NULL, '+8618129986369', '4bc2234g', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:41', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (12, '王康力', '2018+', NULL, '+8618722189199', '8593f1cb', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:41', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (13, '马晶晶', '2018+', NULL, '+8618033669850', '19ad9b45', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (14, '蔡鹏渤', '2018+', NULL, '+8613044749294', 'aceg7gd1', 1, 'steadon.wei', '2023-09-19 17:00:04', 'steadon.wei', '2023-09-21 16:31:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (15, '李鑫磊', '2019', NULL, '+8618920259090', '3a1fb4b2', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (16, '赵倩', '2019', NULL, '+8613589193462', 'd4eedc72', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (17, '张钰辉', '2019', NULL, '+8618137460072', 'cdfa92b8', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (18, '郭芷妍', '2019', NULL, '+8613212007707', 'fa8b6b58', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (19, '韩宇阳', '2019', NULL, '+8615802202580', 'bbda54fc', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (20, '李金阁', '2019', NULL, '+8615376494902', 'aea65fag', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (21, '彭业诚', '2019', NULL, '+8613737238776', '1975feb2', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (22, '张正凯', '2019', NULL, '+8618822779057', 'gcd5d7f5', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (23, '台亚彤', '2019', NULL, '+8617393929512', 'ac74c4c3', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (24, '杨三雄', '2019', NULL, '+8617609330450', '5a5bg7fa', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (25, '樊晨阳', '2019', NULL, '+8618939029228', '9cd8e7f7', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (26, '徐浩瀚', '2019', NULL, '+8618682649020', 'e3393bef', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (27, '穆世宇', '2019', NULL, '+8618822035891', '53cdg89d', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (28, '赵贺', '2019', NULL, '+8615030940632', 'd1ebd8g4', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (29, '李酉夏', '2019', NULL, '+8618335159189', 'ff19g2a2', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (30, '王梓懿', '2019', NULL, '+8615588447468', '42557g16', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (31, '陈子霖', '2019', NULL, '+8615275338632', 'ba1e1a71', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (32, '周小茜', '2019', NULL, '+8613730971908', '1672af44', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (33, '张文森', '2019', NULL, '+8617684142717', '1g9582da', 1, 'steadon.wei', '2023-09-19 17:00:58', 'steadon.wei', '2023-09-19 18:11:28', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (34, '贺晶', '2020', NULL, '+8613834204796', 'e38g196b', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (35, '张思雨', '2020', NULL, '+8615620178507', '988bg5d9', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (36, '陈佳博', '2020', NULL, '+8613132589773', '98d136bg', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (37, '陈泓盛', '2020', NULL, '+8613689663380', '5g6d42bc', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (38, '刘以沫', '2020', NULL, '+8615233116678', 'g816a5ab', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (39, '孔偌萱', '2020', NULL, '+8618232758762', 'e268f35b', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (40, '张在端', '2020', NULL, '+8618233571816', 'gc6ga99c', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (41, '朱冠旭', '2020', NULL, '+8618812602157', 'd7g2319a', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (42, '高佳兴', '2020', NULL, '+8613734174131', '8e723fb7', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (43, '邓光阳', '2020', NULL, '+8618222414247', '18c87463', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (44, '安家恒', '2020', NULL, '+8613176423071', 'e83g5d7e', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (45, '狄玉婷', '2020', NULL, '+8618395408554', '6c54e61e', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (46, '张静文', '2020', NULL, '+8618753773205', 'd7g2b797', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (47, '姚泓宇', '2020', NULL, '+8615002232269', '7bbf987f', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (48, '韦逸', '2020', NULL, '+8613237754220', 'd2gc6322', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (49, '齐浩铭', '2020', NULL, '+8613032280092', 'aag2a51a', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (50, '刘安龙', '2020', NULL, '+8618386197898', 'g82a4555', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (51, '秦士轩', '2020', NULL, '+8615754000428', '59633ecg', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (52, '熊贤烽', '2020', NULL, '+8617878429585', '3fbg257d', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (53, '李鼎新', '2020', NULL, '+8618812562753', '53ga71f7', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (54, '赵昱添', '2020', NULL, '+8613132580335', 'd368b3b1', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (55, '周鑫宁', '2020', NULL, '+8615222079742', '37eccg81', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (56, '李俊', '2020', NULL, '+8618222956130', 'eabbfg89', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (57, '曾生强', '2020', NULL, '+8613950537973', '4g26575e', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (58, '罗耀宇', '2020', NULL, '+8618322332041', '8eeg48e5', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (59, '刘治江', '2020', NULL, '+8619593100800', '936db2a5', 1, 'steadon.wei', '2023-09-19 17:01:22', 'steadon.wei', '2023-09-19 18:11:34', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (60, '肖琰', '2021', NULL, '+8615130757175', 'dd73a3c7', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (61, '李会彬', '2021', NULL, '+8617884906977', '7bfa8341', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (62, 'é›·é’§', '2021', NULL, '+8618734411493', 'b5b6c33b', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (63, '李东阳', '2021', NULL, '+8615542909467', '4dc53a9b', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (64, '万羽旋', '2021', NULL, '+8618028731292', '2427754b', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (65, '齐东睿', '2021', NULL, '+8615665043125', '44gg4c73', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (66, '彭博', '2021', NULL, '+8613562870539', 'c81d2b2b', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (67, '卢晓雨', '2021', NULL, '+8618739310210', '77d9fff7', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (68, '胡一凡', '2021', NULL, '+8615100979263', 'c9894687', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (69, '张文睿', '2021', NULL, '+8615552738180', '12f73aaa', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (70, 'æ•–é‘«', '2021', NULL, '+8615345360610', 'dee17c6g', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (71, '肖天旭', '2021', NULL, '+8615908601214', '589759f9', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (72, '张朝辉', '2021', NULL, '+8615076347058', '8256cccc', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (73, '李政东', '2021', NULL, '+8619179755936', 'f39bgce9', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (74, '梅书豪', '2021', NULL, '+8613302238687', '4d75d98f', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (75, '李思莹', '2021', NULL, '+8613092391693', '88bec6ac', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (76, '刘潇迪', '2021', NULL, '+8615566716688', '2f73aebd', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (77, '阳冉升', '2021', NULL, '+8618180488130', 'g7bea6c7', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (78, '张昕贝', '2021', NULL, '+8613008827599', '4g27dbcd', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (79, '王皓枭', '2021', NULL, '+8618553428553', '1c82819e', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (80, '郭靖源', '2021', NULL, '+8613031446862', 'dc22d3c4', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (81, '汤子涵', '2021', NULL, '+8613597111445', '18ee7cg9', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (82, '胡雅歌', '2021', NULL, '+8613837301860', 'f818f13a', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (83, '尹梦琦', '2021', NULL, '+8613658833161', '522b2de4', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (84, '徐嘉豪', '2021', NULL, '+8618922374249', 'c6g1ff1e', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (85, '崔梦妮', '2021', NULL, '+8615136777052', 'ae4a4d98', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (86, '刘荣', '2021', NULL, '+8615297964662', 'c3747bg1', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (87, '向东', '2021', NULL, '+8618781239752', '2g968a4e', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (88, '韦秉芮', '2021', NULL, '+8613880734508', 'a48a5948', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (89, '焦炫铭', '2021', NULL, '+8615082933777', '287bbg8b', 1, 'steadon.wei', '2023-09-19 17:02:06', 'steadon.wei', '2023-09-19 18:11:40', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (90, '张婧萱', '2022', NULL, '+8617627857100', '8b369bd6', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (91, '王子', '2022', NULL, '+8618108074809', 'dg1f7b41', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (92, '赵沛文', '2022', NULL, '+8616600216791', '2281a44e', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (93, '李衍硕', '2022', NULL, '+8618842467720', '9d538162', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (94, '林岳泓', '2022', NULL, '+8619842795549', '18aa16a6', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (95, '杨汇博', '2022', NULL, '+8615733096326', 'd976d47b', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (96, '成冰阳', '2022', NULL, '+8615893039386', '83696g1d', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (97, '张文轩', '2022', NULL, '+8617381914981', '3f5b7742', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (98, '王玮', '2022', NULL, '+8618835411718', '37d7b117', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (99, '余阳芷', '2022', NULL, '+8615979353140', 'e4b65ce8', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (100, '李佳诚', '2022', NULL, '+8617713209016', '89a1d84f', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (101, '魏书婷', '2022', NULL, '+8618822516823', '56bcag4c', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (102, '陈昕昱', '2022', NULL, '+8615659708708', '2gbacg56', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (103, '王鹏', '2022', NULL, '+8615183795869', '328g483d', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (104, '蓝文昊', '2022', NULL, '+8618822620526', '4f3f8596', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (105, '钱思旭', '2022', NULL, '+8613584600032', '478e27f5', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (106, '张思俊', '2022', NULL, '+8613116149651', 'adf4cd59', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (107, '马一飞', '2022', NULL, '+8615510901778', 'ccg5a9e8', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (108, '陈展', '2022', NULL, '+8618222212407', '71542a59', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (109, '白佳明', '2022', NULL, '+8618522495886', '31d987ff', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (110, '杨刚', '2022', NULL, '+8618847318599', '28e1bbd2', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-INSERT INTO `user_info` (`id`, `name`, `grade`, `email`, `mobile`, `user_id`, `version`, `create_by`, `create_time`, `update_by`, `update_time`, `is_deleted`) VALUES (111, '孙贤为', '2022', NULL, '+8615522018099', '3297gg63', 1, 'steadon.wei', '2023-09-19 17:03:04', 'steadon.wei', '2023-09-19 18:11:44', 0);
-COMMIT;
+) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 SET FOREIGN_KEY_CHECKS = 1;
diff --git a/src/main/java/com/steadon/saber/biz/IBusinessBiz.java b/src/main/java/com/steadon/saber/biz/IBusinessBiz.java
index 888ef732c9422299eef1cb793395ba3307328470..9802fdd8e32a73cb058d6e86da14843db13e7218 100644
--- a/src/main/java/com/steadon/saber/biz/IBusinessBiz.java
+++ b/src/main/java/com/steadon/saber/biz/IBusinessBiz.java
@@ -1,4 +1,16 @@
 package com.steadon.saber.biz;
 
+import com.steadon.saber.pojo.SaberResponse;
+import com.steadon.saber.pojo.domain.Business;
+import com.steadon.saber.pojo.model.BusinessRequest;
+import com.steadon.saber.pojo.model.pageData.PageData;
+
 public interface IBusinessBiz {
+    SaberResponse<PageData<Business>> getBizInfoBatch(Integer pageNo, Integer pageSize);
+
+    SaberResponse<String> addBizInfo(BusinessRequest request);
+
+    SaberResponse<String> updateBizInfo(BusinessRequest request);
+
+    SaberResponse<String> deleteBizInfo(String appCode);
 }
diff --git a/src/main/java/com/steadon/saber/biz/impl/BusinessBiz.java b/src/main/java/com/steadon/saber/biz/impl/BusinessBiz.java
index ab088e8e7a79a852020e3dbc5c64d40146780e6d..038b2b40c2ae2d6aff7d7726f17c7c5959656a4e 100644
--- a/src/main/java/com/steadon/saber/biz/impl/BusinessBiz.java
+++ b/src/main/java/com/steadon/saber/biz/impl/BusinessBiz.java
@@ -1,8 +1,55 @@
 package com.steadon.saber.biz.impl;
 
 import com.steadon.saber.biz.IBusinessBiz;
+import com.steadon.saber.pojo.SaberResponse;
+import com.steadon.saber.pojo.domain.Business;
+import com.steadon.saber.pojo.model.BusinessRequest;
+import com.steadon.saber.pojo.model.pageData.PageData;
+import com.steadon.saber.service.BusinessService;
+import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 
 @Service
+@AllArgsConstructor
 public class BusinessBiz implements IBusinessBiz {
+
+    private BusinessService businessService;
+
+    @Override
+    public SaberResponse<PageData<Business>> getBizInfoBatch(Integer pageNo, Integer pageSize) {
+        PageData<Business> pageData = businessService.getBizInfoBatch(pageNo, pageSize);
+        return SaberResponse.success(pageData);
+    }
+
+    @Override
+    public SaberResponse<String> addBizInfo(BusinessRequest request) {
+        Integer appId = businessService.validBusinessAppCode(request.getAppCode());
+        Business business = new Business();
+        business.setId(appId);
+        business.setAppCode(request.getAppCode());
+        business.setDescription(request.getDescription());
+        business.createStatus();
+        business.updateStatus();
+        businessService.addBizInfo(business);
+        return SaberResponse.success();
+    }
+
+    @Override
+    public SaberResponse<String> updateBizInfo(BusinessRequest request) {
+        Integer appId = businessService.validBusinessAppCode(request.getAppCode());
+        Business business = new Business();
+        business.setId(appId);
+        business.setAppCode(request.getAppCode());
+        business.setDescription(request.getDescription());
+        business.updateStatus();
+        businessService.updateBizInfo(business);
+        return SaberResponse.success();
+    }
+
+    @Override
+    public SaberResponse<String> deleteBizInfo(String appCode) {
+        Integer appId = businessService.validBusinessAppCode(appCode);
+        businessService.deleteBizInfo(appId);
+        return SaberResponse.success();
+    }
 }
diff --git a/src/main/java/com/steadon/saber/controller/BusinessController.java b/src/main/java/com/steadon/saber/controller/BusinessController.java
new file mode 100644
index 0000000000000000000000000000000000000000..5449608b43013b45e2c5b5d8a98c63e7c9589b2e
--- /dev/null
+++ b/src/main/java/com/steadon/saber/controller/BusinessController.java
@@ -0,0 +1,38 @@
+package com.steadon.saber.controller;
+
+import com.steadon.saber.biz.IBusinessBiz;
+import com.steadon.saber.pojo.SaberResponse;
+import com.steadon.saber.pojo.domain.Business;
+import com.steadon.saber.pojo.model.BusinessRequest;
+import com.steadon.saber.pojo.model.pageData.PageData;
+import lombok.AllArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@AllArgsConstructor
+@RequestMapping("/saber")
+public class BusinessController {
+
+    private IBusinessBiz iBusinessBiz;
+
+    @GetMapping("/business/list")
+    public SaberResponse<PageData<Business>> getBizInfoBatch(@RequestParam(value = "page_no", required = false, defaultValue = "1") Integer pageNo, @RequestParam(value = "page_size", required = false, defaultValue = "10") Integer pageSize) {
+        return iBusinessBiz.getBizInfoBatch(pageNo, pageSize);
+    }
+
+    @PutMapping("/business/add")
+    public SaberResponse<String> addBizInfo(@RequestBody @Validated BusinessRequest request) {
+        return iBusinessBiz.addBizInfo(request);
+    }
+
+    @PostMapping("/business/update")
+    public SaberResponse<String> updateBizInfo(@RequestBody @Validated BusinessRequest request) {
+        return iBusinessBiz.updateBizInfo(request);
+    }
+
+    @GetMapping("/business/delete")
+    public SaberResponse<String> deleteBizInfo(@RequestParam(value = "app_code") String appCode) {
+        return iBusinessBiz.deleteBizInfo(appCode);
+    }
+}
diff --git a/src/main/java/com/steadon/saber/pojo/model/BusinessRequest.java b/src/main/java/com/steadon/saber/pojo/model/BusinessRequest.java
new file mode 100644
index 0000000000000000000000000000000000000000..bdf03c2d485c55e7838c6091e248ab3dc8807fe2
--- /dev/null
+++ b/src/main/java/com/steadon/saber/pojo/model/BusinessRequest.java
@@ -0,0 +1,9 @@
+package com.steadon.saber.pojo.model;
+
+import lombok.Data;
+
+@Data
+public class BusinessRequest {
+    private String appCode;
+    private String description;
+}
\ No newline at end of file
diff --git a/src/main/java/com/steadon/saber/service/BusinessService.java b/src/main/java/com/steadon/saber/service/BusinessService.java
index 523450392b32e4b6ff1183b9d1726e64bb75c959..27f4d0a7f2dc9373a7e0a185492bafc8a48c9fec 100644
--- a/src/main/java/com/steadon/saber/service/BusinessService.java
+++ b/src/main/java/com/steadon/saber/service/BusinessService.java
@@ -1,6 +1,17 @@
 package com.steadon.saber.service;
 
+import com.steadon.saber.pojo.domain.Business;
+import com.steadon.saber.pojo.model.pageData.PageData;
+
 public interface BusinessService {
 
-    void validBusinessAppCode(String appCode);
+    PageData<Business> getBizInfoBatch(Integer pageNo, Integer pageSize);
+
+    void addBizInfo(Business business);
+
+    void updateBizInfo(Business business);
+
+    void deleteBizInfo(Integer appId);
+
+    Integer validBusinessAppCode(String appCode);
 }
diff --git a/src/main/java/com/steadon/saber/service/impl/BusinessServiceImpl.java b/src/main/java/com/steadon/saber/service/impl/BusinessServiceImpl.java
index 6d0ec9ebb71c0a9848d00be0709614051350e408..5c797d557aa953e06c2dda7f0bd786c3c528f849 100644
--- a/src/main/java/com/steadon/saber/service/impl/BusinessServiceImpl.java
+++ b/src/main/java/com/steadon/saber/service/impl/BusinessServiceImpl.java
@@ -1,9 +1,11 @@
 package com.steadon.saber.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.steadon.saber.mapper.BusinessMapper;
 import com.steadon.saber.pojo.domain.Business;
 import com.steadon.saber.pojo.model.exception.SaberBaseException;
+import com.steadon.saber.pojo.model.pageData.PageData;
 import com.steadon.saber.pojo.model.resultEnum.ResultCode;
 import com.steadon.saber.service.BusinessService;
 import lombok.AllArgsConstructor;
@@ -16,10 +18,35 @@ public class BusinessServiceImpl implements BusinessService {
     private BusinessMapper businessMapper;
 
     @Override
-    public void validBusinessAppCode(String appCode) {
+    public PageData<Business> getBizInfoBatch(Integer pageNo, Integer pageSize) {
+        Page<Business> page = new Page<>(pageNo, pageSize);
+        Page<Business> pageData = businessMapper.selectPage(page, null);
+        PageData<Business> businessPageData = new PageData<>();
+        businessPageData.praiseIPage(pageData);
+        return businessPageData;
+    }
+
+    @Override
+    public void addBizInfo(Business business) {
+        businessMapper.insert(business);
+    }
+
+    @Override
+    public void updateBizInfo(Business business) {
+        businessMapper.updateById(business);
+    }
+
+    @Override
+    public void deleteBizInfo(Integer appId) {
+        businessMapper.deleteById(appId);
+    }
+
+    @Override
+    public Integer validBusinessAppCode(String appCode) {
         Business business = businessMapper.selectOne(new QueryWrapper<Business>().eq("app_code", appCode));
         if (business == null) {
             throw new SaberBaseException(ResultCode.INVALID_PARAM, "invalid app_id");
         }
+        return business.getId();
     }
 }
diff --git a/src/main/java/com/steadon/saber/service/impl/NotificationServiceImpl.java b/src/main/java/com/steadon/saber/service/impl/NotificationServiceImpl.java
index 4d63fd16d387d4b9b0e8eae304ebbbcee12beb15..c272e14305948775f3610f4c26a08e9f5980a7f5 100644
--- a/src/main/java/com/steadon/saber/service/impl/NotificationServiceImpl.java
+++ b/src/main/java/com/steadon/saber/service/impl/NotificationServiceImpl.java
@@ -16,6 +16,7 @@ import com.steadon.saber.pojo.model.exception.SaberBaseException;
 import com.steadon.saber.pojo.model.pageData.PageData;
 import com.steadon.saber.pojo.model.resultEnum.ResultCode;
 import com.steadon.saber.service.NotificationService;
+import com.steadon.saber.util.StringUtils;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Isolation;
@@ -79,6 +80,10 @@ public class NotificationServiceImpl implements NotificationService {
 
     @Override
     public void addNotificationRule(NotificationRule notificationRule) {
+        // 检查规则编号的唯一性
+        if (notificationRuleMapper.selectOne(new QueryWrapper<NotificationRule>().eq("code", notificationRule.getCode())) != null) {
+            throw new SaberBaseException(ResultCode.INVALID_PARAM, "ruleCode has been used");
+        }
         if (notificationRuleMapper.insert(notificationRule) == 0) {
             throw new SaberBaseException(ResultCode.DB_ERROR, "database handle failed");
         }
@@ -86,6 +91,12 @@ public class NotificationServiceImpl implements NotificationService {
 
     @Override
     public void updateNotificationRule(NotificationRule notificationRule) {
+        // 检查规则编号的唯一性
+        if (StringUtils.isNotEmpty(notificationRule.getCode())) {
+            if (notificationRuleMapper.selectOne(new QueryWrapper<NotificationRule>().eq("code", notificationRule.getCode())) != null) {
+                throw new SaberBaseException(ResultCode.INVALID_PARAM, "ruleCode has been used");
+            }
+        }
         if (notificationRuleMapper.updateById(notificationRule) == 0) {
             throw new SaberBaseException(ResultCode.DB_ERROR, "database handle failed");
         }
diff --git a/src/main/resources/mapper/NotificationSmsAttrsMapper.xml b/src/main/resources/mapper/NotificationSmsAttrsMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..87ed438a6edf871298a85b572f2fb03caf49db31
--- /dev/null
+++ b/src/main/resources/mapper/NotificationSmsAttrsMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steadon.saber.mapper.NotificationSmsAttrsMapper">
+
+</mapper>
\ No newline at end of file