games-development-ai/deploy/sql/2026-06-11-menu-cleanup.sql
zizi 063ec4edf2 docs(rename): ③ 文档/契约漂移清理——contracts+docs+根文档 yudao 标识同步 com.wanxiang.huijing(follow-up,脚本)
- 范围:全仓除已完成的 game-cloud/game-admin(及排除区);91 文件
- cn.iocoder.yudao→com.wanxiang.huijing / cn.wanxiang.game→com.wanxiang.huijing.game / cn.iocoder.cloud→com.wanxiang / Yudao*→Huijing* / bare yudao→huijing
- 含 contracts/api-schemas(apiInterface FQCN)、docs/architecture+agent-specs(含中文名,git ls-files -z 修复)、AGENTS.md/CLAUDE.md 等根文档
- 保留不动:上游归属 URL(gitee/github yudaocode·YunaiV,改则断链+违反署名)、game-cloud Flyway 迁移注释(保 checksum)、lockfile(装包重生)
- 纯文档/字符串,零构建影响(game-cloud/game-admin 字节码未动)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 14:32:44 +00:00

38 lines
2.2 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- =============================================================================
-- 造梦AI · huijing 死菜单清理(2026-06-11 审计版)
-- 适用库:ruoyi-vue-pro(staging:mini-desktop docker game-staging-mysql,MySQL 8.4.8)
-- 性质:软删(deleted=1),全量可回滚(备份表 + 固化删除集表)
-- 判据:16 棵死顶级子树(views 已被 fork 删除,点开全空白);详见
-- docs/agent-specs/2026-06-11-admin-cloud清理-codex执行单.md §1 层A
-- 执行方式:分 4 段执行,每段闸门校验通过才进下一段(勿一次性灌整个文件)
-- =============================================================================
-- ---------- 段1:备份(若备份表已存在=有前次执行残留,必须停下人核,禁止覆盖) ----------
CREATE TABLE system_menu_bak_20260611 AS SELECT * FROM system_menu;
CREATE TABLE system_role_menu_bak_20260611 AS SELECT * FROM system_role_menu;
-- ---------- 段2:固化删除集(递归收集 16 棵死子树全部后代) ----------
DROP TABLE IF EXISTS cleanup_menu_del_20260611;
CREATE TABLE cleanup_menu_del_20260611 (id BIGINT PRIMARY KEY);
INSERT INTO cleanup_menu_del_20260611
WITH RECURSIVE del AS (
SELECT id FROM system_menu
WHERE id IN (1117,1185,1254,1281,2084,2159,2160,2262,2362,2397,2563,2758,4000,5100,6400,6500)
AND deleted = 0
UNION ALL
SELECT m.id FROM system_menu m JOIN del d ON m.parent_id = d.id WHERE m.deleted = 0
)
SELECT id FROM del;
-- ---------- 段3:软删(带审计 updater,遵守审计列非空红线) ----------
UPDATE system_menu m JOIN cleanup_menu_del_20260611 d ON m.id = d.id
SET m.deleted = 1, m.updater = 'cleanup-20260611', m.update_time = NOW();
UPDATE system_role_menu rm JOIN cleanup_menu_del_20260611 d ON rm.menu_id = d.id
SET rm.deleted = 1, rm.updater = 'cleanup-20260611', rm.update_time = NOW()
WHERE rm.deleted = 0;
-- ---------- 段4(仅回滚时用,平时勿执行):全量恢复 ----------
-- UPDATE system_menu m JOIN system_menu_bak_20260611 b ON m.id = b.id SET m.deleted = b.deleted;
-- UPDATE system_role_menu rm JOIN system_role_menu_bak_20260611 b ON rm.id = b.id SET rm.deleted = b.deleted;