From 1f8183034d001ce4827ce1fffa45349543449e3f Mon Sep 17 00:00:00 2001 From: Timi Date: Tue, 11 Aug 2026 17:49:37 +0800 Subject: [PATCH] update RoleDelegationPermissionAssign style --- .../RoleDelegationPermissionAssign.vue | 48 ++++++++----------- src/pages/permission/RolePermissionAssign.vue | 1 + .../permission/component/PermissionCell.vue | 2 +- src/router/routes/permissionRoutes.ts | 4 +- 4 files changed, 24 insertions(+), 31 deletions(-) diff --git a/src/pages/permission/RoleDelegationPermissionAssign.vue b/src/pages/permission/RoleDelegationPermissionAssign.vue index 62bd4db..ee7ebd4 100644 --- a/src/pages/permission/RoleDelegationPermissionAssign.vue +++ b/src/pages/permission/RoleDelegationPermissionAssign.vue @@ -14,7 +14,11 @@ /> - + - - 保存 D - @@ -49,6 +44,7 @@ import type { DropdownOption, DropdownValue } from "tdesign-mobile-vue"; import { Toast } from "tdesign-mobile-vue"; import { type Permission, useUserStore } from "timi-web"; +import { useNavBarStore } from "@/store/navBarStore"; import { type Role, usePermissionSettingsStore } from "@/store/permissionSettingsStore"; import { getErrorMessage } from "@/utils/error"; import { corePermissionCodes, coreRoleCodes } from "@/utils/permission"; @@ -58,6 +54,7 @@ defineOptions({ }); const permissionStore = usePermissionSettingsStore(); +const navBarStore = useNavBarStore(); const userStore = useUserStore(); const route = useRoute(); @@ -88,14 +85,6 @@ const roleOptions = computed(() => candidateRoleList.value disabled: false }))); -const rolePermissionWriteAccess = { - value: [ - corePermissionCodes.rolePermission.create, - corePermissionCodes.rolePermission.delete - ], - mode: "and" -} as const; - // ---------- 权限状态 ---------- const checkedPermissionIdSet = computed(() => new Set(checkedPermissionIds.value)); @@ -155,6 +144,17 @@ async function savePermissionList(): Promise { } } +function updateNavBar(): void { + navBarStore.clearRight(); + if (canEditActiveRole.value && canUpdateRolePermission.value) { + navBarStore.setRightText("保存", "var(--td-brand-color)", savePermissionList); + } +} + +watch([canEditActiveRole, canUpdateRolePermission], updateNavBar, { immediate: true }); +onMounted(updateNavBar); +onUnmounted(navBarStore.clearRight); + // ---------- 权限勾选 ---------- function isPermissionChecked(permissionId: string): boolean { @@ -185,8 +185,7 @@ function clearPermissionState(): void { // ---------- 授权范围 ---------- async function loadAuthorizationScope(): Promise { - const roleList = isSystemAdmin.value ? permissionStore.roleList : await permissionStore.loadManageableRoles(); - candidateRoleList.value = roleList; + candidateRoleList.value = isSystemAdmin.value ? permissionStore.roleList : await permissionStore.loadManageableRoles(); } onMounted(async () => { @@ -203,7 +202,7 @@ onMounted(async () => { .role-delegation-permission-assign { gap: 1rem; display: flex; - padding: calc(var(--app-nav-height) + 4.5rem) 0 6rem 0; + padding: calc(var(--app-nav-height) + 3.5rem) 0 6rem 0; flex-direction: column; .header { @@ -249,13 +248,6 @@ onMounted(async () => { white-space: nowrap; text-overflow: ellipsis; } - - .save { - left: 1rem; - right: 1rem; - bottom: calc(.75rem + env(safe-area-inset-bottom, 0)); - position: fixed; - } } :global(html.theme-dark) { diff --git a/src/pages/permission/RolePermissionAssign.vue b/src/pages/permission/RolePermissionAssign.vue index 69351e2..702b516 100644 --- a/src/pages/permission/RolePermissionAssign.vue +++ b/src/pages/permission/RolePermissionAssign.vue @@ -20,6 +20,7 @@ diff --git a/src/pages/permission/component/PermissionCell.vue b/src/pages/permission/component/PermissionCell.vue index c2cf39d..4610eb2 100644 --- a/src/pages/permission/component/PermissionCell.vue +++ b/src/pages/permission/component/PermissionCell.vue @@ -50,7 +50,7 @@ const permissionCode = computed(() => `${props.permission.moduleCode}:${props.pe :deep(.t-cell__note) { flex: 0 1 auto; min-width: 0; - max-width: 56%; + max-width: 40%; text-align: right; justify-content: flex-end; } diff --git a/src/router/routes/permissionRoutes.ts b/src/router/routes/permissionRoutes.ts index b079d77..07f87a1 100644 --- a/src/router/routes/permissionRoutes.ts +++ b/src/router/routes/permissionRoutes.ts @@ -87,7 +87,7 @@ const permissionRoutes: RouteRecordRaw[] = [ depth: 6, navBarVisible: true, navBarCanBack: true, - navBarTitle: "角色转授权限 D", + navBarTitle: "角色可转授权限 D", tabBarVisible: false, bodyBackground: "#F5F5F8", darkBodyBackground: "#10161f" @@ -161,7 +161,7 @@ const permissionRoutes: RouteRecordRaw[] = [ depth: 4, navBarVisible: true, navBarCanBack: true, - navBarTitle: "角色转授权限 D", + navBarTitle: "角色可转授权限 D", tabBarVisible: false, bodyBackground: "#F5F5F8", darkBodyBackground: "#10161f"