From 4f2c8ee38607730ed7561cd814e26b91c6dd53f5 Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期二, 17 六月 2025 09:07:19 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- src/views/basicData/customerFile/index.vue | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/src/views/basicData/customerFile/index.vue b/src/views/basicData/customerFile/index.vue index 640d651..d67c4b6 100644 --- a/src/views/basicData/customerFile/index.vue +++ b/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>浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢銆�</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 -- Gitblit v1.9.3