diff --git a/core/core-frontend/src/api/dataset.ts b/core/core-frontend/src/api/dataset.ts index b491de7f14..aeb29a85d0 100644 --- a/core/core-frontend/src/api/dataset.ts +++ b/core/core-frontend/src/api/dataset.ts @@ -247,3 +247,39 @@ export const getFunction = async (): Promise => { return res?.data }) } + +export const exportTasks = async (type): Promise => { + return request.post({ url: '/exportCenter/exportTasks/' + type, data: {} }).then(res => { + return res?.data + }) +} + +export const exportRetry = async (id): Promise => { + return request.post({ url: '/exportCenter/retry/' + id, data: {} }).then(res => { + return res?.data + }) +} + +export const downloadFile = async (id): Promise => { + return request.get({ url: 'exportCenter/download/' + id, responseType: 'blob' }).then(res => { + return res?.data + }) +} + +export const exportDelete = async (id): Promise => { + return request.get({ url: '/exportCenter/delete/' + id }).then(res => { + return res?.data + }) +} + +export const exportDeleteAll = async (type, data): Promise => { + return request.post({ url: '/exportCenter/deleteAll/' + type, data }).then(res => { + return res?.data + }) +} + +export const exportDeletePost = async (data): Promise => { + return request.post({ url: '/exportCenter/delete', data }).then(res => { + return res?.data + }) +} diff --git a/core/core-frontend/src/layout/components/Header.vue b/core/core-frontend/src/layout/components/Header.vue index fa30c44ff5..90493dcac7 100644 --- a/core/core-frontend/src/layout/components/Header.vue +++ b/core/core-frontend/src/layout/components/Header.vue @@ -4,6 +4,7 @@ import { usePermissionStore } from '@/store/modules/permission' import { isExternal } from '@/utils/validate' import { formatRoute } from '@/router/establish' import HeaderMenuItem from './HeaderMenuItem.vue' +import { useEmitt } from '@/hooks/web/useEmitt' import { Icon } from '@/components/icon-custom' import { ElHeader, ElMenu } from 'element-plus-secondary' import SystemCfg from './SystemCfg.vue' @@ -15,8 +16,8 @@ import { isDesktop } from '@/utils/ModelUtil' import { XpackComponent } from '@/components/plugin' import { useAppearanceStoreWithOut } from '@/store/modules/appearance' import AiComponent from '@/layout/components/AiComponent.vue' -import { useEmitt } from '@/hooks/web/useEmitt' import { findBaseParams } from '@/api/aiComponent' +import ExportExcel from '@/views/visualized/data/dataset/ExportExcel.vue' import AiTips from '@/layout/components/AiTips.vue' const appearanceStore = useAppearanceStoreWithOut() const { push } = useRouter() @@ -40,7 +41,10 @@ const activeIndex = computed(() => { return route.path }) const permissionStore = usePermissionStore() - +const ExportExcelRef = ref() +const downloadClick = () => { + ExportExcelRef.value.init() +} const routers: any[] = formatRoute(permissionStore.getRoutersNotHidden as AppCustomRouteRecordRaw[]) const showSystem = ref(false) const showToolbox = ref(false) @@ -85,6 +89,10 @@ onMounted(() => { initShowSystem() initShowToolbox() initAiBase() + useEmitt({ + name: 'data-export-center', + callback: downloadClick + }) }) @@ -112,6 +120,9 @@ onMounted(() => { + + + @@ -121,6 +132,7 @@ onMounted(() => {
+