From d8958d5d35a6c0e924833b3960f876b360a3e561 Mon Sep 17 00:00:00 2001 From: "dong.ai" Date: Sat, 13 Sep 2025 13:43:03 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=98=E5=8E=9F=E9=A1=B5=E9=9D=A2=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=AF=BC=E5=85=A5=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/CommonAlert.vue | 12 +++++++-- src/hooks/useDownload.js | 8 ++---- src/views/courselibrary/CourseExquisite.vue | 29 ++++++++++++--------- 3 files changed, 28 insertions(+), 21 deletions(-) diff --git a/src/components/common/CommonAlert.vue b/src/components/common/CommonAlert.vue index 97c8af4e..1231dbeb 100644 --- a/src/components/common/CommonAlert.vue +++ b/src/components/common/CommonAlert.vue @@ -24,10 +24,10 @@
-
取消
+
{{ cancelText }}
-
确定
+
{{ okText }}
@@ -73,6 +73,14 @@ const props = defineProps({ isCloseBtn: { type: Boolean, default: true + }, + okText: { + type: String, + default: "确定" + }, + cancelText: { + type: String, + default: "取消" } }); const types = { diff --git a/src/hooks/useDownload.js b/src/hooks/useDownload.js index 1739d7d4..c0e69fc6 100644 --- a/src/hooks/useDownload.js +++ b/src/hooks/useDownload.js @@ -1,19 +1,15 @@ import http from "@/api/configSys"; -import httpBase from "@/api/config"; - /** * @param {String} url [请求的url地址] * @param {Object} params [参数] * @param {String} fileName [导出文件名称] 默认值 导出文件 * @param {String} fileType [导出文件类型] 默认值 xls * @param {string} mimeType [导出文件类型] - * @param {boolean} useSysApi [是否使用系统API] 默认值 true */ -const useDownload = (url, params = {}, fileName = '导出文件', fileType = 'xls', mimeType = 'application/vnd.ms-excel;charset=UTF-8', useSysApi = true) => { - const request = useSysApi ? http : httpBase; +const useDownload = (url, params = {}, fileName = '导出文件', fileType = 'xls', mimeType = 'application/vnd.ms-excel;charset=UTF-8') => { return new Promise((resolve, reject) => { - request.post(url, params, { responseType: 'blob' }) + http.post(url, params, { responseType: 'blob' }) .then(res => { resolve(res.data); if (!res.data) { diff --git a/src/views/courselibrary/CourseExquisite.vue b/src/views/courselibrary/CourseExquisite.vue index a8f6aff4..ef3cdf8b 100644 --- a/src/views/courselibrary/CourseExquisite.vue +++ b/src/views/courselibrary/CourseExquisite.vue @@ -172,7 +172,6 @@ import { useStore } from "vuex"; import { message } from "ant-design-vue"; import dialog from "@/utils/dialog"; import "@wangeditor/editor/dist/css/style.css"; -import useDownload from '@/hooks/useDownload' import { getExquisiteCoursePage, getExquisiteYearList, @@ -182,6 +181,7 @@ import { getExport } from "@/api/indexCourse"; import * as moment from "moment"; +import useDownload from "@/hooks/useDownload"; export default defineComponent({ components: {}, @@ -652,11 +652,11 @@ export default defineComponent({ years: state.years // 添加年份参数 }) getTableDate(); - }; // 全部导出 + }; + // 全部导出 const exportAll = async () => { try { - await useDownload( - "/quality/manage/export", + let res = await getExport( { courseNameOrTeacherName: state.courseNameOrTeacherName, courseSource: state.courseSource, @@ -664,15 +664,17 @@ export default defineComponent({ sysType: state.sysTypeId, }, "精品课程导出", - "xlsx", - "application/vnd.ms-excel;charset=UTF-8", - false + "xlsx" ); - message.success("导出成功"); - getTableDate(); + if (res.data.data.status == 200) { + message.success(res.data.data.message); + // 重新加载数据 + getTableDate(); + } else { + message.error(res.data.data.message); + } } catch (error) { console.error("导出失败:", error); - message.error("导出失败"); } }; // 导入标记 @@ -713,14 +715,15 @@ export default defineComponent({ // 重新加载数据 getTableDate(); } else { - dialog({ content: res.data.data.message, ok: okMarkT() }); - message.error(res.data.data.message); + state.importMarkVisible = false; + dialog({ content: res.data.data.message, ok: okMarkT(), okText: "重新输入" }); + // message.error(res.data.data.message); } // 重新加载数据 getTableDate(); } const okMarkT=()=>{ - + } // 导入标记弹窗取消