From 61c286349c3448cf2ce8e51a9a40442e966dca15 Mon Sep 17 00:00:00 2001 From: RenCheng Date: Thu, 20 Feb 2025 17:22:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0MD5=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E5=88=87=E7=89=87=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 7 +- src/api/fileDataLink.js | 6 +- src/api/manage.js | 29 ++ src/views/datalink/modules/SliceUpload.vue | 440 +++++++++++++++++++ src/views/datalink/modules/uploadModal.vue | 139 +----- src/views/datalink/waterDocuments.vue | 39 +- src/views/fileManage/index.vue | 47 +- src/views/fileManage/modules/SliceUpload.vue | 440 +++++++++++++++++++ src/views/fileManage/modules/uploadModal.vue | 76 ++++ yarn.lock | 32 +- 10 files changed, 1046 insertions(+), 209 deletions(-) create mode 100644 src/views/datalink/modules/SliceUpload.vue create mode 100644 src/views/fileManage/modules/SliceUpload.vue create mode 100644 src/views/fileManage/modules/uploadModal.vue diff --git a/package.json b/package.json index 00fb476..84c1526 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "md5": "^2.2.1", "npm": "^6.14.11", "nprogress": "^0.2.0", + "spark-md5": "^3.0.2", "tinymce": "^5.3.2", "viser-vue": "^2.4.8", "vue": "^2.6.10", @@ -56,13 +57,13 @@ "@vue/cli-service": "^3.3.0", "@vue/eslint-config-standard": "^4.0.0", "babel-eslint": "7.2.3", + "compression-webpack-plugin": "^3.1.0", "eslint": "^5.16.0", "eslint-plugin-vue": "^5.1.0", + "html-webpack-plugin": "^4.2.0", "less": "^3.9.0", "less-loader": "^4.1.0", - "vue-template-compiler": "^2.6.10", - "html-webpack-plugin": "^4.2.0", - "compression-webpack-plugin": "^3.1.0" + "vue-template-compiler": "^2.6.10" }, "eslintConfig": { "root": true, diff --git a/src/api/fileDataLink.js b/src/api/fileDataLink.js index 8bc7247..8ae2596 100644 --- a/src/api/fileDataLink.js +++ b/src/api/fileDataLink.js @@ -2,11 +2,11 @@ import { getAction, deleteAction, putAction, postAction, httpAction,uploadAction const getFileLinkInfo = (params)=>getAction("/fileDataLink/getFileLinkInfo",params); const processFile = (params)=>postAction("/fileDataLink/processFile",params); - - +const fileDataLinkDelete = (params)=>deleteAction("/fileDataLink/delete",params); export { getFileLinkInfo, - processFile + processFile, + fileDataLinkDelete } diff --git a/src/api/manage.js b/src/api/manage.js index 48f8618..df5f61e 100644 --- a/src/api/manage.js +++ b/src/api/manage.js @@ -142,6 +142,35 @@ export function downloadFile(url, fileName, parameter) { }) } +/** +* 下载文件 +* @param url 文件路径 +* @param fileName 文件名 +* @param parameter +* @returns {*} +*/ +export function downloadFile2 (fileName, parameter, downloadUrl) { + return downFile(downloadUrl || fileApi.FileDown, parameter).then((data) => { + if (!data || data.size === 0) { + message.error('文件不存在,请重新上传文件') + return + } + if (typeof window.navigator.msSaveBlob !== 'undefined') { + window.navigator.msSaveBlob(new Blob([data]), fileName) + } else { + const url = window.URL.createObjectURL(new Blob([data])) + const link = document.createElement('a') + link.style.display = 'none' + link.href = url + link.setAttribute('download', fileName) + document.body.appendChild(link) + link.click() + document.body.removeChild(link) // 下载完成移除元素 + window.URL.revokeObjectURL(url) // 释放掉blob对象 + } + }) + } + /** * 文件上传 用于富文本上传图片 * @param url diff --git a/src/views/datalink/modules/SliceUpload.vue b/src/views/datalink/modules/SliceUpload.vue new file mode 100644 index 0000000..18fb017 --- /dev/null +++ b/src/views/datalink/modules/SliceUpload.vue @@ -0,0 +1,440 @@ + + + + + diff --git a/src/views/datalink/modules/uploadModal.vue b/src/views/datalink/modules/uploadModal.vue index 8c95c44..e1d697e 100644 --- a/src/views/datalink/modules/uploadModal.vue +++ b/src/views/datalink/modules/uploadModal.vue @@ -10,19 +10,14 @@ cancelText="关闭"> - - - - 选择文件夹上传(仅.txt/.csv) - - + @@ -31,96 +26,32 @@ import moment from "moment" import JCron from "@/components/jeecg/JCron"; import JSelectMultiple from '@/components/jeecg/JSelectMultiple' -import pick from 'lodash.pick' - +import SliceUpload from './SliceUpload' + export default { - name: "fileDataLinkModal", + name: "uploadModal", components: { JCron, - JSelectMultiple + JSelectMultiple, + SliceUpload }, data () { return { title:"操作", buttonStyle: 'solid', visible: false, - dateFormat:'YYYY-MM-DD HH:mm', - status:'', - model: {}, confirmLoading: false, - form: this.$form.createForm(this), strategys:[], - dataStrategySelected:'', - idcDataStrategyId:"", - shipMode:{}, - shipNum:{}, - rangeTime:[], - queryParam: { - pageNum :1, - pageSize:20 - }, - labelCol: { - xs: { span: 24 }, - sm: { span: 5 }, - }, - wrapperCol: { - xs: { span: 24 }, - sm: { span: 16 }, - }, + dataLinkType:'' } }, created () { - this.loadData(); + }, methods: { - loadData() { - shipModelPageList(this.queryParam).then((res) => { - if (res.success) { - this.shipMode = res.result.rows - } else { - this.$message.warning(res.message); - } - }); - shipNumPageList(this.queryParam).then((res) => { - if (res.success) { - this.shipNum = res.result.rows - } else { - this.$message.warning(res.message); - } - }); - }, - filterOption(input, option) { - return ( - option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0 - ); - }, - selectModel(value){ - shipNumQueryByModelId({modelId:value}).then((res) => { - if (res.success) { - this.shipNum = res.result - } else { - this.$message.warning(res.message); - } - }); - }, add () { - this.rangeTime=[]; - this.edit({}); - }, - edit (record) { this.visible =true; - let that = this; - that.form.resetFields(); - this.model = Object.assign({},record); - this.rangeTime.push(moment(this.model.startTime),moment(this.model.endTime)) - this.$nextTick(() => { - this.form.setFieldsValue(pick(this.model,'name','describe','shipModelId','shipNumId')); - }); - }, - onChange(value, dateString) { - this.model.startDate = dateString[0]; - this.model.endDate = dateString[1]; }, onOk(value) { this.model.startDate = moment(value[0],dateFormat); @@ -131,45 +62,7 @@ import pick from 'lodash.pick' this.visible = false; }, handleOk () { - const that = this; - // 触发表单验证 - this.form.validateFields((err, values) => { - console.log('values',values) - if (!err) { - that.confirmLoading = true; - if(!this.model.id){ - this.model.name = values.name; - this.model.shipModelId = values.shipModelId; - this.model.shipNumId = values.shipNumId; - this.model.describe = values.describe; - taskCreate(this.model).then((res)=>{ - if(res.success){ - that.$message.success(res.message); - that.$emit('ok'); - }else{ - that.$message.warning(res.message); - } - }).finally(() => { - that.confirmLoading = false; - that.close(); - }) - }else{ - taskUpdateById({id:this.model.id,name:values.name,describe:values.describe,shipModelId:values.shipModelId,shipNumId:values.shipNumId, - startTime:this.model.startTime,endTime:this.model.endTime - }).then((res)=>{ - if(res.success){ - that.$message.success(res.message); - that.$emit('ok'); - }else{ - that.$message.warning(res.message); - } - }).finally(() => { - that.confirmLoading = false; - that.close(); - }) - } - } - }) + this.close(); }, handleCancel () { this.close() diff --git a/src/views/datalink/waterDocuments.vue b/src/views/datalink/waterDocuments.vue index 49bc185..b198c7f 100644 --- a/src/views/datalink/waterDocuments.vue +++ b/src/views/datalink/waterDocuments.vue @@ -19,7 +19,7 @@ 查询 重置 - 上传 + 上传 @@ -60,19 +60,18 @@ - + + + diff --git a/src/views/fileManage/modules/uploadModal.vue b/src/views/fileManage/modules/uploadModal.vue new file mode 100644 index 0000000..e6c6d14 --- /dev/null +++ b/src/views/fileManage/modules/uploadModal.vue @@ -0,0 +1,76 @@ + + + + + \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index b66a01e..70e2975 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4489,7 +4489,7 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: dependencies: ms "2.1.2" -debuglog@*, debuglog@^1.0.1: +debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= @@ -6818,7 +6818,7 @@ import-local@^2.0.0: pkg-dir "^3.0.0" resolve-cwd "^2.0.0" -imurmurhash@*, imurmurhash@^0.1.4: +imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= @@ -7956,11 +7956,6 @@ lodash._basecopy@^3.0.0: resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" integrity sha1-jaDmqHbPNEwK2KVIghEd08XHyjY= -lodash._baseindexof@*: - version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash._baseindexof/-/lodash._baseindexof-3.1.0.tgz#fe52b53a1c6761e42618d654e4a25789ed61822c" - integrity sha1-/lK1OhxnYeQmGNZU5KJXie1hgiw= - lodash._baseuniq@~4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash._baseuniq/-/lodash._baseuniq-4.6.0.tgz#0ebb44e456814af7905c6212fa2c9b2d51b841e8" @@ -7969,16 +7964,11 @@ lodash._baseuniq@~4.6.0: lodash._createset "~4.0.0" lodash._root "~3.0.0" -lodash._bindcallback@*, lodash._bindcallback@^3.0.0: +lodash._bindcallback@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" integrity sha1-5THCdkTPi1epnhftlbNcdIeJOS4= -lodash._cacheindexof@*: - version "3.0.2" - resolved "https://registry.yarnpkg.com/lodash._cacheindexof/-/lodash._cacheindexof-3.0.2.tgz#3dc69ac82498d2ee5e3ce56091bafd2adc7bde92" - integrity sha1-PcaayCSY0u5ePOVgkbr9Ktx73pI= - lodash._createassigner@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" @@ -7988,19 +7978,12 @@ lodash._createassigner@^3.0.0: lodash._isiterateecall "^3.0.0" lodash.restparam "^3.0.0" -lodash._createcache@*: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash._createcache/-/lodash._createcache-3.1.2.tgz#56d6a064017625e79ebca6b8018e17440bdcf093" - integrity sha1-VtagZAF2JeeevKa4AY4XRAvc8JM= - dependencies: - lodash._getnative "^3.0.0" - lodash._createset@~4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/lodash._createset/-/lodash._createset-4.0.3.tgz#0f4659fbb09d75194fa9e2b88a6644d363c9fe26" integrity sha1-D0ZZ+7CddRlPqeK4imZE02PJ/iY= -lodash._getnative@*, lodash._getnative@^3.0.0: +lodash._getnative@^3.0.0: version "3.9.1" resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" integrity sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U= @@ -8111,7 +8094,7 @@ lodash.pick@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= -lodash.restparam@*, lodash.restparam@^3.0.0: +lodash.restparam@^3.0.0: version "3.6.1" resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" integrity sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU= @@ -11734,6 +11717,11 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== +spark-md5@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/spark-md5/-/spark-md5-3.0.2.tgz#7952c4a30784347abcee73268e473b9c0167e3fc" + integrity sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw== + spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9"