diff --git a/src/stores/permission.ts b/src/stores/permission.ts index 336fbbe..84fe508 100644 --- a/src/stores/permission.ts +++ b/src/stores/permission.ts @@ -1,7 +1,7 @@ import type { NdmPermissionResultVO, Station } from '@/apis'; import { NDM_PERMISSION_STORE_ID } from '@/constants'; import { PERMISSION_TYPE_NAMES, type PermissionType } from '@/enums'; -import { useStationStore } from '@/stores'; +import { useSettingStore, useStationStore } from '@/stores'; import { defineStore } from 'pinia'; import { computed, ref } from 'vue'; import { objectEntries } from '@vueuse/core'; @@ -12,12 +12,21 @@ export const usePermissionStore = defineStore( NDM_PERMISSION_STORE_ID, () => { const stationStore = useStationStore(); + const settingStore = useSettingStore(); const permissionRecords = ref(null); const permissions = computed(() => { const result: Permissions = {}; + // 如果启用了mock用户,则授予所有车站全部权限 + if (settingStore.mockUser) { + stationStore.stations.forEach((station) => { + result[station.code] = [...objectEntries(PERMISSION_TYPE_NAMES).map(([permType]) => permType)]; + }); + return result; + } + const records = permissionRecords.value; // 如果权限记录不存在,则不做权限配置