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]; diff --git a/src/views/dq/inspectTask/DqInspectTask.api.ts b/src/views/dq/inspectTask/DqInspectTask.api.ts index 4271d8d..f6e5b6c 100644 --- a/src/views/dq/inspectTask/DqInspectTask.api.ts +++ b/src/views/dq/inspectTask/DqInspectTask.api.ts @@ -11,10 +11,14 @@ enum Api { deleteOne = '/dqinspecttask/dqInspectTask/delete', deleteBatch = '/dqinspecttask/dqInspectTask/deleteBatch', importExcel = '/dqinspecttask/dqInspectTask/importExcel', + importExcelByEasyExcel = '/dqinspecttask/dqInspectTask/importExcelByEasyExcel', + checkExcelByEasyExcel = '/dqinspecttask/dqInspectTask/checkExcelByEasyExcel', exportXls = '/dqinspecttask/dqInspectTask/exportXls', + exportXlsHeaders = '/dqinspecttask/dqInspectTask/exportXlsHeaders', queryDataById = '/dqinspecttask/dqInspectTask/queryById', dqInspectProgressList = '/dqinspecttask/dqInspectTask/queryDqInspectProgressByMainId', specificProblemOptions = '/dqinspectproblem/dqInspectProblem/specificOptions', + } /** * 导出api @@ -27,6 +31,12 @@ export const getExportUrl = Api.exportXls; */ export const getImportUrl = Api.importExcel; +export const getImportExcelByEasyExcelUrl = Api.importExcelByEasyExcel; + +export const getCheckExcelByEasyExcelUrl = Api.checkExcelByEasyExcel; + +export const getExportXlsHeadersUrl = Api.exportXlsHeaders; + /** * 查询子表数据 * @param params diff --git a/src/views/dq/inspectTask/DqInspectTaskList.vue b/src/views/dq/inspectTask/DqInspectTaskList.vue index 647ba17..e2281ff 100644 --- a/src/views/dq/inspectTask/DqInspectTaskList.vue +++ b/src/views/dq/inspectTask/DqInspectTaskList.vue @@ -58,9 +58,35 @@ 导出 - 导入 + 下载模板 + 模板校验 + 模板导入 +