backend/sql/init.sql
@@ -101,6 +101,23 @@
(1203, 1200, '编辑角色', 'system_role_edit', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:role:edit', '角色编辑按钮', 0),
(1204, 1200, '删除角色', 'system_role_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'system:role:delete', '角色删除按钮', 0),
(1300, 1000, '系统设置', 'system_setting_group', 'M', '/system/settings', NULL, NULL, 30, 1, 1, NULL, '系统设置目录', 0),
(1305, 1300, '系统设置', 'system_basic_settings', 'C', '/system/settings/basic', 'System/BasicSettings', NULL, 5, 1, 1, 'system:basic-settings:view', '系统设置菜单', 0),
(1306, 1305, '编辑系统设置', 'system_basic_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:basic-settings:edit', '系统设置编辑按钮', 0),
(1307, 1300, 'APP版本设置', 'system_app_version_settings', 'C', '/system/settings/app-version', 'System/AppVersionSettings', NULL, 15, 1, 1, 'system:app-version:view', 'APP版本设置菜单', 0),
(1308, 1307, '新增APP版本', 'system_app_version_settings_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:app-version:add', '新增APP版本按钮', 0),
(1309, 1307, '查看APP版本', 'system_app_version_settings_detail', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:app-version:detail', '查看APP版本按钮', 0),
(1312, 1300, '消息推送配置', 'system_message_push_settings', 'C', '/system/settings/message-push', 'System/MessagePushSettings', NULL, 20, 1, 1, 'system:message-push:view', '消息推送配置菜单', 0),
(1313, 1312, '编辑消息推送配置', 'system_message_push_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:message-push:edit', '消息推送配置编辑按钮', 0),
(1314, 1300, 'Banner配置', 'system_banner_settings', 'C', '/system/settings/banner', 'System/BannerSettings', NULL, 12, 1, 1, 'system:banner:view', 'Banner配置菜单', 0),
(1315, 1314, '新增Banner', 'system_banner_settings_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:banner:add', 'Banner新增按钮', 0),
(1316, 1314, '编辑Banner', 'system_banner_settings_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:banner:edit', 'Banner编辑按钮', 0),
(1317, 1314, '查看Banner', 'system_banner_settings_detail', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:banner:detail', 'Banner查看按钮', 0),
(1318, 1314, '删除Banner', 'system_banner_settings_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'system:banner:delete', 'Banner删除按钮', 0),
(1319, 1314, '批量删除Banner', 'system_banner_settings_batch_delete', 'B', NULL, NULL, NULL, 5, 1, 1, 'system:banner:batch-delete', 'Banner批量删除按钮', 0),
(1320, 1314, '切换Banner上架状态', 'system_banner_settings_publish_status', 'B', NULL, NULL, NULL, 6, 1, 1, 'system:banner:publish-status', 'Banner上架状态按钮', 0),
(1321, 1300, '活动通知', 'system_activity_notice', 'C', '/system/settings/activity-notice', 'System/ActivityNotice', NULL, 13, 1, 1, 'system:activity-notice:view', '活动通知菜单', 0),
(1322, 1321, '新增活动通知', 'system_activity_notice_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:activity-notice:add', '活动通知新增按钮', 0),
(1323, 1321, '删除活动通知', 'system_activity_notice_delete', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:activity-notice:delete', '活动通知删除按钮', 0),
(1310, 1300, '积分设置', 'system_points_settings', 'C', '/system/settings/points', 'System/PointsSettings', NULL, 10, 1, 1, 'system:points-settings:view', '积分设置菜单', 0),
(1311, 1310, '编辑积分设置', 'system_points_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:points-settings:edit', '积分设置编辑按钮', 0),
(2000, 0, '用户与会员', 'member_root', 'M', '/member', NULL, 'team', 200, 1, 1, NULL, '用户与会员模块', 0),
@@ -186,7 +203,7 @@
INSERT IGNORE INTO `sys_role_menu` (`role_id`, `menu_id`)
VALUES
(1, 1000), (1, 1100), (1, 1101), (1, 1102), (1, 1103), (1, 1104), (1, 1105),
(1, 1200), (1, 1201), (1, 1202), (1, 1203), (1, 1204), (1, 1300), (1, 1310), (1, 1311),
(1, 1200), (1, 1201), (1, 1202), (1, 1203), (1, 1204), (1, 1300), (1, 1305), (1, 1306), (1, 1307), (1, 1308), (1, 1309), (1, 1310), (1, 1311), (1, 1312), (1, 1313), (1, 1314), (1, 1315), (1, 1316), (1, 1317), (1, 1318), (1, 1319), (1, 1320), (1, 1321), (1, 1322), (1, 1323),
(1, 2000), (1, 2100), (1, 2110), (1, 2111), (1, 2112), (1, 2113), (1, 2114), (1, 2115), (1, 2116), (1, 2117), (1, 2118), (1, 2119),
(1, 2200), (1, 2210), (1, 2211), (1, 2220), (1, 2221),
(1, 3000), (1, 3050), (1, 3060), (1, 3061), (1, 3062), (1, 3063),
@@ -773,6 +790,132 @@
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='场次答题记录表';
-- ----------------------------
-- 系统设置
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_system_settings` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `service_phone` VARCHAR(32) NOT NULL COMMENT '客服电话',
  `service_online_time` VARCHAR(64) NOT NULL COMMENT '客服在线时间',
  `backup_cycle_days` INT NOT NULL COMMENT '备份周期(天)',
  `member_expire_remind_days` INT NOT NULL COMMENT '会员到期提醒天数',
  `deleted` TINYINT(1) NOT NULL DEFAULT 0,
  `created_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '创建人',
  `updated_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '更新人',
  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统设置表';
INSERT IGNORE INTO `tcm_system_settings`
(`id`, `service_phone`, `service_online_time`, `backup_cycle_days`, `member_expire_remind_days`, `deleted`)
VALUES
(1, '400-800-1234', '09:00-18:00', 7, 3, 0);
-- ----------------------------
-- APP版本设置
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_app_version_config` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `version_no` VARCHAR(32) NOT NULL COMMENT '展示版本号',
  `version_code` INT NOT NULL COMMENT '版本字段',
  `android_file_url` VARCHAR(512) NOT NULL COMMENT '安卓文件地址',
  `android_file_name` VARCHAR(255) NOT NULL COMMENT '安卓文件名称',
  `ios_file_url` VARCHAR(512) NOT NULL COMMENT 'iOS文件地址',
  `ios_file_name` VARCHAR(255) NOT NULL COMMENT 'iOS文件名称',
  `force_update` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否强制更新:1是 0否',
  `update_notice` TEXT NOT NULL COMMENT '更新说明',
  `deleted` TINYINT(1) NOT NULL DEFAULT 0,
  `created_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '创建人',
  `updated_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '更新人',
  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_app_version_code` (`version_code`),
  KEY `idx_app_version_created_at` (`created_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='APP版本设置表';
INSERT IGNORE INTO `tcm_app_version_config`
(`id`, `version_no`, `version_code`, `android_file_url`, `android_file_name`, `ios_file_url`, `ios_file_name`, `force_update`, `update_notice`, `deleted`)
VALUES
(1, '1.0.0', 1, 'https://example.com/app/android/1.0.0.apk', 'app-1.0.0.apk', 'https://example.com/app/ios/1.0.0.ipa', 'app-1.0.0.ipa', 0, '反馈内容反馈内容反馈内容反馈内容反馈内容', 0),
(2, '1.0.1', 2, 'https://example.com/app/android/1.0.1.apk', 'app-1.0.1.apk', 'https://example.com/app/ios/1.0.1.ipa', 'app-1.0.1.ipa', 1, '反馈内容反馈内容反馈内容反馈内容反馈内容反馈内容反馈内容', 0);
-- ----------------------------
-- 消息推送配置
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_message_push_config` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `notice_type_code` VARCHAR(64) NOT NULL COMMENT '通知类型编码',
  `notice_type_name` VARCHAR(64) NOT NULL COMMENT '通知类型名称',
  `push_enabled` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否开启PUSH推送:1是 0否',
  `sms_enabled` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否开启短信通知:1是 0否',
  `deleted` TINYINT(1) NOT NULL DEFAULT 0,
  `created_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '创建人',
  `updated_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '更新人',
  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_message_push_notice_type_code` (`notice_type_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='消息推送配置表';
INSERT IGNORE INTO `tcm_message_push_config`
(`id`, `notice_type_code`, `notice_type_name`, `push_enabled`, `sms_enabled`, `deleted`)
VALUES
(1, 'MEMBER_EXPIRE_REMIND', '会员到期提醒', 1, 1, 0),
(2, 'LIVE_REMIND', '直播提醒', 1, 1, 0),
(3, 'ACTIVITY_NOTICE', '活动通知', 1, 0, 0),
(4, 'ORDER_STATUS_UPDATE', '订单状态更新', 1, 0, 0),
(5, 'COURSE_UPDATE_NOTICE', '课程更新通知', 1, 0, 0),
(6, 'STUDY_PROGRESS_REMIND', '学习进度提醒', 1, 0, 0);
-- ----------------------------
-- Banner配置
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_system_banner_config` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `banner_img` VARCHAR(512) NOT NULL COMMENT 'Banner图片',
  `title` VARCHAR(64) NOT NULL COMMENT 'Banner标题',
  `start_at` DATETIME NOT NULL COMMENT '展示开始时间',
  `end_at` DATETIME NOT NULL COMMENT '展示结束时间',
  `jump_type` VARCHAR(32) NOT NULL COMMENT '跳转类型',
  `target_id` BIGINT UNSIGNED DEFAULT NULL COMMENT '跳转目标ID',
  `target_name` VARCHAR(64) DEFAULT NULL COMMENT '跳转目标名称',
  `target_url` VARCHAR(512) DEFAULT NULL COMMENT '三方地址',
  `publish_enabled` TINYINT(1) NOT NULL DEFAULT 1 COMMENT '是否上架:1是 0否',
  `deleted` TINYINT(1) NOT NULL DEFAULT 0,
  `created_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '创建人',
  `updated_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '更新人',
  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_system_banner_time` (`start_at`, `end_at`),
  KEY `idx_system_banner_jump_type` (`jump_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='Banner配置表';
INSERT IGNORE INTO `tcm_system_banner_config`
(`id`, `banner_img`, `title`, `start_at`, `end_at`, `jump_type`, `target_id`, `target_name`, `target_url`, `publish_enabled`, `deleted`)
VALUES
(1, 'https://example.com/banner/member-discount.png', '会员显示折扣', '2024-05-05 12:25:33', '2024-06-01 12:25:33', 'MEMBER', NULL, '会员', NULL, 1, 0),
(2, 'https://example.com/banner/health-course.png', '兑换商城优惠券更新', '2024-05-05 12:25:33', '2024-06-01 12:25:33', 'HEALTH_COURSE', 1, '养生课程1', NULL, 1, 0),
(3, 'https://example.com/banner/third-party.png', '标题标题题', '2024-05-05 12:25:33', '2024-06-01 12:25:33', 'THIRD_PARTY_URL', NULL, NULL, 'https://www.baidu.com', 0, 0);
-- ----------------------------
-- 活动通知
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_activity_notice` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `title` VARCHAR(15) NOT NULL COMMENT '通知标题',
  `content_html` LONGTEXT NOT NULL COMMENT '通知内容富文本',
  `deleted` TINYINT(1) NOT NULL DEFAULT 0,
  `created_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '创建人',
  `updated_by` VARCHAR(64) NOT NULL DEFAULT '系统初始化' COMMENT '更新人',
  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_activity_notice_created_at` (`created_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动通知表';
-- ----------------------------
-- 积分设置
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_points_config` (