zhengyiming
6 天以前 379c3a050d5f92c1335ed342147703301e379bf0
feat: 更新框架
1个文件已添加
6个文件已修改
102 ■■■■■ 已修改文件
.eslintrc-auto-import.json 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
auto-imports.d.ts 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/hooks/index.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/hooks/menu.ts 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/DistributionDetailView.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/UsageDetailView.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Login/Login.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
.eslintrc-auto-import.json
@@ -146,6 +146,8 @@
    "useId": true,
    "useLink": true,
    "useLoading": true,
    "useMenu": true,
    "useMenus": true,
    "useModel": true,
    "useOmit": true,
    "useOmitProps": true,
auto-imports.d.ts
@@ -132,6 +132,8 @@
  const useIsSystemAdmin: typeof import('./src/hooks/useUser')['useIsSystemAdmin']
  const useLink: typeof import('vue-router')['useLink']
  const useLoading: typeof import('./src/hooks/global/useLoading')['useLoading']
  const useMenu: typeof import('./src/hooks/menu')['useMenu']
  const useMenus: typeof import('./src/hooks/menu')['useMenus']
  const useModel: typeof import('vue')['useModel']
  const useOmit: typeof import('./src/hooks/help')['useOmit']
  const useOmitProps: typeof import('./src/hooks/help')['useOmitProps']
@@ -307,6 +309,8 @@
    readonly useId: UnwrapRef<typeof import('vue')['useId']>
    readonly useLink: UnwrapRef<typeof import('vue-router')['useLink']>
    readonly useLoading: UnwrapRef<typeof import('./src/hooks/global/useLoading')['useLoading']>
    readonly useMenu: UnwrapRef<typeof import('./src/hooks/menu')['useMenu']>
    readonly useMenus: UnwrapRef<typeof import('./src/hooks/menu')['useMenus']>
    readonly useModel: UnwrapRef<typeof import('vue')['useModel']>
    readonly useOmit: UnwrapRef<typeof import('./src/hooks/help')['useOmit']>
    readonly useOmitProps: UnwrapRef<typeof import('./src/hooks/help')['useOmitProps']>
src/hooks/index.ts
@@ -6,4 +6,5 @@
export * from './useEvent';
export * from './useUser';
export * from './help';
export * from './menu';
// export * from './dic';
src/hooks/menu.ts
New file
@@ -0,0 +1,89 @@
import * as menuServices from '@/services/api/menu';
import { flattenTree } from '@/utils';
import { DaPengAccessAdapter } from '@bole-core/components';
import { useQuery, useQueryClient } from '@tanstack/vue-query';
type UseMenusOptions = {
  params: MaybeRef<API.APIgetMenusParams>;
  enabled?: MaybeRef<boolean>;
};
export function useMenus({ params, enabled = true }: UseMenusOptions) {
  const queryClient = useQueryClient();
  const { data, refetch } = useQuery({
    queryKey: ['menuServices/getMenus', params],
    queryFn: async () => {
      return await menuServices.getMenus(unref(params), {
        showLoading: false,
      });
    },
    placeholderData: () => [] as API.GetMenusQueryResultItem[],
    staleTime: Infinity,
    enabled: enabled,
  });
  const flattenMenus = computed(() => flattenTree(data.value));
  function getMenuById(id: string) {
    return flattenMenus.value.find((item) => item.id === id);
  }
  return {
    menusTree: data,
    refetch,
    getMenuById,
  };
}
type UseMenuOptions = {
  params: MaybeRef<API.APIgetMenuParams>;
  enabled?: MaybeRef<boolean>;
};
export function useMenu({ params, enabled = true }: UseMenuOptions) {
  const queryClient = useQueryClient();
  const { data, refetch } = useQuery({
    queryKey: ['menuServices/getMenu', params],
    queryFn: async () => {
      return await menuServices.getMenu(unref(params), {
        showLoading: false,
      });
    },
    placeholderData: () => ({} as API.GetMenuQueryResult),
    enabled: enabled,
  });
  const menuDefaultGroup = computed(
    () => DaPengAccessAdapter.getMenuGroupAdapter(data.value?.groups ?? []) ?? {}
  );
  const menuFields = computed(() => {
    return menuDefaultGroup.value.fields ?? [];
  });
  const menuPageButtons = computed(() => {
    const pageButtonLocation = DaPengAccessAdapter.getButtonLocationAdapter(
      menuDefaultGroup.value,
      SubModuleKey[SubModuleType.PageButton]
    );
    return pageButtonLocation?.buttons ?? [];
  });
  const menuDataButtons = computed(() => {
    const pageButtonLocation = DaPengAccessAdapter.getButtonLocationAdapter(
      menuDefaultGroup.value,
      SubModuleKey[SubModuleType.DataButton]
    );
    return pageButtonLocation?.buttons ?? [];
  });
  return {
    menu: data,
    refetch,
    menuFields,
    menuPageButtons,
    menuDataButtons,
  };
}
src/views/FinanceManage/components/DistributionDetailView.vue
@@ -19,7 +19,7 @@
  useTable,
  defineOperationBtns,
} from '@bole-core/components';
import * as flexEnterpriseServices from '@/services/api/FlexEnterprise';
// import * as flexEnterpriseServices from '@/services/api/FlexEnterprise';
import { DistributionDetailColumns } from '../constants';
import { FlexEnterpriseSettingStatus } from '@/constants';
import { OrderInputType } from '@bole-core/core';
src/views/FinanceManage/components/UsageDetailView.vue
@@ -9,7 +9,7 @@
<script setup lang="ts">
import { ProTableV2, LoadingLayout, AppContainer, useTable } from '@bole-core/components';
import * as flexEnterpriseServices from '@/services/api/FlexEnterprise';
// import * as flexEnterpriseServices from '@/services/api/FlexEnterprise';
import { UsageDetailColumns } from '../constants';
import { FlexEnterpriseSettingStatus } from '@/constants';
import { OrderInputType } from '@bole-core/core';
src/views/Login/Login.vue
@@ -179,7 +179,7 @@
    loading.value = true;
    await userStore.loginByUsername({
      userName: unref(user),
      userPassword: unref(pwd),
      password: unref(pwd),
    });
    loading.value = false;
    router.push({