refactor(admin-reports, i18n): remove rebate commission report and enhance localization

Removed the `getAdminReportRebateCommission` function and its references from the admin reports API and localization files. Updated CSS for improved money display handling in admin components. Enhanced localization support by adding new finance and support workspace entries in English, Nepali, and Chinese, improving user experience across the application.
This commit is contained in:
2026-06-16 16:04:03 +08:00
parent d4cf4ff436
commit a020e34a7d
38 changed files with 1259 additions and 353 deletions

View File

@@ -0,0 +1,44 @@
import {
adminHasAnyPermission,
adminHasAnyPermissionCode,
adminOperationalPermissionCodes,
} from "@/lib/admin-permissions";
import { useAdminProfile } from "@/stores/admin-session";
import type { AdminAccountKind, AdminProfile } from "@/types/api/admin-auth";
export function resolveAdminAccountKind(profile: AdminProfile | null | undefined): AdminAccountKind | null {
if (!profile) {
return null;
}
if (profile.account_kind) {
return profile.account_kind === "site_operator" ? "site_admin" : profile.account_kind;
}
if (profile.is_super_admin) {
return "super_admin";
}
if (profile.agent != null) {
return "agent_operator";
}
if (profile.site != null) {
return "site_admin";
}
return "platform_account";
}
/** 统一权限与会话身份读取legacy `prd.*` 与 action code 并存,新代码优先用 `hasAnyCode`。 */
export function useAdminPermission() {
const profile = useAdminProfile();
const legacyPermissions = profile?.permissions ?? [];
const operationalPermissions = adminOperationalPermissionCodes(profile);
return {
profile,
legacyPermissions,
operationalPermissions,
accountKind: resolveAdminAccountKind(profile),
isSuperAdmin: profile?.is_super_admin === true,
/** @deprecated 逐步改用 {@link hasAnyCode} */
hasAnyLegacy: (required: readonly string[]) => adminHasAnyPermission(legacyPermissions, required),
hasAnyCode: (required: readonly string[]) => adminHasAnyPermissionCode(operationalPermissions, required),
};
}