diff --git a/be/apps/core/src/modules/platform/data-management/data-management.service.ts b/be/apps/core/src/modules/platform/data-management/data-management.service.ts index 01c07477..45296a99 100644 --- a/be/apps/core/src/modules/platform/data-management/data-management.service.ts +++ b/be/apps/core/src/modules/platform/data-management/data-management.service.ts @@ -66,8 +66,6 @@ export class DataManagementService { await this.deleteManagedStorageSpace(tenantId) - return - if (!tenantSlug) { throw new BizException(ErrorCode.COMMON_BAD_REQUEST, { message: '当前租户缺少 slug,无法删除账户。', diff --git a/be/apps/dashboard/src/hooks/usePageRedirect.ts b/be/apps/dashboard/src/hooks/usePageRedirect.ts index 406ebc64..80499d16 100644 --- a/be/apps/dashboard/src/hooks/usePageRedirect.ts +++ b/be/apps/dashboard/src/hooks/usePageRedirect.ts @@ -94,12 +94,6 @@ export function usePageRedirect() { setAuthUser(sessionQuery.data?.user ?? null) }, [sessionQuery.data, setAuthUser]) - useEffect(() => { - return () => { - queryClient.cancelQueries({ queryKey: AUTH_SESSION_QUERY_KEY }) - } - }, [queryClient]) - useEffect(() => { const matchedTenantNotFound = [sessionQuery.error].some((error) => { const code = extractBizErrorCode(error) diff --git a/be/apps/dashboard/src/hooks/useRequireStorageProvider.ts b/be/apps/dashboard/src/hooks/useRequireStorageProvider.ts index 2bb88639..4417c3e6 100644 --- a/be/apps/dashboard/src/hooks/useRequireStorageProvider.ts +++ b/be/apps/dashboard/src/hooks/useRequireStorageProvider.ts @@ -1,4 +1,4 @@ -import { useEffect } from 'react' +import { useEffect, useRef } from 'react' import { useLocation, useNavigate } from 'react-router' import { PUBLIC_ROUTES } from '~/constants/routes' @@ -34,7 +34,11 @@ export function useRequireStorageProvider({ session, isLoading }: UseRequireStor (storageProvidersQuery.data?.providers.length ?? 0) === 0 && !storageProvidersQuery.isFetching + const navigateOnceRef = useRef(false) useEffect(() => { + if (navigateOnceRef.current) { + return + } if (!needsSetup) { return } @@ -42,6 +46,8 @@ export function useRequireStorageProvider({ session, isLoading }: UseRequireStor return } + navigateOnceRef.current = true + navigate(STORAGE_SETUP_PATH, { replace: true }) }, [navigate, needsSetup, pathname]) } diff --git a/packages/builder/src/storage/providers/s3-provider.ts b/packages/builder/src/storage/providers/s3-provider.ts index 603c15de..cf63c299 100644 --- a/packages/builder/src/storage/providers/s3-provider.ts +++ b/packages/builder/src/storage/providers/s3-provider.ts @@ -344,6 +344,7 @@ export class S3StorageProvider implements StorageProvider { const targetPrefix = basePrefix && !basePrefix.endsWith('/') ? `${basePrefix}/` : basePrefix const objects = await this.listObjects(listPrefix) + const keysToDelete = objects .map((obj) => obj.key) .filter((key): key is string => {