hejianhao
2026-09-01 a6e3c9d979b2b97cebf2cd937e36af48365b5a6a
Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/tcm-training
22个文件已添加
1个文件已修改
658 ■■■■■ 已修改文件
.gitignore 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.workbuddy/memory/2026-08-31.md 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
资料/20260806_prd.sql 569 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
资料/admin-20260806.zip 补丁 | 查看 | 原始文档 | blame | 历史
资料/dev.mobileprovision 补丁 | 查看 | 原始文档 | blame | 历史
资料/dev.p12 补丁 | 查看 | 原始文档 | blame | 历史
资料/dist(2).mobileprovision 补丁 | 查看 | 原始文档 | blame | 历史
资料/dist(2).p12 补丁 | 查看 | 原始文档 | blame | 历史
资料/tcm-training-admin-backend-0.0.1-SNAPSHOT.jar 补丁 | 查看 | 原始文档 | blame | 历史
资料/test.keystore 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/CertificateSigningRequest.certSigningRequest 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/aps.cer 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/dev.p12 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/dev_profile.mobileprovision 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/development.cer 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/dist.mobileprovision 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/dist.p12 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/dist_profile.mobileprovision 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/ios_distribution.cer 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/push.p12 补丁 | 查看 | 原始文档 | blame | 历史
资料/中医/test.keystore 补丁 | 查看 | 原始文档 | blame | 历史
资料/发布手册.txt 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
资料/海政通_connect_config.json 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.gitignore
@@ -68,3 +68,6 @@
AGENTS.md
.claude
.codex
.workbuddy
.tmp_watchlive_frames
.workbuddy/memory/2026-08-31.md
New file
@@ -0,0 +1,44 @@
# 2026-08-31 工作日志
## 服务端代码符合性评估(对照《Java 服务端开发标准》v1.4)
对 `tcm-training-admin-backend` 全量静态扫描(665 Java 文件 + 40 SQL + 27 XML + 30 测试),产出评估报告 `服务端开发标准符合性评估.md`。
**结论:整体不达标(23 条中 5 符合 / 11 部分 / 7 不符合)**
核心问题:
- P0:主键自增 222 处(IdType.AUTO,违反雪花ID要求);后台无权限注解(无 @SaCheckPermission/RBAC 细粒度);APP 端游客放行 + 资源归属校验仅 6 处(水平越权风险);无 is_deleted 逻辑删除
- P1:0 个枚举类 + 23 处魔法值;实体类零注释;方法零 Javadoc(635 文件仅 5 个含 @param)+ 0 处 STEP 注释;无 BusinessException + 无错误码分段;返回体用 ApiResponse(非 Result)+ 字段 msg/page 非标准
- P2:78/80 Service 无接口+impl 分离;无部署文档;无 jacoco;创建类接口无幂等 key
**合规亮点**:MVC 分层清晰(Controller 零越层调 Mapper)、防注入好(${} 仅 2 处别名、XSS 拦截器齐全)、线程池规范(ThreadPoolTaskExecutor 命名+有界队列)、SELECT * 0 处、utf8mb4/COMMENT/无外键/无存储过程达标。
评估方法:grep 正则 + 抽样读文件,未编译运行,运行期行为结论为代码模式推断。
## 增量分析:8月17日后改动的代码符合性
- 用 git 界定范围(e35351a..HEAD),mtime 因 8-31 构建被统一改写为 16:09 不可信。
- 后端 88 文件(80 Java + 4 XML + 3 SQL + 1 yml)。核心新功能:养生科普、项目介绍、直播密码房、省代理、应用版本更新、微赞直播入口。
- 结论:不达标。P0 鉴权(全局仅 checkLogin,无 RBAC;APP 游客放行);P1 主键自增(8实体 IdType.AUTO)、0枚举14魔法值、28处@Transactional无rollbackFor、8实体零注释。
- 亮点:DTO校验完善、SQL无外键/utf8mb4/COMMENT齐全、Mapper XML无注入/SELECT*、无System.out/new Thread。
- 产出:服务端开发标准符合性评估(8月17日后改动).md
## 详细整改报告(8月17日后改动)
- 深化分析,产出可落地整改方案。确认关键根因:未实现 StpInterface(Sa-Token 权限数据源),RbacService.getPermissionKeysByUserId 已存在但未接入 → @SaCheckPermission 无法生效。
- 确认 P0 越权漏洞:AppLiveRoomSettingController.createEntry(request.getUserId()),userId 来自请求体而非会话,可伪造他人直播间入口(泄露 tuid/手机号/头像)。
- 权限点命名规范:模块:实体:操作(system:account:view),新增模块需在 DataInitializer.ensureDefaultMenus 补菜单+权限点。
- 产出:服务端代码整改报告(8月17日后改动).md
## 重新扫描(最新代码 + v1.5 标准,9-01)
- 标准升级 v1.4→v1.5(2026-08-24 生效),唯一实质新增:第十条 SQL 禁项增加「循环内查库 N+1、JOIN≤5、大表全表查询」。
- 代码新增 fix0901 系列提交(hejianhao,9-01),范围 e35351a..540ef65 共 133 提交、后端 92 文件。
- 已修复:@SaCheckPermission 37 处 + StpInterfaceImpl + SaInterceptor 注解鉴权打通(RBAC 生效);新增 3 枚举(EnabledStatus/UserStatus/UserType)。
- 仍未修复:P0 越权(AppLiveRoomSettingController.createEntry 仍取 request.getUserId(),appAuthSessionService 已注入但注释掉,团队明示"APP 发版后改");P1 主键自增 52 实体+222 建表、事务 109 处无 rollbackFor、实体注释 7/8 缺类注释、枚举不合模板(无 Enum 后缀/desc/getByCode)、魔法值 76 处。
- v1.5 新增违规:ProvincialAgentAppService.saveRegions 双重 N+1(外层 for 调 resolveRegion + 内层 while 逐层 selectById 查父级 + 循环内 insert)。
- 产出:服务端代码符合性评估(最新代码+v1.5标准).md
## 最新代码分析(09-01 二轮,5个fix0901修复提交后)
- 范围 540ef65..06f69c0 新增5提交,后端18文件。范围总基线仍 e35351a..HEAD(138提交/93文件)。
- 已真修复:N+1(insertBatch批量+regionCache内存缓存,不再循环selectById);枚举重命名EnabledStatusEnum/UserStatusEnum/UserTypeEnum(Enum后缀+code/desc/getByCode,旧引用清零);改动文件内@Transactional补rollbackFor;方法Javadoc与STEP开始补;5/8实体补类注释。
- 仍未修复:P0越权(AppLiveRoomSettingController:37 createEntry(request.getUserId()),AppVzanLiveEntryService:53-54 appAuthSessionService已注入但注释,团队标"APP发版后改");P1主键自增52实体IdType.AUTO、0雪花。
- 残余:全局@Transactional 101处无rollbackFor、魔法值全局50处(改动文件内基本清理)、HealthPopularization/LiveCourse/ProjectIntroduction 3实体无类注释。
- 符合性:✅8/⚠️8/❌4(上轮✅6)。产出:服务端代码符合性评估(09-01最新代码).md
资料/20260806_prd.sql
New file
@@ -0,0 +1,569 @@
-- 2026-08-06 变更前数据备份
DROP TABLE IF EXISTS `tcm_live_course_2026_0806_back`;
CREATE TABLE `tcm_live_course_2026_0806_back` LIKE `tcm_live_course`;
INSERT INTO `tcm_live_course_2026_0806_back` SELECT * FROM `tcm_live_course`;
DROP TABLE IF EXISTS `tcm_clinic_2026_0806_back`;
CREATE TABLE `tcm_clinic_2026_0806_back` LIKE `tcm_clinic`;
INSERT INTO `tcm_clinic_2026_0806_back` SELECT * FROM `tcm_clinic`;
DROP TABLE IF EXISTS `tcm_health_popularization_2026_0806_back`;
CREATE TABLE `tcm_health_popularization_2026_0806_back` LIKE `tcm_health_popularization`;
INSERT INTO `tcm_health_popularization_2026_0806_back` SELECT * FROM `tcm_health_popularization`;
DROP TABLE IF EXISTS `sys_menu_2026_0806_back`;
CREATE TABLE `sys_menu_2026_0806_back` LIKE `sys_menu`;
INSERT INTO `sys_menu_2026_0806_back` SELECT * FROM `sys_menu`;
DROP TABLE IF EXISTS `sys_role_menu_2026_0806_back`;
CREATE TABLE `sys_role_menu_2026_0806_back` LIKE `sys_role_menu`;
INSERT INTO `sys_role_menu_2026_0806_back` SELECT * FROM `sys_role_menu`;
ALTER TABLE tcm_live_course
ADD COLUMN `password` VARCHAR(255) DEFAULT NULL COMMENT '直播间密码' AFTER `status`;
CREATE TABLE tcm_provincial_agent (
    id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '代理ID,主键,自增',
    agent_name VARCHAR(50) NOT NULL COMMENT '省区负责人姓名',
    province VARCHAR(20) NOT NULL COMMENT '负责省份名称(如:四川省)',
    bank_name VARCHAR(100) COMMENT '开户银行名称(如:中国建设银行)',
    account_number VARCHAR(30) COMMENT '银行账号',
    account_holder VARCHAR(50) COMMENT '账户名称/户名(即开户人姓名或公司名称)',
    branch_name VARCHAR(100) COMMENT '开户支行名称(如:成都高新支行)',
    contact_info VARCHAR(200) COMMENT '联系信息(可填电话、邮箱、手机号等)',
    status TINYINT NOT NULL DEFAULT 1 COMMENT '状态:1启用,0禁用,2注销',
    address VARCHAR(255) COMMENT '详细地址(如:成都市高新区天府大道XX号)',
    `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
) COMMENT='省代理人员信息表,存储代理的基本资料及银行账户信息';
CREATE TABLE tcm_agent_region (
    id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '记录ID,主键,自增',
    agent_id BIGINT NOT NULL COMMENT '关联省代理人员ID,外键指向 provincial_agent.id',
    region_code CHAR(6) NOT NULL COMMENT '6位行政区划编码(如:510101 表示成都市辖区)',
    region_name VARCHAR(100) COMMENT '区域名称(冗余字段,便于直接展示,如:成都市)',
    region_level TINYINT COMMENT '区域行政级别:1-省级,2-市级,3-区县级,4-乡镇级(可根据编码前缀判断)',
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
    UNIQUE KEY uk_agent_region (agent_id, region_code) COMMENT '联合唯一索引,防止同一代理重复添加同一区域'
) COMMENT='代理负责区域表,存储每个省代理所管辖的具体区域(一对多关系,一个代理可负责多个区域)';
-- 为 tcm_clinic 表新增代理关联字段
ALTER TABLE tcm_clinic
ADD COLUMN agent_id BIGINT COMMENT '负责该诊所的省代理ID,tcm_provincial_agent.id'
AFTER name;
-- 为 tcm_clinic 表新增银行信息字段(全部加在 status 字段后面)
ALTER TABLE tcm_clinic
ADD COLUMN bank_name VARCHAR(100) COMMENT '开户银行名称(如:中国建设银行)' AFTER status,
ADD COLUMN account_number VARCHAR(30) COMMENT '银行账号' AFTER bank_name,
ADD COLUMN account_holder VARCHAR(50) COMMENT '账户名称/户名(即开户人姓名或公司名称)' AFTER account_number,
ADD COLUMN branch_name VARCHAR(100) COMMENT '开户支行名称(如:成都高新支行)' AFTER account_holder;
-- 微赞直播间单例设置:仅保留 Banner 图片地址和直播间地址两个业务字段
CREATE TABLE IF NOT EXISTS tcm_live_room_setting (
    banner_image_url VARCHAR(500) NOT NULL COMMENT 'Banner图片地址',
    live_room_url VARCHAR(500) NULL COMMENT '直播间地址'
) COMMENT='微赞直播间设置';
-- ----------------------------
-- 项目介绍表
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_project_introduction` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `title` VARCHAR(128) NOT NULL COMMENT '标题',
  `cover_img` VARCHAR(512) DEFAULT NULL COMMENT '封面图',
  `category` VARCHAR(32) NOT NULL COMMENT '类别:platform(平台介绍)、mode(营销模式)、action(营销动作)',
  `content_type` TINYINT NOT NULL COMMENT '类型:1图文 2视频',
  `content` MEDIUMTEXT COMMENT '图文内容(富文本HTML)',
  `video_url` VARCHAR(512) DEFAULT NULL COMMENT '视频地址',
  `video_file_name` VARCHAR(255) DEFAULT NULL COMMENT '视频文件名',
  `video_description` VARCHAR(255) DEFAULT NULL COMMENT '视频介绍',
  `click_count` INT NOT NULL DEFAULT 0 COMMENT '点击量',
  `status` TINYINT 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_category` (`category`),
  KEY `idx_content_type` (`content_type`),
  KEY `idx_status` (`status`),
  KEY `idx_created_at` (`created_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='项目介绍表';
-- ----------------------------
-- 项目介绍密码配置表
-- ----------------------------
CREATE TABLE IF NOT EXISTS `tcm_project_introduction_password` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `password_enabled` TINYINT NOT NULL DEFAULT 0 COMMENT '是否启用密码访问:1启用 0不启用',
  `password` VARCHAR(255) DEFAULT NULL 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 INTO `tcm_project_introduction_password` (`id`, `password_enabled`, `password`, `created_at`, `updated_at`) VALUES (1, 0, NULL, '2026-08-20 13:12:52', '2026-08-21 15:21:01');
ALTER TABLE `tcm_health_popularization`
ADD COLUMN `video_description` VARCHAR(255) DEFAULT NULL COMMENT '视频介绍'
AFTER `video_file_name`;
/*
 Navicat Premium Dump SQL
 Source Server         : local
 Source Server Type    : MySQL
 Source Server Version : 80030 (8.0.30)
 Source Host           : localhost:3306
 Source Schema         : tcm_training_admin
 Target Server Type    : MySQL
 Target Server Version : 80030 (8.0.30)
 File Encoding         : 65001
 Date: 24/08/2026 15:04:16
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for sys_menu
-- ----------------------------
DROP TABLE IF EXISTS `sys_menu`;
CREATE TABLE `sys_menu`  (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `parent_id` bigint NOT NULL DEFAULT 0 COMMENT '父级ID,0表示根节点',
  `name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '权限/菜单名称',
  `menu_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '菜单编码',
  `type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '类型:M模块 C菜单 B按钮',
  `path` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '路由路径',
  `component` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '前端组件',
  `icon` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '图标',
  `sort` int NOT NULL DEFAULT 0 COMMENT '排序值',
  `status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:1启用 0禁用',
  `visible` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否显示:1显示 0隐藏',
  `permission_key` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '权限标识',
  `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
  `deleted` tinyint(1) NOT NULL DEFAULT 0,
  `created_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '系统初始化' COMMENT '创建人',
  `updated_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci 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`) USING BTREE,
  UNIQUE INDEX `uk_sys_menu_code`(`menu_code` ASC) USING BTREE,
  INDEX `idx_sys_menu_parent_id`(`parent_id` ASC) USING BTREE,
  INDEX `idx_sys_menu_type`(`type` ASC) USING BTREE,
  INDEX `idx_sys_menu_status`(`status` ASC) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 6114 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '后台菜单与权限表' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of sys_menu
-- ----------------------------
INSERT INTO `sys_menu` VALUES (1000, 0, '系统与安全', 'system_security', 'M', '/system', NULL, 'setting', 100, 1, 1, NULL, '系统与安全模块', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1100, 1000, '帐号管理', 'system_account', 'C', '/system/account', 'Account/UserList', NULL, 10, 1, 1, 'system:account:view', '帐号管理菜单', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1101, 1100, '新增帐号', 'system_account_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:account:add', '帐号新增按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1102, 1100, '编辑帐号', 'system_account_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:account:edit', '帐号编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1103, 1100, '启用禁用', 'system_account_status', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:account:status', '帐号状态按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1104, 1100, '重置密码', 'system_account_reset_password', 'B', NULL, NULL, NULL, 4, 1, 1, 'system:account:reset-password', '重置密码按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1105, 1100, '删除帐号', 'system_account_delete', 'B', NULL, NULL, NULL, 5, 1, 1, 'system:account:delete', '删除帐号按钮', 0, '系统初始化', '系统初始化', '2026-03-19 14:48:43', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1200, 1000, '角色管理', 'system_role', 'C', '/system/role', 'Account/RoleList', NULL, 20, 1, 1, 'system:role:view', '角色管理菜单', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1201, 1200, '角色详情', 'system_role_detail', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:role:detail', '角色详情按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1202, 1200, '新增角色', 'system_role_add', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:role:add', '角色新增按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1203, 1200, '编辑角色', 'system_role_edit', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:role:edit', '角色编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1204, 1200, '删除角色', 'system_role_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'system:role:delete', '角色删除按钮', 0, '系统初始化', '系统初始化', '2026-03-19 06:33:33', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1300, 1000, '系统设置', 'system_setting_group', 'M', '/system/settings', NULL, NULL, 30, 1, 1, NULL, '系统设置目录', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1305, 1300, '系统设置', 'system_basic_settings', 'C', '/system/settings/basic', 'System/BasicSettings', NULL, 5, 1, 1, 'system:basic-settings:view', '系统设置菜单', 0, '系统初始化', '系统初始化', '2026-03-26 15:34:59', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1306, 1305, '编辑系统设置', 'system_basic_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:basic-settings:edit', '系统设置编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-26 15:34:59', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1307, 1300, 'APP版本设置', 'system_app_version_settings', 'C', '/system/settings/app-version', 'System/AppVersionSettings', NULL, 15, 1, 1, 'system:app-version:view', 'APP版本设置菜单', 0, '系统初始化', '系统初始化', '2026-03-26 08:13:45', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1308, 1307, '新增APP版本', 'system_app_version_settings_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:app-version:add', '新增APP版本按钮', 0, '系统初始化', '系统初始化', '2026-03-26 08:13:45', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1309, 1307, '查看APP版本', 'system_app_version_settings_detail', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:app-version:detail', '查看APP版本按钮', 0, '系统初始化', '系统初始化', '2026-03-26 08:13:45', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1310, 1300, '积分设置', 'system_points_settings', 'C', '/system/settings/points', 'System/PointsSettings', NULL, 10, 1, 1, 'system:points-settings:view', '积分设置菜单', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1311, 1310, '编辑积分设置', 'system_points_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:points-settings:edit', '积分设置编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1312, 1300, '消息推送配置', 'system_message_push_settings', 'C', '/system/settings/message-push', 'System/MessagePushSettings', NULL, 20, 1, 1, 'system:message-push:view', '消息推送配置菜单', 0, '系统初始化', '系统初始化', '2026-03-26 08:51:05', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1313, 1312, '编辑消息推送配置', 'system_message_push_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:message-push:edit', '消息推送配置编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-26 08:51:05', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1314, 1300, 'Banner配置', 'system_banner_settings', 'C', '/system/settings/banner', 'System/BannerSettings', NULL, 12, 1, 1, 'system:banner:view', 'Banner配置菜单', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1315, 1314, '新增Banner', 'system_banner_settings_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:banner:add', 'Banner新增按钮', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1316, 1314, '编辑Banner', 'system_banner_settings_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:banner:edit', 'Banner编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1317, 1314, '查看Banner', 'system_banner_settings_detail', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:banner:detail', 'Banner查看按钮', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1318, 1314, '删除Banner', 'system_banner_settings_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'system:banner:delete', 'Banner删除按钮', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:04');
INSERT INTO `sys_menu` VALUES (1319, 1314, '批量删除Banner', 'system_banner_settings_batch_delete', 'B', NULL, NULL, NULL, 5, 1, 1, 'system:banner:batch-delete', 'Banner批量删除按钮', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1320, 1314, '切换Banner上架状态', 'system_banner_settings_publish_status', 'B', NULL, NULL, NULL, 6, 1, 1, 'system:banner:publish-status', 'Banner上架状态按钮', 0, '系统初始化', '系统初始化', '2026-03-26 09:28:36', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1321, 1300, '活动通知', 'system_activity_notice', 'C', '/system/settings/activity-notice', 'System/ActivityNotice', NULL, 13, 1, 1, 'system:activity-notice:view', '活动通知菜单', 0, '系统初始化', '系统初始化', '2026-03-26 10:07:49', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1322, 1321, '新增活动通知', 'system_activity_notice_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:activity-notice:add', '活动通知新增按钮', 0, '系统初始化', '系统初始化', '2026-03-26 10:07:49', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1323, 1321, '删除活动通知', 'system_activity_notice_delete', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:activity-notice:delete', '活动通知删除按钮', 0, '系统初始化', '系统初始化', '2026-03-26 10:07:49', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1324, 1300, '平台资质', 'system_platform_qualification', 'C', '/system/settings/platform-qualification', 'System/PlatformQualification', NULL, 14, 1, 1, 'system:platform-qualification:view', '平台资质菜单', 0, '系统初始化', '系统初始化', '2026-03-26 11:29:12', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1325, 1324, '新增平台资质', 'system_platform_qualification_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:platform-qualification:add', '平台资质新增按钮', 0, '系统初始化', '系统初始化', '2026-03-26 11:29:12', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1326, 1324, '查看平台资质', 'system_platform_qualification_detail', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:platform-qualification:detail', '平台资质详情按钮', 0, '系统初始化', '系统初始化', '2026-03-26 11:29:12', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1327, 1324, '编辑平台资质', 'system_platform_qualification_edit', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:platform-qualification:edit', '平台资质编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-26 11:29:12', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1328, 1324, '删除平台资质', 'system_platform_qualification_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'system:platform-qualification:delete', '平台资质删除按钮', 0, '系统初始化', '系统初始化', '2026-03-26 11:29:12', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1329, 1324, '切换平台资质上架状态', 'system_platform_qualification_publish_status', 'B', NULL, NULL, NULL, 5, 1, 1, 'system:platform-qualification:publish-status', '平台资质上架状态按钮', 0, '系统初始化', '系统初始化', '2026-03-26 11:29:12', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1330, 1300, '协议内容', 'system_agreement_content', 'C', '/system/settings/agreement-content', 'System/AgreementContent', NULL, 16, 1, 1, 'system:agreement-content:view', '协议内容菜单', 0, '系统初始化', '系统初始化', '2026-03-26 11:58:15', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1331, 1330, '编辑协议内容', 'system_agreement_content_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:agreement-content:edit', '协议内容编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-26 11:58:15', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1332, 1300, '常见问题', 'system_common_question', 'C', '/system/settings/common-question', 'System/CommonQuestion', NULL, 17, 1, 1, 'system:common-question:view', '常见问题菜单', 0, '系统初始化', '系统初始化', '2026-03-26 12:25:39', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1333, 1332, '新增常见问题', 'system_common_question_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'system:common-question:add', '常见问题新增按钮', 0, '系统初始化', '系统初始化', '2026-03-26 12:25:39', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1334, 1332, '编辑常见问题', 'system_common_question_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'system:common-question:edit', '常见问题编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-26 12:25:39', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1335, 1332, '删除常见问题', 'system_common_question_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'system:common-question:delete', '常见问题删除按钮', 0, '系统初始化', '系统初始化', '2026-03-26 12:25:39', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (1336, 1300, '用户意见反馈', 'system_user_feedback', 'C', '/system/settings/user-feedback', 'System/UserFeedback', NULL, 18, 1, 1, 'system:user-feedback:view', '用户意见反馈菜单', 0, '系统初始化', '系统初始化', '2026-03-26 12:43:32', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2000, 0, '用户与会员', 'member_root', 'M', '/member', NULL, 'team', 200, 1, 1, NULL, '用户与会员模块', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2100, 2000, '用户', 'member_user_group', 'M', '/member/user', NULL, NULL, 10, 1, 1, NULL, '用户分组菜单', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2110, 2100, '用户管理', 'member_user_manage', 'C', '/member/user/manage', 'Member/UserList', NULL, 10, 1, 1, 'member:user:view', '用户管理菜单', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2111, 2110, '用户详情', 'member_user_detail', 'B', NULL, NULL, NULL, 1, 1, 1, 'member:user:detail', '用户详情按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2112, 2110, '编辑用户', 'member_user_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'member:user:edit', '编辑用户按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2113, 2110, '启用禁用用户', 'member_user_status', 'B', NULL, NULL, NULL, 3, 1, 1, 'member:user:status', '启用禁用用户按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2114, 2110, '重置用户密码', 'member_user_reset_password', 'B', NULL, NULL, NULL, 4, 1, 1, 'member:user:reset-password', '重置用户密码按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2115, 2110, '删除用户', 'member_user_delete', 'B', NULL, NULL, NULL, 5, 1, 1, 'member:user:delete', '删除用户按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2116, 2110, '导出用户', 'member_user_export', 'B', NULL, NULL, NULL, 6, 1, 1, 'member:user:export', '导出用户按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2117, 2110, '解绑微信', 'member_user_unbind_wechat', 'B', NULL, NULL, NULL, 7, 1, 1, 'member:user:unbind-wechat', '解绑微信按钮', 0, '系统初始化', '系统初始化', '2026-03-20 06:36:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2118, 2100, '诊所管理', 'member_clinic_manage', 'C', '/member/user/clinic', 'Member/ClinicList', NULL, 11, 1, 1, 'member:clinic:view', '诊所管理菜单', 0, '系统初始化', '系统初始化', '2026-03-23 19:49:56', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2119, 2100, '会员用户', 'member_only_user_manage', 'C', '/member/user/member-users', 'Member/MemberUserList', NULL, 12, 1, 1, 'member:user:member:view', '会员用户菜单', 0, '系统初始化', '系统初始化', '2026-03-23 22:00:08', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2200, 2000, '会员', 'member_vip_group', 'M', '/member/vip', NULL, NULL, 20, 1, 1, NULL, '会员分组菜单', 0, '系统初始化', '系统初始化', '2026-03-23 22:00:08', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2210, 2200, '会员价格设置', 'member_vip_price_settings', 'C', '/member/vip/price', 'Member/VipPriceSettings', NULL, 10, 1, 1, 'member:vip-price:view', '会员价格设置菜单', 0, '系统初始化', '系统初始化', '2026-03-23 22:00:08', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2211, 2210, '编辑会员价格设置', 'member_vip_price_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'member:vip-price:edit', '会员价格设置编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-23 22:00:08', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2220, 2200, '会员介绍设置', 'member_vip_intro_settings', 'C', '/member/vip/intro', 'Member/VipIntroSettings', NULL, 20, 1, 1, 'member:vip-intro:view', '会员介绍设置菜单', 0, '系统初始化', '系统初始化', '2026-03-23 22:00:08', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (2221, 2220, '编辑会员介绍设置', 'member_vip_intro_settings_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'member:vip-intro:edit', '会员介绍设置编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-23 22:00:08', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3000, 0, '课程与学习', 'live_root', 'M', '/live', NULL, 'read', 300, 1, 1, NULL, '课程与学习模块', 0, '系统初始化', '系统初始化', '2026-03-20 08:03:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3050, 3000, '课程管理', 'live_course_manage_root', 'M', '/live/course', NULL, NULL, 10, 1, 1, NULL, '课程管理目录', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3060, 3050, '养生直播', 'live_course_broadcast_manage', 'C', '/live/course/broadcast', 'Live/BroadcastList', NULL, 10, 1, 1, 'live:course:view', '养生直播菜单', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3061, 3060, '直播详情', 'live_course_detail', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:course:detail', '养生直播详情按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3062, 3060, '编辑直播', 'live_course_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:course:edit', '养生直播编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3063, 3060, '启用禁用直播', 'live_course_status', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:course:status', '养生直播状态按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3064, 3060, '设置直播间密码', 'live_course_password', 'B', NULL, NULL, NULL, 4, 1, 1, 'live:course:password', '设置直播间密码按钮', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3070, 3060, '场次管理', 'live_session_manage', 'B', NULL, NULL, NULL, 10, 1, 1, 'live:session:detail', '直播场次管理权限', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3071, 3060, '新增场次', 'live_session_add', 'B', NULL, NULL, NULL, 11, 1, 1, 'live:session:add', '直播场次新增按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3072, 3060, '编辑场次', 'live_session_edit', 'B', NULL, NULL, NULL, 12, 1, 1, 'live:session:edit', '直播场次编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3073, 3060, '开播场次', 'live_session_start', 'B', NULL, NULL, NULL, 13, 1, 1, 'live:session:start', '直播场次开播按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3074, 3060, '结束场次', 'live_session_end', 'B', NULL, NULL, NULL, 14, 1, 1, 'live:session:end', '直播场次结束按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3075, 3060, '复制场次', 'live_session_copy', 'B', NULL, NULL, NULL, 15, 1, 1, 'live:session:copy', '直播场次复制按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3076, 3060, '删除场次', 'live_session_delete', 'B', NULL, NULL, NULL, 16, 1, 1, 'live:session:delete', '直播场次删除按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3077, 3060, '推送开播提醒', 'live_session_push_notification', 'B', NULL, NULL, NULL, 17, 1, 1, 'live:session:push-notification', '直播场次推送提醒按钮', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3080, 3050, '直播预约记录', 'live_reserve_view', 'C', '/live/course/reserve-records', 'Live/ReserveRecords', NULL, 20, 1, 1, 'live:reserve:view', '直播预约记录菜单', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3081, 3050, '直播观看记录', 'live_watch_view', 'C', '/live/course/watch-records', 'Live/WatchRecords', NULL, 21, 1, 1, 'live:watch:view', '直播观看记录菜单', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3082, 3060, '答题记录', 'live_quiz_view', 'B', NULL, NULL, NULL, 22, 1, 1, 'live:quiz:view', '直播答题记录查看权限', 0, '系统初始化', '系统初始化', '2026-03-20 09:58:00', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3090, 3050, '分类管理', 'live_category_manage', 'C', '/live/course/category', 'Live/CategoryList', NULL, 22, 1, 1, 'live:category:view', '分类管理菜单', 0, '系统初始化', '系统初始化', '2026-03-24 10:59:54', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3091, 3090, '新增分类', 'live_category_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:category:add', '分类新增按钮', 0, '系统初始化', '系统初始化', '2026-03-24 10:59:54', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3092, 3090, '编辑分类', 'live_category_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:category:edit', '分类编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-24 10:59:54', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3093, 3090, '删除分类', 'live_category_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:category:delete', '分类删除按钮', 0, '系统初始化', '系统初始化', '2026-03-24 10:59:54', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3100, 3050, '授课专家管理', 'live_expert_manage', 'C', '/live/course/expert', 'Live/ExpertList', NULL, 30, 1, 1, 'live:expert:view', '授课专家管理菜单', 0, '系统初始化', '系统初始化', '2026-03-20 08:03:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3101, 3100, '新增授课专家', 'live_expert_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:expert:add', '授课专家新增按钮', 0, '系统初始化', '系统初始化', '2026-03-20 08:03:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3102, 3100, '编辑授课专家', 'live_expert_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:expert:edit', '授课专家编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-20 08:03:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3103, 3100, '启用禁用授课专家', 'live_expert_status', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:expert:status', '授课专家状态按钮', 0, '系统初始化', '系统初始化', '2026-03-20 08:03:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3104, 3100, '删除授课专家', 'live_expert_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'live:expert:delete', '授课专家删除按钮', 0, '系统初始化', '系统初始化', '2026-03-20 08:03:03', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3110, 3050, '养生课程', 'live_health_course_manage', 'C', '/live/course/health', 'Live/HealthCourseList', NULL, 40, 1, 1, 'live:health-course:view', '养生课程菜单', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3111, 3110, '养生课程详情', 'live_health_course_detail', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:health-course:detail', '养生课程详情按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3112, 3110, '新增养生课程', 'live_health_course_add', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:health-course:add', '养生课程新增按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3113, 3110, '编辑养生课程', 'live_health_course_edit', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:health-course:edit', '养生课程编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3114, 3110, '删除养生课程', 'live_health_course_delete', 'B', NULL, NULL, NULL, 4, 1, 1, 'live:health-course:delete', '养生课程删除按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (3115, 3110, '启用禁用养生课程', 'live_health_course_status', 'B', NULL, NULL, NULL, 5, 1, 1, 'live:health-course:status', '养生课程状态按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3116, 3110, '导出养生课程', 'live_health_course_export', 'B', NULL, NULL, NULL, 6, 1, 1, 'live:health-course:export', '养生课程导出按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3117, 3110, '新增视频课程', 'live_health_course_video_add', 'B', NULL, NULL, NULL, 7, 1, 1, 'live:health-course:video:add', '养生课程视频新增按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3118, 3110, '编辑视频课程', 'live_health_course_video_edit', 'B', NULL, NULL, NULL, 8, 1, 1, 'live:health-course:video:edit', '养生课程视频编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3119, 3110, '删除视频课程', 'live_health_course_video_delete', 'B', NULL, NULL, NULL, 9, 1, 1, 'live:health-course:video:delete', '养生课程视频删除按钮', 0, '系统初始化', '系统初始化', '2026-03-24 05:50:17', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3120, 6100, '健康知识', 'live_health_popularization_manage', 'C', '/live/promotion/health-popularization', 'Live/HealthPopularizationList', NULL, 50, 1, 1, 'live:health-popularization:view', '健康知识菜单', 0, '系统初始化', '系统初始化', '2026-03-25 13:30:33', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3121, 3120, '新增健康知识', 'live_health_popularization_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:health-popularization:add', '健康知识新增按钮', 0, '系统初始化', '系统初始化', '2026-03-25 13:30:33', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3122, 3120, '编辑健康知识', 'live_health_popularization_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:health-popularization:edit', '健康知识编辑按钮', 0, '系统初始化', '系统初始化', '2026-03-25 13:30:33', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (3123, 3120, '删除健康知识', 'live_health_popularization_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:health-popularization:delete', '健康知识删除按钮', 0, '系统初始化', '系统初始化', '2026-03-25 13:30:33', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4000, 0, '交易与财务', 'trade_root', 'M', '/trade', NULL, 'moneyCollect', 400, 1, 1, NULL, '交易与财务模块', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4100, 4000, '订单', 'trade_order_group', 'M', '/trade/order', NULL, NULL, 10, 1, 1, NULL, '订单目录', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4110, 4100, '积分兑换', 'trade_points_exchange', 'C', '/trade/order/points-exchange', 'Trade/PointsExchange', NULL, 10, 1, 1, 'points:exchange:view', '积分兑换菜单', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4111, 4110, '兑换详情', 'trade_points_exchange_detail', 'B', NULL, NULL, NULL, 1, 1, 1, 'points:exchange:detail', '积分兑换详情按钮', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4112, 4110, '积分兑换发货', 'trade_points_exchange_ship', 'B', NULL, NULL, NULL, 2, 1, 1, 'points:exchange:ship', '积分兑换发货按钮', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4113, 4110, '积分兑换删除', 'trade_points_exchange_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'points:exchange:delete', '积分兑换删除按钮', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4114, 4110, '积分兑换导出', 'trade_points_exchange_export', 'B', NULL, NULL, NULL, 4, 1, 1, 'points:exchange:export', '积分兑换导出按钮', 0, '系统初始化', '系统初始化', '2026-03-21 08:07:45', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4120, 4100, '会员购买订单', 'trade_member_purchase_order', 'C', '/trade/order/member-purchase', 'Trade/MemberPurchase', NULL, 9, 1, 1, 'member:purchase-order:view', '会员购买订单菜单', 0, '系统初始化', '系统初始化', '2026-03-25 14:59:13', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4121, 4120, '导出会员购买订单', 'trade_member_purchase_order_export', 'B', NULL, NULL, NULL, 1, 1, 1, 'member:purchase-order:export', '会员购买订单导出按钮', 0, '系统初始化', '系统初始化', '2026-03-25 14:59:13', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4122, 4120, '退款会员购买订单', 'trade_member_purchase_order_refund', 'B', NULL, NULL, NULL, 2, 1, 1, 'member:purchase-order:refund', '会员购买订单退款按钮', 0, '系统初始化', '系统初始化', '2026-03-25 14:59:13', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4123, 4120, '删除会员购买订单', 'trade_member_purchase_order_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'member:purchase-order:delete', '会员购买订单删除按钮', 0, '系统初始化', '系统初始化', '2026-03-25 14:59:13', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4130, 4100, '养生课程购买订单', 'trade_health_course_purchase_order', 'C', '/trade/order/course-purchase', 'Trade/CoursePurchase', NULL, 8, 1, 1, 'course:purchase-order:view', '养生课程购买订单菜单', 0, '系统初始化', '系统初始化', '2026-03-25 16:18:55', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4131, 4130, '导出养生课程购买订单', 'trade_health_course_purchase_order_export', 'B', NULL, NULL, NULL, 1, 1, 1, 'course:purchase-order:export', '养生课程购买订单导出按钮', 0, '系统初始化', '系统初始化', '2026-03-25 16:18:55', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4132, 4130, '退款养生课程购买订单', 'trade_health_course_purchase_order_refund', 'B', NULL, NULL, NULL, 2, 1, 1, 'course:purchase-order:refund', '养生课程购买订单退款按钮', 0, '系统初始化', '系统初始化', '2026-03-25 16:18:55', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4133, 4130, '删除养生课程购买订单', 'trade_health_course_purchase_order_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'course:purchase-order:delete', '养生课程购买订单删除按钮', 0, '系统初始化', '系统初始化', '2026-03-25 16:18:55', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4200, 4000, '财务流水', 'trade_finance_flow_group', 'M', '/trade/flow', NULL, NULL, 20, 1, 1, NULL, '财务流水目录', 0, '系统初始化', '系统初始化', '2026-03-21 09:30:56', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4210, 4200, '积分收支明细', 'trade_points_ledger', 'C', '/trade/flow/points-ledger', 'Trade/PointsLedger', NULL, 30, 1, 1, 'points:ledger:view', '积分收支明细菜单', 0, '系统初始化', '系统初始化', '2026-03-21 09:30:56', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4211, 4210, '导出积分收支明细', 'trade_points_ledger_export', 'B', NULL, NULL, NULL, 1, 1, 1, 'points:ledger:export', '积分收支明细导出按钮', 0, '系统初始化', '系统初始化', '2026-03-21 09:30:56', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4220, 4200, '支付流水', 'trade_payment_flow', 'C', '/trade/flow/payment-flow', 'Trade/PaymentFlow', NULL, 10, 1, 1, 'payment:flow:view', '支付流水菜单', 0, '系统初始化', '系统初始化', '2026-03-25 09:40:43', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4221, 4220, '导出支付流水', 'trade_payment_flow_export', 'B', NULL, NULL, NULL, 1, 1, 1, 'payment:flow:export', '支付流水导出按钮', 0, '系统初始化', '系统初始化', '2026-03-25 09:40:43', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4230, 4200, '退费流水', 'trade_refund_flow', 'C', '/trade/flow/refund-flow', 'Trade/RefundFlow', NULL, 20, 1, 1, 'refund:flow:view', '退费流水菜单', 0, '系统初始化', '系统初始化', '2026-03-25 20:51:18', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (4231, 4230, '导出退费流水', 'trade_refund_flow_export', 'B', NULL, NULL, NULL, 1, 1, 1, 'refund:flow:export', '退费流水导出按钮', 0, '系统初始化', '系统初始化', '2026-03-25 20:51:18', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (5000, 0, '统计', 'statistics_root', 'M', '/statistics', NULL, 'barChart', 150, 1, 1, NULL, '统计模块', 0, '系统初始化', '系统初始化', '2026-03-26 21:07:19', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5010, 5000, '用户数据', 'statistics_user_data', 'C', '/statistics/user-data', 'Statistics/UserData', NULL, 10, 1, 1, 'statistics:user-data:view', '用户数据菜单', 0, '系统初始化', '系统初始化', '2026-03-26 13:56:30', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5020, 5000, '内容数据', 'statistics_content_data', 'C', '/statistics/content-data', 'Statistics/ContentData', NULL, 20, 1, 1, 'statistics:content-data:view', '内容数据菜单', 0, '系统初始化', '系统初始化', '2026-03-26 23:06:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5030, 5000, '营收数据', 'statistics_revenue', 'C', '/statistics/revenue', 'Statistics/Revenue', NULL, 30, 1, 1, 'statistics:revenue:view', '营收数据菜单', 0, '系统初始化', '系统初始化', '2026-03-26 21:07:19', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5031, 5030, '导出营收报表', 'statistics_revenue_export', 'B', NULL, NULL, NULL, 1, 1, 1, 'statistics:revenue:export', '营收数据导出按钮', 0, '系统初始化', '系统初始化', '2026-03-26 21:07:19', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5045, 2118, '编辑', 'member_clinic_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'member:clinic:edit', '编辑诊所按钮', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:30', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5046, 2100, '省代理管理', 'member_agent_manage', 'C', '/member/user/agent', 'Member/AgentList', NULL, 12, 1, 1, 'member:agent:view', '省代理管理菜单', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5047, 5046, '新增省代理', 'member_agent_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'member:agent:add', '新增省代理按钮', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5048, 5046, '编辑省代理', 'member_agent_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'member:agent:edit', '编辑省代理按钮', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5049, 5046, '删除省代理', 'member_agent_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'member:agent:delete', '删除省代理按钮', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (5050, 5046, '省代理详情', 'member_agent_detail', 'B', NULL, NULL, NULL, 4, 1, 1, 'member:agent:detail', '省代理详情按钮', 0, '系统初始化', '系统初始化', '2026-08-19 10:27:29', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (6000, 3050, '微赞直播间设置', 'live_room_setting', 'C', '/live/course/live-room-setting', 'Live/LiveRoomSetting', NULL, 18, 1, 1, 'live:room-setting:view', '微赞直播间设置菜单', 0, '系统初始化', '系统初始化', '2026-08-19 16:22:09', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (6001, 6000, '编辑微赞直播间设置', 'live_room_setting_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:room-setting:edit', '微赞直播间设置编辑按钮', 0, '系统初始化', '系统初始化', '2026-08-19 16:22:09', '2026-08-24 10:14:05');
INSERT INTO `sys_menu` VALUES (6010, 6100, '项目介绍', 'live_project_introduction_manage', 'C', '/live/promotion/project-introduction', 'Live/ProjectIntroductionList', NULL, 60, 1, 1, 'live:project-introduction:view', '项目介绍菜单', 0, '系统初始化', '系统初始化', '2026-08-20 12:10:14', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6011, 6010, '新增项目介绍', 'live_project_introduction_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:project-introduction:add', '项目介绍新增按钮', 0, '系统初始化', '系统初始化', '2026-08-20 12:10:14', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6012, 6010, '编辑项目介绍', 'live_project_introduction_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:project-introduction:edit', '项目介绍编辑按钮', 0, '系统初始化', '系统初始化', '2026-08-20 12:10:14', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6013, 6010, '删除项目介绍', 'live_project_introduction_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:project-introduction:delete', '项目介绍删除按钮', 0, '系统初始化', '系统初始化', '2026-08-20 12:10:14', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6014, 6100, '项目介绍密码', 'live_project_introduction_password', 'C', '/live/promotion/project-introduction-password', 'Live/ProjectIntroductionPassword', NULL, 61, 1, 1, 'live:project-introduction-password:view', '项目介绍密码菜单', 0, '系统初始化', '系统初始化', '2026-08-20 13:05:55', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6015, 6014, '编辑项目介绍密码', 'live_project_introduction_password_edit', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:project-introduction-password:edit', '项目介绍密码编辑按钮', 0, '系统初始化', '系统初始化', '2026-08-20 13:05:55', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6100, 3000, '宣传知识', 'live_promotion_root', 'M', '/live/promotion', NULL, NULL, 20, 1, 1, NULL, '宣传知识目录', 0, '系统初始化', '系统初始化', '2026-08-22 11:09:24', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6110, 6100, '养生科普', 'live_health_promotion_manage', 'C', '/live/promotion/health-promotion', 'Live/HealthPromotionList', NULL, 51, 1, 1, 'live:health-promotion:view', '养生科普菜单', 0, '系统初始化', '系统初始化', '2026-08-22 12:12:19', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6111, 6110, '新增养生科普', 'live_health_promotion_add', 'B', NULL, NULL, NULL, 1, 1, 1, 'live:health-promotion:add', '养生科普新增按钮', 0, '系统初始化', '系统初始化', '2026-08-22 12:12:19', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6112, 6110, '编辑养生科普', 'live_health_promotion_edit', 'B', NULL, NULL, NULL, 2, 1, 1, 'live:health-promotion:edit', '养生科普编辑按钮', 0, '系统初始化', '系统初始化', '2026-08-22 12:12:19', '2026-08-24 10:14:06');
INSERT INTO `sys_menu` VALUES (6113, 6110, '删除养生科普', 'live_health_promotion_delete', 'B', NULL, NULL, NULL, 3, 1, 1, 'live:health-promotion:delete', '养生科普删除按钮', 0, '系统初始化', '系统初始化', '2026-08-22 12:12:19', '2026-08-24 10:14:06');
-- ----------------------------
-- Table structure for sys_role_menu
-- ----------------------------
DROP TABLE IF EXISTS `sys_role_menu`;
CREATE TABLE `sys_role_menu`  (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `role_id` bigint NOT NULL COMMENT '角色ID',
  `menu_id` bigint NOT NULL COMMENT '菜单/权限ID',
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE INDEX `uk_sys_role_menu`(`role_id` ASC, `menu_id` ASC) USING BTREE,
  INDEX `idx_sys_role_menu_menu_id`(`menu_id` ASC) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2429 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '角色菜单权限关联表' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of sys_role_menu
-- ----------------------------
INSERT INTO `sys_role_menu` VALUES (35, 2, 1000, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (36, 2, 1100, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (37, 2, 1101, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (38, 2, 1102, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (39, 2, 1103, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (40, 2, 1104, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (41, 2, 1105, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (42, 2, 1200, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (43, 2, 1201, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (44, 2, 1202, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (45, 2, 1203, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (46, 2, 1204, '2026-03-19 15:15:13');
INSERT INTO `sys_role_menu` VALUES (66, 1, 1100, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (67, 1, 1101, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (68, 1, 1102, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (69, 1, 1103, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (70, 1, 1104, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (71, 1, 1105, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (72, 1, 1200, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (73, 1, 1201, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (74, 1, 1202, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (75, 1, 1203, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (76, 1, 1204, '2026-03-19 15:47:23');
INSERT INTO `sys_role_menu` VALUES (89, 1, 1000, '2026-03-19 16:13:15');
INSERT INTO `sys_role_menu` VALUES (90, 4, 1100, '2026-03-19 16:41:05');
INSERT INTO `sys_role_menu` VALUES (91, 4, 1101, '2026-03-19 16:41:05');
INSERT INTO `sys_role_menu` VALUES (92, 4, 1102, '2026-03-19 16:41:05');
INSERT INTO `sys_role_menu` VALUES (93, 4, 1103, '2026-03-19 16:41:05');
INSERT INTO `sys_role_menu` VALUES (94, 4, 1104, '2026-03-19 16:41:05');
INSERT INTO `sys_role_menu` VALUES (95, 4, 1105, '2026-03-19 16:41:05');
INSERT INTO `sys_role_menu` VALUES (108, 1, 2000, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (109, 1, 2100, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (110, 1, 2110, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (111, 1, 2111, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (112, 1, 2112, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (113, 1, 2113, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (114, 1, 2114, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (115, 1, 2115, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (116, 1, 2116, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (117, 1, 2117, '2026-03-20 06:36:03');
INSERT INTO `sys_role_menu` VALUES (240, 1, 3000, '2026-03-20 08:03:03');
INSERT INTO `sys_role_menu` VALUES (241, 1, 3100, '2026-03-20 08:03:03');
INSERT INTO `sys_role_menu` VALUES (242, 1, 3101, '2026-03-20 08:03:03');
INSERT INTO `sys_role_menu` VALUES (243, 1, 3102, '2026-03-20 08:03:03');
INSERT INTO `sys_role_menu` VALUES (244, 1, 3103, '2026-03-20 08:03:03');
INSERT INTO `sys_role_menu` VALUES (245, 1, 3104, '2026-03-20 08:03:03');
INSERT INTO `sys_role_menu` VALUES (268, 1, 3050, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (269, 1, 3060, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (270, 1, 3061, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (271, 1, 3062, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (272, 1, 3063, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (273, 1, 3070, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (274, 1, 3071, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (275, 1, 3072, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (276, 1, 3073, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (277, 1, 3074, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (278, 1, 3075, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (279, 1, 3076, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (280, 1, 3077, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (281, 1, 3080, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (282, 1, 3081, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (283, 1, 3082, '2026-03-20 09:58:00');
INSERT INTO `sys_role_menu` VALUES (358, 4, 1300, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (359, 2, 1300, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (360, 1, 1300, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (361, 4, 1310, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (362, 2, 1310, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (363, 1, 1310, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (364, 4, 1311, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (365, 2, 1311, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (366, 1, 1311, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (367, 4, 4000, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (368, 2, 4000, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (369, 1, 4000, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (370, 4, 4100, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (371, 2, 4100, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (372, 1, 4100, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (373, 4, 4110, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (374, 2, 4110, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (375, 1, 4110, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (376, 4, 4111, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (377, 2, 4111, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (378, 1, 4111, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (379, 4, 4112, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (380, 2, 4112, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (381, 1, 4112, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (382, 4, 4113, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (383, 2, 4113, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (384, 1, 4113, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (385, 4, 4114, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (386, 2, 4114, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (387, 1, 4114, '2026-03-21 08:07:45');
INSERT INTO `sys_role_menu` VALUES (433, 4, 4200, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (434, 2, 4200, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (435, 1, 4200, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (436, 4, 4210, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (437, 2, 4210, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (438, 1, 4210, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (439, 4, 4211, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (440, 2, 4211, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (441, 1, 4211, '2026-03-21 09:30:56');
INSERT INTO `sys_role_menu` VALUES (451, 1, 2118, '2026-03-23 19:49:56');
INSERT INTO `sys_role_menu` VALUES (452, 1, 2119, '2026-03-23 22:00:08');
INSERT INTO `sys_role_menu` VALUES (453, 1, 2200, '2026-03-23 22:00:08');
INSERT INTO `sys_role_menu` VALUES (454, 1, 2210, '2026-03-23 22:00:08');
INSERT INTO `sys_role_menu` VALUES (455, 1, 2211, '2026-03-23 22:00:08');
INSERT INTO `sys_role_menu` VALUES (456, 1, 2220, '2026-03-23 22:00:08');
INSERT INTO `sys_role_menu` VALUES (457, 1, 2221, '2026-03-23 22:00:08');
INSERT INTO `sys_role_menu` VALUES (458, 1, 3090, '2026-03-24 10:59:54');
INSERT INTO `sys_role_menu` VALUES (459, 1, 3091, '2026-03-24 10:59:54');
INSERT INTO `sys_role_menu` VALUES (460, 1, 3092, '2026-03-24 10:59:54');
INSERT INTO `sys_role_menu` VALUES (461, 1, 3093, '2026-03-24 10:59:54');
INSERT INTO `sys_role_menu` VALUES (530, 1, 3110, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (531, 1, 3111, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (532, 1, 3112, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (533, 1, 3113, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (534, 1, 3114, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (535, 1, 3115, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (536, 1, 3116, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (537, 1, 3117, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (538, 1, 3118, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (539, 1, 3119, '2026-03-24 05:50:17');
INSERT INTO `sys_role_menu` VALUES (608, 1, 4120, '2026-03-25 14:59:13');
INSERT INTO `sys_role_menu` VALUES (609, 1, 4121, '2026-03-25 14:59:13');
INSERT INTO `sys_role_menu` VALUES (610, 1, 4122, '2026-03-25 14:59:13');
INSERT INTO `sys_role_menu` VALUES (611, 1, 4123, '2026-03-25 14:59:13');
INSERT INTO `sys_role_menu` VALUES (776, 1, 4130, '2026-03-25 16:18:55');
INSERT INTO `sys_role_menu` VALUES (777, 1, 4131, '2026-03-25 16:18:55');
INSERT INTO `sys_role_menu` VALUES (778, 1, 4132, '2026-03-25 16:18:55');
INSERT INTO `sys_role_menu` VALUES (779, 1, 4133, '2026-03-25 16:18:55');
INSERT INTO `sys_role_menu` VALUES (780, 1, 4220, '2026-03-25 09:40:43');
INSERT INTO `sys_role_menu` VALUES (781, 1, 4221, '2026-03-25 09:40:43');
INSERT INTO `sys_role_menu` VALUES (868, 1, 4230, '2026-03-25 20:51:18');
INSERT INTO `sys_role_menu` VALUES (869, 1, 4231, '2026-03-25 20:51:18');
INSERT INTO `sys_role_menu` VALUES (870, 1, 3120, '2026-03-25 13:30:33');
INSERT INTO `sys_role_menu` VALUES (871, 1, 3121, '2026-03-25 13:30:33');
INSERT INTO `sys_role_menu` VALUES (872, 1, 3122, '2026-03-25 13:30:33');
INSERT INTO `sys_role_menu` VALUES (873, 1, 3123, '2026-03-25 13:30:33');
INSERT INTO `sys_role_menu` VALUES (964, 1, 1305, '2026-03-26 15:34:59');
INSERT INTO `sys_role_menu` VALUES (965, 1, 1306, '2026-03-26 15:34:59');
INSERT INTO `sys_role_menu` VALUES (1062, 1, 1307, '2026-03-26 08:13:45');
INSERT INTO `sys_role_menu` VALUES (1063, 1, 1308, '2026-03-26 08:13:45');
INSERT INTO `sys_role_menu` VALUES (1064, 1, 1309, '2026-03-26 08:13:45');
INSERT INTO `sys_role_menu` VALUES (1161, 1, 1312, '2026-03-26 08:51:05');
INSERT INTO `sys_role_menu` VALUES (1162, 1, 1313, '2026-03-26 08:51:05');
INSERT INTO `sys_role_menu` VALUES (1262, 1, 1314, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1263, 1, 1315, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1264, 1, 1316, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1265, 1, 1317, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1266, 1, 1318, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1267, 1, 1319, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1268, 1, 1320, '2026-03-26 09:28:36');
INSERT INTO `sys_role_menu` VALUES (1370, 1, 1321, '2026-03-26 10:07:49');
INSERT INTO `sys_role_menu` VALUES (1371, 1, 1322, '2026-03-26 10:07:49');
INSERT INTO `sys_role_menu` VALUES (1372, 1, 1323, '2026-03-26 10:07:49');
INSERT INTO `sys_role_menu` VALUES (1481, 1, 1324, '2026-03-26 11:29:12');
INSERT INTO `sys_role_menu` VALUES (1482, 1, 1325, '2026-03-26 11:29:12');
INSERT INTO `sys_role_menu` VALUES (1483, 1, 1326, '2026-03-26 11:29:12');
INSERT INTO `sys_role_menu` VALUES (1484, 1, 1327, '2026-03-26 11:29:12');
INSERT INTO `sys_role_menu` VALUES (1485, 1, 1328, '2026-03-26 11:29:12');
INSERT INTO `sys_role_menu` VALUES (1486, 1, 1329, '2026-03-26 11:29:12');
INSERT INTO `sys_role_menu` VALUES (1598, 1, 1330, '2026-03-26 11:58:15');
INSERT INTO `sys_role_menu` VALUES (1599, 1, 1331, '2026-03-26 11:58:15');
INSERT INTO `sys_role_menu` VALUES (1727, 1, 1332, '2026-03-26 12:25:39');
INSERT INTO `sys_role_menu` VALUES (1728, 1, 1333, '2026-03-26 12:25:39');
INSERT INTO `sys_role_menu` VALUES (1729, 1, 1334, '2026-03-26 12:25:39');
INSERT INTO `sys_role_menu` VALUES (1730, 1, 1335, '2026-03-26 12:25:39');
INSERT INTO `sys_role_menu` VALUES (1855, 1, 1336, '2026-03-26 12:43:32');
INSERT INTO `sys_role_menu` VALUES (1981, 1, 5000, '2026-03-26 21:07:20');
INSERT INTO `sys_role_menu` VALUES (1982, 1, 5030, '2026-03-26 21:07:20');
INSERT INTO `sys_role_menu` VALUES (1983, 1, 5031, '2026-03-26 21:07:20');
INSERT INTO `sys_role_menu` VALUES (2111, 1, 5010, '2026-03-26 21:57:36');
INSERT INTO `sys_role_menu` VALUES (2112, 1, 5020, '2026-03-26 23:06:29');
INSERT INTO `sys_role_menu` VALUES (2367, 5, 1312, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2368, 5, 1313, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2369, 5, 1336, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2370, 5, 2110, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2371, 5, 2111, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2372, 5, 2112, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2373, 5, 2113, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2374, 5, 2114, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2375, 5, 2115, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2376, 5, 2116, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2377, 5, 2117, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2378, 5, 2118, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2379, 5, 2119, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2380, 5, 2210, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2381, 5, 2211, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2382, 5, 2220, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2383, 5, 2221, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2384, 5, 3080, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2385, 5, 3081, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2386, 5, 4110, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2387, 5, 4111, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2388, 5, 4112, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2389, 5, 4113, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2390, 5, 4114, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2391, 5, 4120, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2392, 5, 4121, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2393, 5, 4122, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2394, 5, 4123, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2395, 5, 4130, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2396, 5, 4131, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2397, 5, 4132, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2398, 5, 4133, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2399, 5, 4210, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2400, 5, 4211, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2401, 5, 4230, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2402, 5, 4231, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2403, 5, 5010, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2404, 5, 5020, '2026-04-28 10:24:25');
INSERT INTO `sys_role_menu` VALUES (2405, 1, 5045, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2406, 1, 5046, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2407, 1, 5047, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2408, 1, 5048, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2409, 1, 5049, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2410, 1, 5050, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2411, 1, 3064, '2026-08-19 10:38:59');
INSERT INTO `sys_role_menu` VALUES (2416, 1, 6000, '2026-08-19 16:22:28');
INSERT INTO `sys_role_menu` VALUES (2417, 1, 6001, '2026-08-19 16:22:28');
INSERT INTO `sys_role_menu` VALUES (2418, 1, 6010, '2026-08-20 12:10:14');
INSERT INTO `sys_role_menu` VALUES (2419, 1, 6011, '2026-08-20 12:10:14');
INSERT INTO `sys_role_menu` VALUES (2420, 1, 6012, '2026-08-20 12:10:14');
INSERT INTO `sys_role_menu` VALUES (2421, 1, 6013, '2026-08-20 12:10:14');
INSERT INTO `sys_role_menu` VALUES (2422, 1, 6014, '2026-08-20 13:05:56');
INSERT INTO `sys_role_menu` VALUES (2423, 1, 6015, '2026-08-20 13:05:56');
INSERT INTO `sys_role_menu` VALUES (2424, 1, 6100, '2026-08-22 11:09:25');
INSERT INTO `sys_role_menu` VALUES (2425, 1, 6110, '2026-08-22 12:12:19');
INSERT INTO `sys_role_menu` VALUES (2426, 1, 6111, '2026-08-22 12:12:19');
INSERT INTO `sys_role_menu` VALUES (2427, 1, 6112, '2026-08-22 12:12:19');
INSERT INTO `sys_role_menu` VALUES (2428, 1, 6113, '2026-08-22 12:12:19');
SET FOREIGN_KEY_CHECKS = 1;
资料/admin-20260806.zip
Binary files differ
资料/dev.mobileprovision
Binary files differ
资料/dev.p12
Binary files differ
资料/dist(2).mobileprovision
Binary files differ
资料/dist(2).p12
Binary files differ
资料/tcm-training-admin-backend-0.0.1-SNAPSHOT.jar
Binary files differ
资料/test.keystore
Binary files differ
资料/中医/CertificateSigningRequest.certSigningRequest
New file
@@ -0,0 +1,16 @@
-----BEGIN CERTIFICATE REQUEST-----
MIICfzCCAWcCAQAwOjEdMBsGCSqGSIb3DQEJARYOYmpfY3d4QDE2My5jb20xDDAK
BgNVBAMMA2N3eDELMAkGA1UEBhMCQ04wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQDDuvefvMwSSWxMdRnhjNkmIjOEeUc3DUZOTC44kIa+YfKw2myyG1oY
S7m41By9vfQegOmFBVQZsAL1ad++tnCkAD3vdYwKqpmLlMKSw9f5kGo8NtruUSEM
SMasCTTozRgGuuuXIVgPjJEX1JWXTbvfhEHfQmkXqMduJy8OXOisSVWWoXB3paGZ
IyJpweo/OgNyX1YYG+nsIZIlDkdKgyCJ61UfijVh0WvSOkuSYzGw9JYYszJqrI/M
55FYFxNa/6KhNcBkRuwggwVF78uI5BCdcxiOKRbw5Lv+fyncT0QljrdwZw/CBLj1
XRfQ3cKT/86oyqjB00iroHi/hUx3BUXZAgMBAAGgADANBgkqhkiG9w0BAQsFAAOC
AQEAMduVEaoeG/vUBYcY7dnf6MgeoxhHikTeNqIN4RT05Z4NTE6x73dQ7rfz+d9j
fQxI+s53UQFvGVvq6huiJe/tm4CJ2pV0y5eFLOgtJjd0NJdxk0sHjJ9ASZWjjLmQ
bfBi3KIzJKPXBgaLSrY6nhixCPrVFqZhB6Kjvi9PN8eNDUQ/SCTnTHdDm/PeO5r0
4Jkhq4zTZbuXo4aqa49VYsFwXZO1Cph5rvnEswLOKKtiqXH0/HRPRqG7zrFbLU5+
fpgKhpSUn4L+FkpFVgfbPe1x4YxPAoJ9Fj/R2I98ULcHDUo8MuX9tHEy3Pi2UGLT
mPwz+r/qPYtcr3owzzEIwmJBaw==
-----END CERTIFICATE REQUEST-----
资料/中医/aps.cer
Binary files differ
资料/中医/dev.p12
Binary files differ
资料/中医/dev_profile.mobileprovision
Binary files differ
资料/中医/development.cer
Binary files differ
资料/中医/dist.mobileprovision
Binary files differ
资料/中医/dist.p12
Binary files differ
资料/中医/dist_profile.mobileprovision
Binary files differ
资料/中医/ios_distribution.cer
Binary files differ
资料/中医/push.p12
Binary files differ
资料/中医/test.keystore
Binary files differ
资料/发布手册.txt
New file
@@ -0,0 +1,25 @@
部署文档:
Java服务
    服务器:124.71.107.223  root  Hzt123!@
    服务器链接文件:海政通_connect_config.json
    1.数据库脚本:刘杰电脑可以连,直接发给他
    2.打包:直接使用mvn clean package
    3.上传到/usr/local/project/tcm-training
    4.备份
    5.运行当前目录start.sh部署
管理后台
    同一服务器
    1.使用 npm run build:prod打包
    2.上传到/usr/local/project/tcm-training
    3.备份
    4.直接覆盖即可
APP
    使用zhangyan@1hoper.com账号打包
    1.注意APP的logo图片。traditionalApp/unpackage/res/icons 这个包没有上传git
    2.打包证书
        安卓:test.keystore 别名:testalias 密码:123456
        IOS:生产:dist.mobileprovision/dist.p12
资料/海政通_connect_config.json
New file
@@ -0,0 +1 @@
{"forwarding_auto_reconnect":false,"custom_size":false,"delete_time":0,"secret_key_id":"","user_name":"root","remote_port_forwarding":{},"conection_type":100,"sort_time":0,"description":"","proxy_id":"0","authentication_type":1,"drivestoredirect":true,"delete_key_sequence":0,"password":"CXFnS3gBGnCt493KANlK0rH3PXkYBIty","modified_time":1761729335225,"host":"124.71.107.223","accelerate":false,"id":"0hm3kdwy6pv0kfzu","height":0,"order":0,"create_time":1761729335225,"port_forwarding_list":[],"parent_update_time":0,"rename_time":0,"backspace_key_sequence":2,"fullscreen":false,"port":22,"terminal_encoding":"UTF-8","parent_id":"root","exec_channel_enable":true,"width":0,"name":"海政通","access_time":1787554980828}