refactor(role): 开源版内置角色对齐 admin/merchant 并整理登录校验

新增 RoleCodeEnum.ADMIN_ADMIN 与多语言文案;登录状态校验迁至 common/handler;清空已应用的 update-datas 升级脚本。
This commit is contained in:
DaxPay Dev
2026-07-14 15:24:26 +08:00
parent e869901db2
commit b13ac01d29
14 changed files with 16 additions and 143 deletions

View File

@@ -1,116 +0,0 @@
-- ----------------------------
-- 数据升级:菜单展示与 IA 调整 + i18n 改造数据回填
-- 执行顺序update-tables.sql → update-datas.sql
-- ----------------------------
-- ----------------------------
-- 管理端菜单 IA支付管理扁平 + 微信域名验证迁系统配置
-- ----------------------------
-- 支付产品配置 → 通道产品配置,升为支付管理二级
UPDATE "public"."iam_perm_menu"
SET "pid" = 4,
"sort_no" = 2,
"last_modified_time" = NOW()
WHERE "id" = 40105;
-- 微信域名验证:支付配置 → 系统配置
UPDATE "public"."iam_perm_menu"
SET "pid" = 304,
"sort_no" = 7,
"last_modified_time" = NOW()
WHERE "id" = 40507;
-- 支付配置 catalog 已无可见子菜单,隐藏
UPDATE "public"."iam_perm_menu"
SET "hidden" = true,
"last_modified_time" = NOW()
WHERE "id" = 405;
-- 一级菜单顺序
UPDATE "public"."iam_perm_menu"
SET "sort_no" = 3.5,
"last_modified_time" = NOW()
WHERE "id" = 404;
UPDATE "public"."iam_perm_menu"
SET "sort_no" = 4,
"last_modified_time" = NOW()
WHERE "id" = 6;
-- 系统配置排序
UPDATE "public"."iam_perm_menu"
SET "sort_no" = 1,
"last_modified_time" = NOW()
WHERE "id" = 30402;
UPDATE "public"."iam_perm_menu"
SET "sort_no" = 2,
"last_modified_time" = NOW()
WHERE "id" = 30401;
-- ----------------------------
-- 商户管理:全局「通道商户」侧栏菜单(占位)
-- ----------------------------
INSERT INTO "public"."iam_perm_menu" (
"id", "pid", "menu_code", "client_code", "name",
"i18n_key", "icon",
"hidden", "hide_children_menu", "component", "path", "redirect",
"sort_no", "root", "keep_alive", "affix_tab",
"creator", "last_modifier", "version", "deleted",
"menu_type", "active_icon", "badge", "badge_type", "badge_variants",
"iframe_src", "link", "create_time", "last_modified_time"
)
SELECT
40402,
404,
'channel:merchant',
'admin',
'ChannelMerchantGlobal',
'menu.payment.merchant.channelMerchant.global',
'lucide:repeat',
false,
false,
'/_core/fallback/coming-soon',
'/payment/merchant/channel-merchants',
NULL,
2,
false,
true,
false,
1,
1,
0,
false,
'menu',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NOW(),
NOW()
WHERE NOT EXISTS (
SELECT 1 FROM "public"."iam_perm_menu" WHERE "id" = 40402
);
-- ============================================================
-- i18n 改造:批量回填 i18n_key
-- 规则:角色 role.{code},字典项 dict.{dictCode}.{itemCode}
-- 语言包翻译在前端 locales/langs/{locale}/dict.json 中维护
-- ============================================================
-- 角色表:按 code 生成 i18n_key
UPDATE iam_role
SET i18n_key = 'role.' || code,
last_modified_time = NOW()
WHERE i18n_key IS NULL
AND deleted = false;
-- 字典项表:按 dictCode.code 生成 i18n_key
UPDATE system_dict_item
SET i18n_key = 'dict.' || dict_code || '.' || code,
last_modified_time = NOW()
WHERE i18n_key IS NULL
AND deleted = false;