diff --git a/src/api/indexCourse.js b/src/api/indexCourse.js index 0d943aba..989f1129 100644 --- a/src/api/indexCourse.js +++ b/src/api/indexCourse.js @@ -75,7 +75,7 @@ export const getExquisiteCoursePage = (params) => export const getExquisiteYearList = (params) => http.post("/quality/manage/createYearList", params) export const getExport = (params) => - http.post("/quality/manage/export", params,{ responseType: 'blob' }) + http.post("/quality/manage/export", params) // 标记/导入标记 export const getMark = (params) => http.post("/quality/manage/mark", params) diff --git a/src/hooks/useDownload.js b/src/hooks/useDownload.js index 7bd04a3c..1739d7d4 100644 --- a/src/hooks/useDownload.js +++ b/src/hooks/useDownload.js @@ -1,14 +1,19 @@ 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') => { +const useDownload = (url, params = {}, fileName = '导出文件', fileType = 'xls', mimeType = 'application/vnd.ms-excel;charset=UTF-8', useSysApi = true) => { + const request = useSysApi ? http : httpBase; + return new Promise((resolve, reject) => { - http.post(url, params, { responseType: 'blob' }) + request.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 1cd41776..fa4a5001 100644 --- a/src/views/courselibrary/CourseExquisite.vue +++ b/src/views/courselibrary/CourseExquisite.vue @@ -172,6 +172,7 @@ 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, @@ -181,7 +182,6 @@ import { getExport } from "@/api/indexCourse"; import * as moment from "moment"; -import useDownload from "@/hooks/useDownload"; export default defineComponent({ components: {}, @@ -613,7 +613,7 @@ export default defineComponent({ console.log("state.tableData1", state.tableData1); }; - getTableDate(); + // getTableDate(); // 初始化年份选项 const initializeYearOptions = async () => { @@ -631,7 +631,7 @@ export default defineComponent({ const getSysTypeMap = (code) => { if (code == "") return // console.log(store.state.sysTypeMap, 'map集合'); - return store.state.sysTypeMap.get(code) + // return store.state.sysTypeMap.get(code) } getSysTypeMap() @@ -652,11 +652,11 @@ export default defineComponent({ years: state.years // 添加年份参数 }) getTableDate(); - }; - // 全部导出 + }; // 全部导出 const exportAll = async () => { try { - let res = await getExport( + await useDownload( + "/quality/manage/export", { courseNameOrTeacherName: state.courseNameOrTeacherName, courseSource: state.courseSource, @@ -664,17 +664,15 @@ export default defineComponent({ sysType: state.sysTypeId, }, "精品课程导出", - "xlsx" + "xlsx", + "application/vnd.ms-excel;charset=UTF-8", + false ); - if (res.data.data.status == 200) { - message.success(res.data.data.message); - // 重新加载数据 - getTableDate(); - } else { - message.error(res.data.data.message); - } + message.success("导出成功"); + getTableDate(); } catch (error) { console.error("导出失败:", error); + message.error("导出失败"); } }; // 导入标记