zhengyiming
2025-11-13 53b2d1afec39dbf6364468b5fffc2a09a851602d
src/hooks/useUser.ts
@@ -1,9 +1,10 @@
import { useUserStore } from '@/store/modules/user';
import { UserUtils } from '@bole-core/core';
// import * as userRoleServices from '@/services/api/UserRole';
import * as userRoleServices from '@/services/api/UserRole';
import * as userServices from '@/services/api/User';
import { useQuery, useQueryClient } from '@tanstack/vue-query';
import { formatRoleName } from '@/utils';
import { EnumMenuScene } from '@/constants';
export function useIsSystemAdmin() {
  const userStore = useUserStore();
@@ -23,14 +24,18 @@
  };
}
export function useAllRoleList() {
  const { data: allRoleList, refetch } = useQuery({
    queryKey: ['userServices/getAllRoles'],
type UseAllRoleListOptions = {
  menuScene?: EnumMenuScene;
};
export function useAllRoleList(options: UseAllRoleListOptions = {}) {
  const { menuScene = EnumMenuScene.Goverment } = options;
  const { data: allRoleList } = useQuery({
    queryKey: ['userRoleServices/getRoles', menuScene],
    queryFn: async () => {
      let res = await userServices.getAllRoles({ showLoading: false });
      return res;
      let res = await userRoleServices.getRoles({ menuScene }, { showLoading: false });
      return res.data;
    },
    placeholderData: () => [] as API.RoleInfo[],
    select(data) {
      return data.map((x) => ({
        ...x,
@@ -40,8 +45,12 @@
    },
  });
  const enableRoleList = computed(() => {
    return allRoleList.value.filter((x) => x.isEnable);
  });
  return {
    allRoleList,
    refetch,
    enableRoleList,
  };
}