src/views/basicData/customerFile/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/basicData/supplierManage/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/views/basicData/customerFile/index.vue
@@ -16,6 +16,7 @@ <div> <el-button type="primary" @click="openForm('add')">新增客户</el-button> <el-button @click="handleOut">导出</el-button> <el-button type="info" plain icon="Upload" @click="handleImport">导入</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> @@ -111,6 +112,25 @@ </div> </template> </el-dialog> <!-- 用户导入对话框 --> <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body> <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers" :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading" :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag> <el-icon class="el-icon--upload"><upload-filled /></el-icon> <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div> <template #tip> <div class="el-upload__tip text-center"> <span>仅允许导入xls、xlsx格式文件。</span> <el-link type="primary" :underline="false" style="font-size: 12px; vertical-align: baseline" @click="importTemplate">下载模板</el-link> </div> </template> </el-upload> <template #footer> <div class="dialog-footer"> <el-button type="primary" @click="submitFileForm">确 定</el-button> <el-button @click="upload.open = false">取 消</el-button> </div> </template> </el-dialog> </div> </template> @@ -121,6 +141,7 @@ import {ElMessageBox } from "element-plus"; import {userListNoPage} from "@/api/system/user.js"; import useUserStore from "@/store/modules/user" import {getToken} from "@/utils/auth.js"; const { proxy } = getCurrentInstance() const userStore = useUserStore() @@ -228,6 +249,18 @@ } }) const upload = reactive({ // 是否显示弹出层(客户导入) open: false, // 弹出层标题(客户导入) title: "", // 是否禁用上传 isUploading: false, // 设置上传的请求头部 headers: { Authorization: "Bearer " + getToken() }, // 上传的地址 url: import.meta.env.VITE_APP_BASE_API + "/basic/customer/importData" }) const { searchForm, form, rules } = toRefs(data) // 查询列表 @@ -253,6 +286,15 @@ const handleSelectionChange = (selection) => { selectedRows.value = selection } /** 提交上传文件 */ function submitFileForm() { proxy.$refs["uploadRef"].submit() } /** 导入按钮操作 */ function handleImport() { upload.title = "客户导入" upload.open = true } // 打开弹框 const openForm = (type, row) => { operationType.value = type src/views/basicData/supplierManage/index.vue
@@ -16,6 +16,7 @@ <div> <el-button type="primary" @click="openForm('add')">新增供应商</el-button> <el-button @click="handleOut">导出</el-button> <el-button type="info" plain icon="Upload" @click="handleImport">导入</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> @@ -104,6 +105,26 @@ </div> </template> </el-dialog> <!-- 供应商导入对话框 --> <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body> <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers" :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading" :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag> <el-icon class="el-icon--upload"><upload-filled /></el-icon> <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div> <template #tip> <div class="el-upload__tip text-center"> <span>仅允许导入xls、xlsx格式文件。</span> <el-link type="primary" :underline="false" style="font-size: 12px; vertical-align: baseline" @click="importTemplate">下载模板</el-link> </div> </template> </el-upload> <template #footer> <div class="dialog-footer"> <el-button type="primary" @click="submitFileForm">确 定</el-button> <el-button @click="upload.open = false">取 消</el-button> </div> </template> </el-dialog> </div> </template> @@ -115,6 +136,7 @@ import {userListNoPage} from "@/api/system/user.js"; import {addSupplier,getSupplier,listSupplier,updateSupplier} from "@/api/basicData/supplierManageFile.js"; import useUserStore from "@/store/modules/user" import {getToken} from "@/utils/auth.js"; const { proxy } = getCurrentInstance() const userStore = useUserStore() @@ -228,6 +250,10 @@ page.size = obj.limit; getList() } /** 提交上传文件 */ function submitFileForm() { proxy.$refs["uploadRef"].submit() } const getList = () => { tableLoading.value = true listSupplier({...searchForm.value, ...page}).then(res => { @@ -236,6 +262,23 @@ total.value = res.data.total }) } const upload = reactive({ // 是否显示弹出层(供应商导入) open: false, // 弹出层标题(供应商导入) title: "", // 是否禁用上传 isUploading: false, // 设置上传的请求头部 headers: { Authorization: "Bearer " + getToken() }, // 上传的地址 url: import.meta.env.VITE_APP_BASE_API + "/system/supplier/import" }) /** 导入按钮操作 */ function handleImport() { upload.title = "供应商导入" upload.open = true } // 表格选择数据 const handleSelectionChange = (selection) => { selectedRows.value = selection