From 26e43ae624b57d84f02cbd7c01b53b43059d6bd6 Mon Sep 17 00:00:00 2001 From: wuyize Date: Wed, 13 Jul 2022 15:44:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=AF=BC=E5=85=A5=E8=B4=A6?= =?UTF-8?q?=E5=8F=B7=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 11 +++++++++++ package.json | 1 + src/views/Home.vue | 41 ++++++++++++++++++++++++++--------------- 3 files changed, 38 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 69b403b..f04872e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,6 +15,7 @@ "echarts": "^5.3.3", "element-plus": "^2.2.6", "moment": "^2.29.1", + "spark-md5": "^3.0.2", "vue": "^3.0.0", "vue-router": "^4.0.0-0", "vuex": "^4.0.2", @@ -12665,6 +12666,11 @@ "resolved": "https://registry.npmmirror.com/sourcemap-codec/download/sourcemap-codec-1.4.8.tgz", "integrity": "sha1-6oBL2UhXQC5pktBaOO8a41qatMQ=" }, + "node_modules/spark-md5": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/spark-md5/-/spark-md5-3.0.2.tgz", + "integrity": "sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==" + }, "node_modules/spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmmirror.com/spdx-correct/download/spdx-correct-3.1.1.tgz", @@ -25999,6 +26005,11 @@ "resolved": "https://registry.npmmirror.com/sourcemap-codec/download/sourcemap-codec-1.4.8.tgz", "integrity": "sha1-6oBL2UhXQC5pktBaOO8a41qatMQ=" }, + "spark-md5": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/spark-md5/-/spark-md5-3.0.2.tgz", + "integrity": "sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==" + }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmmirror.com/spdx-correct/download/spdx-correct-3.1.1.tgz", diff --git a/package.json b/package.json index 668e2f3..644942d 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "echarts": "^5.3.3", "element-plus": "^2.2.6", "moment": "^2.29.1", + "spark-md5": "^3.0.2", "vue": "^3.0.0", "vue-router": "^4.0.0-0", "vuex": "^4.0.2", diff --git a/src/views/Home.vue b/src/views/Home.vue index 16a0775..266b30f 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -78,7 +78,7 @@ @@ -95,7 +95,6 @@ import {UploadFilled} from '@element-plus/icons' import request from "@/utils/request"; import router from "../router"; import {ElMessage} from "element-plus"; -import md5 from 'blueimp-md5' export default { name: 'Home', @@ -126,20 +125,32 @@ export default { }, methods: { customUpload(options) { + const that = this let param = new FormData() - param.append('fileDigest', md5(options.file)) - param.append('uploadFile', options.file) - request({ - url: '/staff/import', - data: param, - method: 'post', - onUploadProgress: progressEvent => { - progressEvent.percent = progressEvent.loaded / progressEvent.total * 100 | 0 - options.onProgress(progressEvent) - } - }).then((res) => { - console.log(res.data); - }) + const fileReader = new FileReader() + fileReader.readAsBinaryString(options.file); + fileReader.onload = e => { + console.log(e.target.result) + let SparkMD5 = require('spark-md5') + param.append('fileDigest', SparkMD5.hashBinary(e.target.result)) + param.append('uploadFile', options.file) + request({ + url: '/staff/import', + data: param, + method: 'post', + onUploadProgress: progressEvent => { + progressEvent.percent = progressEvent.loaded / progressEvent.total * 100 | 0 + options.onProgress(progressEvent) + } + }).then((res) => { + console.log(res.data); + ElMessage({ + message: '导入成功', + type: 'success', + }) + that.uploadDialogVisible = false + }) + } }, getStaffFullname() { if (this.$store && this.$store.state.staff)