diff --git a/src/views/bg/xispeak/BgXiSpeak.api.ts b/src/views/bg/xispeak/BgXiSpeak.api.ts index c8e34c1..6fba2be 100644 --- a/src/views/bg/xispeak/BgXiSpeak.api.ts +++ b/src/views/bg/xispeak/BgXiSpeak.api.ts @@ -12,6 +12,7 @@ enum Api { exportXls = '/bg/xispeak/bgXiSpeak/exportXls', exportXlsHeaders = '/bg/xispeak/bgXiSpeak/exportXlsHeaders', importExcelByEasyExcel = '/bg/xispeak/bgXiSpeak/importExcelByEasyExcel', + checkExcelByEasyExcel = '/bg/xispeak/bgXiSpeak/checkExcelByEasyExcel', loadTreeData = '/bg/xispeak/bgXiSpeak/loadTreeRoot', getChildList = '/bg/xispeak/bgXiSpeak/childList', getChildListBatch = '/bg/xispeak/bgXiSpeak/getChildListBatch', @@ -28,6 +29,8 @@ export const getExportXlsHeadersUrl = Api.exportXlsHeaders; export const getImportExcelByEasyExcelUrl = Api.importExcelByEasyExcel; +export const getCheckExcelByEasyExcelUrl = Api.checkExcelByEasyExcel; + /** * 导入api * @param params diff --git a/src/views/bg/xispeak/BgXiSpeakList.vue b/src/views/bg/xispeak/BgXiSpeakList.vue index b089d96..a96e2da 100644 --- a/src/views/bg/xispeak/BgXiSpeakList.vue +++ b/src/views/bg/xispeak/BgXiSpeakList.vue @@ -46,6 +46,9 @@ 下载模板 + 模板校验 模板导入 @@ -123,6 +126,7 @@ import { defHttp } from '/@/utils/http/axios'; getImportUrl, getExportXlsHeadersUrl, getImportExcelByEasyExcelUrl, + getCheckExcelByEasyExcelUrl, getChildList, getChildListBatch, updateLaunchType, @@ -802,6 +806,25 @@ import { defHttp } from '/@/utils/http/axios'; await defHttp.uploadFile({ url: getImportExcelByEasyExcelUrl }, { file: data.file }, { success: isReturn }); } + async function handleCheckExcel(data) { + const isReturn = (fileInfo) => { + try { + if (fileInfo.code === 500 || fileInfo.code === 510) { + if (fileInfo.result && Array.isArray(fileInfo.result) && fileInfo.result.length > 0) { + showImportValidationErrors(fileInfo.message || `${data.file.name} 校验失败`, fileInfo.result); + } else { + createMessage.error(fileInfo.message || `${data.file.name} 校验失败`); + } + } else { + createMessage.success(fileInfo.message || `${data.file.name} 校验通过`); + } + } catch { + // ignore + } + }; + await defHttp.uploadFile({ url: getCheckExcelByEasyExcelUrl }, { file: data.file }, { success: isReturn }); + } + function clearQueryParams() { Object.keys(queryParam.value).forEach((key) => { delete queryParam.value[key];