|
@@ -0,0 +1,74 @@
|
|
|
+-- Active: xiaoding_tes@@192.168.110.85@3306@xiaoding_test
|
|
|
+
|
|
|
+
|
|
|
+/* 删除设置相关表 */
|
|
|
+DROP TABLE IF EXISTS `setting_values`;
|
|
|
+DROP TABLE IF EXISTS `setting_permissions`;
|
|
|
+DROP TABLE IF EXISTS `setting_items`;
|
|
|
+DROP TABLE IF EXISTS `setting_groups`;
|
|
|
+
|
|
|
+/* 创建设置组表 */
|
|
|
+CREATE TABLE `setting_groups` (
|
|
|
+ `id` bigint unsigned NOT NULL AUTO_INCREMENT /* 主键ID */,
|
|
|
+ `code` varchar(50) NOT NULL /* 设置组编码 */,
|
|
|
+ `name` varchar(50) NOT NULL /* 设置组名称 */,
|
|
|
+ `description` varchar(255) DEFAULT NULL /* 设置组描述 */,
|
|
|
+ `sort` int NOT NULL DEFAULT 0 /* 排序 */,
|
|
|
+ `created_at` timestamp NULL DEFAULT NULL /* 创建时间 */,
|
|
|
+ `updated_at` timestamp NULL DEFAULT NULL /* 更新时间 */,
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ UNIQUE KEY `uk_code` (`code`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci /* 设置组表 */;
|
|
|
+
|
|
|
+/* 创建设置项表 */
|
|
|
+CREATE TABLE `setting_items` (
|
|
|
+ `id` bigint unsigned NOT NULL AUTO_INCREMENT /* 主键ID */,
|
|
|
+ `group_id` bigint unsigned NOT NULL /* 设置组ID */,
|
|
|
+ `code` varchar(50) NOT NULL /* 设置项编码 */,
|
|
|
+ `name` varchar(50) NOT NULL /* 设置项名称 */,
|
|
|
+ `description` varchar(255) DEFAULT NULL /* 设置项描述 */,
|
|
|
+ `value_type` varchar(20) NOT NULL /* 值类型:string,number,boolean,json */,
|
|
|
+ `default_value` text DEFAULT NULL /* 默认值 */,
|
|
|
+ `min_value` decimal(10,2) DEFAULT NULL /* 最⼩值(数值类型) */,
|
|
|
+ `max_value` decimal(10,2) DEFAULT NULL /* 最⼤值(数值类型) */,
|
|
|
+ `options` json DEFAULT NULL /* 可选值(json格式) */,
|
|
|
+ `sort` int NOT NULL DEFAULT 0 /* 排序 */,
|
|
|
+ `created_at` timestamp NULL DEFAULT NULL /* 创建时间 */,
|
|
|
+ `updated_at` timestamp NULL DEFAULT NULL /* 更新时间 */,
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ UNIQUE KEY `uk_code` (`code`),
|
|
|
+ KEY `idx_group_id` (`group_id`),
|
|
|
+ CONSTRAINT `fk_setting_items_group_id` FOREIGN KEY (`group_id`) REFERENCES `setting_groups` (`id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci /* 设置项表 */;
|
|
|
+
|
|
|
+/* 创建设置权限表 */
|
|
|
+CREATE TABLE `setting_permissions` (
|
|
|
+ `id` bigint unsigned NOT NULL AUTO_INCREMENT /* 主键ID */,
|
|
|
+ `item_id` bigint unsigned NOT NULL /* 设置项ID */,
|
|
|
+ `object_type` varchar(20) NOT NULL /* 业务对象类型:PLATFORM,AGENT,SHOP,COACH */,
|
|
|
+ `can_edit` tinyint(1) NOT NULL DEFAULT 0 /* 是否可编辑 */,
|
|
|
+ `min_value` decimal(10,2) DEFAULT NULL /* 最⼩值限制 */,
|
|
|
+ `max_value` decimal(10,2) DEFAULT NULL /* 最⼤值限制 */,
|
|
|
+ `options` json DEFAULT NULL /* 可选值限制 */,
|
|
|
+ `created_at` timestamp NULL DEFAULT NULL /* 创建时间 */,
|
|
|
+ `updated_at` timestamp NULL DEFAULT NULL /* 更新时间 */,
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ UNIQUE KEY `uk_item_object` (`item_id`,`object_type`),
|
|
|
+ KEY `idx_item_id` (`item_id`),
|
|
|
+ CONSTRAINT `fk_setting_permissions_item_id` FOREIGN KEY (`item_id`) REFERENCES `setting_items` (`id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci /* 设置权限表 */;
|
|
|
+
|
|
|
+/* 创建设置值表 */
|
|
|
+CREATE TABLE `setting_values` (
|
|
|
+ `id` bigint unsigned NOT NULL AUTO_INCREMENT /* 主键ID */,
|
|
|
+ `item_id` bigint unsigned NOT NULL /* 设置项ID */,
|
|
|
+ `object_type` varchar(20) NOT NULL /* 业务对象类型:PLATFORM,AGENT,SHOP,COACH */,
|
|
|
+ `object_id` bigint unsigned NOT NULL /* 业务对象ID */,
|
|
|
+ `value` text NOT NULL /* 设置值 */,
|
|
|
+ `created_at` timestamp NULL DEFAULT NULL /* 创建时间 */,
|
|
|
+ `updated_at` timestamp NULL DEFAULT NULL /* 更新时间 */,
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ UNIQUE KEY `uk_item_object` (`item_id`,`object_type`,`object_id`),
|
|
|
+ KEY `idx_object` (`object_type`,`object_id`),
|
|
|
+ CONSTRAINT `fk_setting_values_item_id` FOREIGN KEY (`item_id`) REFERENCES `setting_items` (`id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci /* 设置值表 */;
|