修复物联安全:持久化撤权恢复并统一真实外发门禁

This commit is contained in:
wangzhibiao committed 2026-10-14 10:52:05 +08:00
1 parent 373921447f
commit 0c1d97a6f0
70 files changed
+1817 -1459

No files matched your search

+2 -2
View File
@@ -11,11 +11,11 @@
| 执行顺序 | 文件名称 | 模式 (Schema) | 来源追溯 (Source) | 前置依赖 | SHA-256 哈希值 |
| :---: | :--- | :---: | :--- | :--- | :--- |
| **01** | `sql/01_system_foundation.sql` | `public` | `sql/ry_20250522.sql` + `sql/quartz.sql` (彻底限定 public. 命名空间,消除系统视图歧义与转义语法) | 空库 | `befce0720daebd75247401b528b4617f00774b99240bf7cece130288b899a782` |
| **01** | `sql/01_system_foundation.sql` | `public` | `sql/ry_20250522.sql` + `sql/quartz.sql` (彻底限定 public. 命名空间,消除系统视图歧义与转义语法) | 空库 | `03fd416f7ef069326ec9fc27bfa2778e57f94580d7f107417e658cd82b33d408` |
| **02** | `sql/02_training_v2_schema.sql` | `public` | 融合工程真实实体、Mapper XML、权威 V2 迁移基线彻底对齐版 (对齐学习时长幂等索引) | 01 (sys_*) | `e2d72300ee4a0bd411c569d3418426e4391aa4145751ba8e16a813799fa5820b` |
| **03** | `sql/03_system_permissions_and_menus.sql` | `public` | `sql/system/kingbase/` (004~015) 纯净单事务版 (彻底限定 public. ALTER/INDEX) | 01, 02 | `194f7c53b981222e4e47e0d6582d01386e8e219fb39942671a61fafb16ca47d3` |
| **04** | `sql/04_iotlocks_schema.sql` | `iotlocks` + `public` | `sql/kingbase/lock.sql` (修复事务、字典与动态授权,规避菜单2060冲突) | 01, 03 | `3140e7c1b0be68c9364483d3a521f671f2559f2f7dda400f8a983bdafed6e94e` |
| **05** | `sql/05_synthetic_demo_data.sql` | `public` | `sql/demo/` (001~004) 纯合成演示主数据 (修复 score_id 幂等冲突目标) | 01, 02, 03 | `4177dc7fd99c6f82479c3ffb10f347bc22bec484bd76c6ff8ba34dcf2f6f1543` |
| **05** | `sql/05_synthetic_demo_data.sql` | `public` | `sql/demo/` (001~004) 纯合成演示主数据 (修复 score_id 幂等冲突目标) | 01, 02, 03 | `4ec64a905a32c940160b3fdbc01b3be85291e639f4a4612bd0c04c0e9b162e02` |
| **05b** | `sql/05b_fusion_iot_test_data.sql` | `iotlocks` + `public` | 专属跨模式 IoT 门锁业务融合测试数据集 (初始未授权状态,对齐04列名) | 01 ~ 05 | `97a98ae7ac46d6a22e966b0d9046d94faa166fbfd9173778d8803abeaaab01f2` |
| **06** | `sql/06_verify_schema_integrity.sql` | `public` + `iotlocks` | 自动化只读断言脚本 (含 Mapper 列、部分唯一索引与初始未授权断言) | 01 ~ 05b | `413ac8778e7acfecbae760cadaef565af2cdcc1f38e54f2c19ba0f29c11c32b2` |
| **07** | `sql/07_restore_training_menus_and_notice.sql` | `public` | 恢复原系统完整业务路由菜单体系与补齐 sys_notice_read 运行时表 | 01 ~ 06 | `9cdf10533034f8824ddbcf6fcb0abc7e7b873ad02ed66dc6581691a005a8dc17` |
+7 -4
View File
@@ -76,8 +76,8 @@ create table public.sys_user (
-- ----------------------------
-- 初始化-用户信息表数据
-- ----------------------------
insert into public.sys_user values(1, 103, 'admin', '若依', '00', 'ry@163.com', '15888888888', '1', '', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', sysdate(), sysdate(), 'admin', sysdate(), '', null, '管理员');
insert into public.sys_user values(2, 105, 'ry', '若依', '00', 'ry@qq.com', '15666666666', '1', '', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', sysdate(), sysdate(), 'admin', sysdate(), '', null, '测试员');
insert into public.sys_user values(1, 103, 'admin', '若依', '00', 'ry@163.com', '15888888888', '1', '', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', sysdate(), sysdate(), 'admin', sysdate(), '', null, '管理员');
insert into public.sys_user values(2, 105, 'ry', '若依', '00', 'ry@qq.com', '15666666666', '1', '', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', sysdate(), sysdate(), 'admin', sysdate(), '', null, '测试员');
-- ----------------------------
@@ -556,7 +556,7 @@ create table public.sys_config (
) engine=innodb auto_increment=100 comment = '参数配置表';
insert into public.sys_config values(1, '主框架页-默认皮肤样式名称', 'sys.index.skinName', 'skin-blue', 'Y', 'admin', sysdate(), '', null, '蓝色 skin-blue、绿色 skin-green、紫色 skin-purple、红色 skin-red、黄色 skin-yellow' );
insert into public.sys_config values(2, '用户管理-账号初始密码', 'sys.user.initPassword', '123456', 'Y', 'admin', sysdate(), '', null, '初始化密码 123456' );
insert into public.sys_config values(2, '用户管理-账号初始密码', 'sys.user.initPassword', '', 'Y', 'admin', sysdate(), '', null, '初始化密码 123456' );
insert into public.sys_config values(3, '主框架页-侧边栏主题', 'sys.index.sideTheme', 'theme-dark', 'Y', 'admin', sysdate(), '', null, '深色主题theme-dark,浅色主题theme-light' );
insert into public.sys_config values(4, '账号自助-验证码开关', 'sys.account.captchaEnabled', 'true', 'Y', 'admin', sysdate(), '', null, '是否开启验证码功能(true开启,false关闭)');
insert into public.sys_config values(5, '账号自助-是否开启用户注册功能', 'sys.account.registerUser', 'false', 'Y', 'admin', sysdate(), '', null, '是否开启注册用户功能(true开启,false关闭)');
@@ -890,4 +890,7 @@ create table public.QRTZ_SIMPROP_TRIGGERS (
foreign key (sched_name, trigger_name, trigger_group) references public.QRTZ_TRIGGERS(sched_name, trigger_name, trigger_group)
) engine=innodb comment = '同步机制的行锁表';
commit;
commit;
-- Round 5S: seeded demo identities remain disabled until an authorized administrator provisions credentials.
UPDATE public.sys_user SET status = '1' WHERE password = '!ROUND5S_DISABLED_NO_LOGIN';
+8 -5
View File
@@ -32,11 +32,11 @@ BEGIN;
INSERT INTO public.sys_user
(user_id, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, password, status, del_flag, login_ip, login_date, create_by, create_time, remark)
VALUES
(10, 112, 'demo_admin', '演示培训管理员', '00', 'demo_admin@sict.railway.cn', '18800000001', '0', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用培训管理员账号'),
(11, 112, 'demo_teacher', '崔宏伟(教师)', '00', 'cuihw@sict.railway.cn', '18800000011', '0', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用主讲教师账号(绑定T101)'),
(12, 116, 'demo_teacher2', '张建国(教师)', '00', 'zhangjg@sict.railway.cn', '18800000012', '0', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用第二教师账号(绑定T102)'),
(21, 119, 'demo_student', '李强(学员)', '00', 'liqiang@sict.railway.cn', '18800000101', '0', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用参训学员账号(绑定S101)'),
(22, 120, 'demo_student2', '王芳(学员)', '00', 'wangfang@sict.railway.cn', '18800000102', '1', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用参训学员账号(绑定S102)')
(10, 112, 'demo_admin', '演示培训管理员', '00', 'demo_admin@sict.railway.cn', '18800000001', '0', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用培训管理员账号'),
(11, 112, 'demo_teacher', '崔宏伟(教师)', '00', 'cuihw@sict.railway.cn', '18800000011', '0', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用主讲教师账号(绑定T101)'),
(12, 116, 'demo_teacher2', '张建国(教师)', '00', 'zhangjg@sict.railway.cn', '18800000012', '0', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用第二教师账号(绑定T102)'),
(21, 119, 'demo_student', '李强(学员)', '00', 'liqiang@sict.railway.cn', '18800000101', '0', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用参训学员账号(绑定S101)'),
(22, 120, 'demo_student2', '王芳(学员)', '00', 'wangfang@sict.railway.cn', '18800000102', '1', '!ROUND5S_DISABLED_NO_LOGIN', '0', '0', '127.0.0.1', CURRENT_TIMESTAMP, 'admin', CURRENT_TIMESTAMP, '演示专用参训学员账号(绑定S102)')
ON CONFLICT (user_id) DO UPDATE SET
user_name = EXCLUDED.user_name,
nick_name = EXCLUDED.nick_name,
@@ -62,6 +62,9 @@ UPDATE public.sys_config SET config_value = 'false' WHERE config_key = 'sys.acco
COMMIT;
-- Round 5S: seeded demo identities remain disabled until an authorized administrator provisions credentials.
UPDATE public.sys_user SET status = '1' WHERE password = '!ROUND5S_DISABLED_NO_LOGIN';
-- >>> 来源: sql/demo/002_demo_master_data.sql >>>
-- ==============================================================================
-- RailwaySystem Clean Demo 资产: 002_demo_master_data.sql