applications/task-work-order/src/views/orderView/organizational/agenciesManagement/index.vue
@@ -99,7 +99,7 @@ append-to-body v-model="isShowImportView" title="导入机构" :width="pxToRem(600)" :width="pxToRem(500)" :close-on-click-modal="false" :destroy-on-close="true" @close="handleImportClose" @@ -115,10 +115,13 @@ </el-button> </el-form-item> <el-form-item label="上传文件" prop="file"> {{ importFileName }} <el-upload class="avatar-uploader" action="" :show-file-list="false" :before-upload="onImportFileBefore"> <el-button type="primary">点击上传</el-button> </el-upload> <div class="upload-tip"> {{ importFileName }} </div> </el-form-item> </el-form> <template #footer> @@ -344,9 +347,6 @@ // 上传文件前处理 function onImportFileBefore(file) { // 提示请先导出模板 // ElMessage.warning('请先导出模板并按模板格式填写数据') // 检查文件类型 const allowedTypes = ['.xlsx', '.xls'] const fileExtension = file.name.substring(file.name.lastIndexOf('.')).toLowerCase() @@ -354,21 +354,11 @@ ElMessage.error('请上传Excel文件(.xlsx 或 .xls)') return false } let data = new FormData() data.append('file', file) agenciesImportApi(data, { isCovered: importParams.value.isCovered }).then(res => { if (res.data.code === 200) { ElMessage.success('导入成功') // 保存文件名 importFileName.value = file.name importParams.value.file = file isShowImportView.value = false getList() } else { ElMessage.error(res.msg || '导入失败') } }) // 保存文件名和文件对象 importFileName.value = file.name importParams.value.file = file ElMessage.success('上传成功') return false // 阻止组件的默认上传行为 } @@ -384,8 +374,19 @@ ElMessage.error('请先上传文件') return } // 触发上传操作 await onImportFileBefore(importParams.value.file) // 构建表单数据并调用导入接口 let data = new FormData() data.append('file', importParams.value.file) const res = await agenciesImportApi(data, { isCovered: importParams.value.isCovered }) if (res.data.code === 200) { ElMessage.success('导入成功') isShowImportView.value = false getList() } else { ElMessage.error(res.msg || '导入失败') } } finally { importSubmitting.value = false } @@ -422,4 +423,7 @@ </script> <style scoped lang="scss"> .upload-tip { margin-left: 5px; } </style> applications/task-work-order/src/views/orderView/organizational/zoningManagement/index.vue
@@ -96,7 +96,7 @@ append-to-body v-model="isShowImportView" title="导入区划" :width="pxToRem(600)" :width="pxToRem(500)" :close-on-click-modal="false" :destroy-on-close="true" @close="handleImportClose" @@ -114,10 +114,12 @@ </el-button> </el-form-item> <el-form-item label="上传文件" prop="file"> {{ importFileName }} <el-upload class="avatar-uploader" action="" :show-file-list="false" :before-upload="onImportFileBefore"> <el-button type="primary">点击上传</el-button> </el-upload> <div class="upload-tip"> {{ importFileName }} </div> </el-form-item> </el-form> <template #footer> @@ -304,9 +306,6 @@ // 上传文件前处理 function onImportFileBefore(file) { // 提示请先导出模板 // ElMessage.warning('请先导出模板并按模板格式填写数据') // 检查文件类型 const allowedTypes = ['.xlsx', '.xls'] const fileExtension = file.name.substring(file.name.lastIndexOf('.')).toLowerCase() @@ -314,21 +313,11 @@ ElMessage.error('请上传Excel文件(.xlsx 或 .xls)') return false } let data = new FormData() data.append('file', file) zoningImportApi(data, { isCovered: importParams.value.isCovered }).then(res => { if (res.data.code === 200) { ElMessage.success('导入成功') // 保存文件名 importFileName.value = file.name importParams.value.file = file isShowImportView.value = false getList() } else { ElMessage.error(res.msg || '导入失败') } }) // 保存文件名和文件对象 importFileName.value = file.name importParams.value.file = file ElMessage.success('上传成功') return false // 阻止组件的默认上传行为 } @@ -344,8 +333,18 @@ ElMessage.error('请先上传文件') return } // 触发上传操作 await onImportFileBefore(importParams.value.file) // 构建表单数据并调用导入接口 let data = new FormData() data.append('file', importParams.value.file) const res = await zoningImportApi(data, { isCovered: importParams.value.isCovered }) if (res.data.code === 200) { ElMessage.success('导入成功') isShowImportView.value = false getList() } else { ElMessage.error(res.msg || '导入失败') } } finally { importSubmitting.value = false } @@ -381,4 +380,7 @@ </script> <style scoped lang="scss"> .upload-tip { margin-left: 5px; } </style>