From 5db297a6ffda35d18c1443a111a95b4bd140f78c Mon Sep 17 00:00:00 2001 From: wangyan <377079544@qq.com> Date: Mon, 23 Aug 2021 11:30:35 +0800 Subject: [PATCH 1/2] =?UTF-8?q?change:=E6=B7=BB=E5=8A=A0=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E8=BF=9B=E5=BA=A6=E6=9D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Magic.Core/Service/File/SysFileService.cs | 2 +- backend/Magic.Web.Entry/Magic.db | Bin 2985984 -> 2985984 bytes frontend/package-lock.json | 116 ++++++++++++------ frontend/src/api/modular/system/fileManage.js | 11 +- frontend/src/main.js | 3 +- frontend/src/views/system/file/index.vue | 32 ++++- 6 files changed, 124 insertions(+), 40 deletions(-) diff --git a/backend/Magic.Core/Service/File/SysFileService.cs b/backend/Magic.Core/Service/File/SysFileService.cs index b18280b..595ce72 100644 --- a/backend/Magic.Core/Service/File/SysFileService.cs +++ b/backend/Magic.Core/Service/File/SysFileService.cs @@ -238,7 +238,7 @@ namespace Magic.Core.Service FileSizeKb = fileSizeKb.ToString(), FilePath = pathType }; - newFile = await App.GetService().Insertable(newFile).ExecuteReturnEntityAsync(); + newFile = await App.GetService().Insertable(newFile).CallEntityMethod(m=>m.Create()).ExecuteReturnEntityAsync(); var finalName = newFile.FileObjectName; // 生成文件的最终名称 if (fileLocation == FileLocation.LOCAL) // 本地存储 diff --git a/backend/Magic.Web.Entry/Magic.db b/backend/Magic.Web.Entry/Magic.db index 3428891a7a2ab0aba89ecc26fad2223f320080a9..1d7b589d5c3bb46f4d1ef860f25c7a82e6ed8f2a 100644 GIT binary patch delta 645 zcmaLS%}*0y5C`D>=oc!K+A311ZEZnIx68i!?z`>QgK4oBAwdmVJwXFi8w+i0q3Wq* z1umMvfz%_OOf;An6E+bOJ$bDEfw!g}_2jYs4BW-NH(_{(kT4fa28$1u-Jj9@pl|m3womr5gXs zZ1*HM2gl$zoPd5905=SR2Tp<)d~ga*!w{T-VerFQ7=ZwsgCK+; z4Cf&NQ5c0WxBwR+2IE${7uQ2#MD(?sAt~b!zll#opB4VWe-Xq5v(d_oNfTL`FD)-t z8a1M*ib@hnDxuO4A!$`lQz|n;Q`9iN@2_`1yz0Jv+1=XcY`-X&tNmQuHOg^;pzCsr z--t)qfA$b2CkseHKbV>Bvqn2}C z3fObyr+Ob}I3|PPxTAixmbrF4r`@RD&d+3*wW--gv6SJswWWupQ2y_KHCam;3enUS Re_xU|cZ!m=Q%pP<{|!;*01N;C delta 355 zcmWN>O-sUH00;1GkIr6w$=)>0nXAlg@od^qJK3yD5J*sTnn5zeMAC@rWO(q>q42P) z(5>hYK|A&h?5lL>&>>j=!|&G}ez0A5h;r%Q$Jh>jt3H1^p&@w+yuW_=X;=$#B*k@Z zI_7!HGOy|#_NO;;`y-bH4hVR_3q1H>48~ysCSeMu!4CllLI`Fc46`r?^RNJm5P>Kx zK@8%s3<(e*2`i8S5msRh)*%fWka0$?qzgpwlx?3Nmz?A``$x!W@6vt|N_^$WqK9VgtWEbyhH=oS>^E*tEQYyjw(G*NMm1HTc}1my dN{iWSF{f|ph3r;dw=WbT^#?WC8Pt?!<{!G&p$7l} diff --git a/frontend/package-lock.json b/frontend/package-lock.json index fc4fc55..fe1ba58 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -2675,17 +2675,6 @@ "unique-filename": "^1.1.1" } }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-6.0.0.tgz?cache=0&sync_timestamp=1604880017635&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-6.0.0.tgz", @@ -2737,18 +2726,6 @@ "supports-color": "^7.0.0" } }, - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "optional": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz?cache=0&sync_timestamp=1607433856030&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.2.tgz", @@ -2806,18 +2783,6 @@ "webpack-sources": "^1.4.3" } }, - "vue-loader-v16": { - "version": "npm:vue-loader@16.5.0", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.5.0.tgz", - "integrity": "sha512-WXh+7AgFxGTgb5QAkQtFeUcHNIEq3PGVQ8WskY5ZiFbWBkOwcCPRs4w/2tVyTbh2q6TVRlO3xfvIukUtjsu62A==", - "dev": true, - "optional": true, - "requires": { - "chalk": "^4.1.0", - "hash-sum": "^2.0.0", - "loader-utils": "^2.0.0" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-6.2.0.tgz", @@ -16781,6 +16746,87 @@ } } }, + "vue-loader-v16": { + "version": "npm:vue-loader@16.5.0", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.5.0.tgz", + "integrity": "sha512-WXh+7AgFxGTgb5QAkQtFeUcHNIEq3PGVQ8WskY5ZiFbWBkOwcCPRs4w/2tVyTbh2q6TVRlO3xfvIukUtjsu62A==", + "dev": true, + "optional": true, + "requires": { + "chalk": "^4.1.0", + "hash-sum": "^2.0.0", + "loader-utils": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "optional": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "optional": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "optional": true + }, + "loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "dev": true, + "optional": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "optional": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "vue-ls": { "version": "3.2.2", "resolved": "https://registry.npm.taobao.org/vue-ls/download/vue-ls-3.2.2.tgz", diff --git a/frontend/src/api/modular/system/fileManage.js b/frontend/src/api/modular/system/fileManage.js index 389ccdb..efa25fb 100644 --- a/frontend/src/api/modular/system/fileManage.js +++ b/frontend/src/api/modular/system/fileManage.js @@ -32,13 +32,20 @@ export function sysFileInfoList (parameter) { * 上传文件 * * @author yubaoshan + * @change benxin 2021-08-23 * @date 2020/6/30 00:20 */ -export function sysFileInfoUpload (parameter) { +export function sysFileInfoUpload (parameter,callback) { return axios({ url: '/sysFileInfo/upload', method: 'post', - data: parameter + data: parameter, + timeout:0, + onUploadProgress: progressEvent => { + let process = (progressEvent.loaded / progressEvent.total * 100 | 0) + // console.log(process) + callback(progressEvent) + } }) } diff --git a/frontend/src/main.js b/frontend/src/main.js index ccd7793..0ccc1eb 100644 --- a/frontend/src/main.js +++ b/frontend/src/main.js @@ -7,7 +7,8 @@ import router from './router' import store from './store/' import { VueAxios } from './utils/request' // WARNING: `mockjs` NOT SUPPORT `IE` PLEASE DO NOT USE IN `production` ENV. -import './mock' +// 禁用mock,解决回调失败的问题 +// import './mock' import bootstrap from './core/bootstrap' import './core/lazy_use' diff --git a/frontend/src/views/system/file/index.vue b/frontend/src/views/system/file/index.vue index d364d14..f8c6b38 100644 --- a/frontend/src/views/system/file/index.vue +++ b/frontend/src/views/system/file/index.vue @@ -85,6 +85,18 @@ + @@ -104,6 +116,12 @@ }, data () { return { + //文件上传进度弹窗 + uploadModal:false, + //文件上传进度,单位% + percent:0, + //后台处理中状态 + backStatus:false, // 高级搜索 展开/关闭 advanced: false, // 查询参数 @@ -237,7 +255,19 @@ customRequest (data) { const formData = new FormData() formData.append('file', data.file) - sysFileInfoUpload(formData).then((res) => { + formData.append('group',"default") + sysFileInfoUpload(formData,(res)=>{ + //上传进度回调函数 + this.uploadModal = true + var loaded = res.loaded + var total = res.total + this.percent = (loaded/total).toFixed(2)*100 + if(this.percent == 100){ + this.backStatus = true + } + + }).then((res) => { + this.uploadModal = false if (res.success) { this.$message.success('上传成功') this.$refs.table.refresh() -- Gitee From f957e2c625382dc670151567aae2671b25f34732 Mon Sep 17 00:00:00 2001 From: wangyan <377079544@qq.com> Date: Tue, 24 Aug 2021 15:44:50 +0800 Subject: [PATCH 2/2] =?UTF-8?q?change=EF=BC=9A=E6=96=87=E4=BB=B6=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E8=BF=9B=E5=BA=A6=E6=9D=A1=E4=BF=AE=E6=94=B9=20Signed?= =?UTF-8?q?-off-by:=20wangyan=20<377079544@qq.com>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/system/file/index.vue | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/frontend/src/views/system/file/index.vue b/frontend/src/views/system/file/index.vue index f8c6b38..571f939 100644 --- a/frontend/src/views/system/file/index.vue +++ b/frontend/src/views/system/file/index.vue @@ -88,13 +88,13 @@ @@ -122,6 +122,8 @@ percent:0, //后台处理中状态 backStatus:false, + //文件上传弹窗标题 + uploadTitle:'文件正在上传中...', // 高级搜索 展开/关闭 advanced: false, // 查询参数 @@ -259,17 +261,22 @@ sysFileInfoUpload(formData,(res)=>{ //上传进度回调函数 this.uploadModal = true + this.uploadTitle="文件正在上传中..." var loaded = res.loaded - var total = res.total + var total = Number(res.total) +100 + var Atotal = res.total this.percent = (loaded/total).toFixed(2)*100 - if(this.percent == 100){ - this.backStatus = true + var Apercent = (loaded/Atotal).toFixed(2)*100 + if(Apercent == 100){ + this.uploadTitle="上传成功,服务器处理中..." } }).then((res) => { this.uploadModal = false if (res.success) { - this.$message.success('上传成功') + //this.$message.success('上传成功') + + this.percent = 100 this.$refs.table.refresh() } else { this.$message.error('上传失败:' + res.message) -- Gitee