|
@@ -2,7 +2,7 @@
|
|
|
* @Author: zhangyu
|
|
|
* @Date: 2019-11-28 10:05:28
|
|
|
* @Info:
|
|
|
- * @LastEditTime: 2019-11-30 18:28:18
|
|
|
+ * @LastEditTime: 2019-12-05 17:37:36
|
|
|
-->
|
|
|
<template>
|
|
|
<div id="global-uploader">
|
|
@@ -63,6 +63,7 @@ import Bus from '@/utils/bus.js';
|
|
|
import SparkMD5 from 'spark-md5';
|
|
|
import { getUploadId, mergeMultipart } from '@/api/uploader';
|
|
|
import request from "@/api/model/file.js";
|
|
|
+import { mapGetters, mapMutations } from 'vuex'
|
|
|
|
|
|
export default {
|
|
|
data() {
|
|
@@ -93,32 +94,44 @@ export default {
|
|
|
panelShow: false, //选择文件后,展示上传panel
|
|
|
collapse: false,
|
|
|
}
|
|
|
- },
|
|
|
+ },
|
|
|
mounted() {
|
|
|
Bus.$on('openUploader', (query, file) => {
|
|
|
- if(query.uploadId){
|
|
|
+ if(!this.uploaderList.some(item => {return item.name === file.name})){
|
|
|
+ if(query.uploadId){
|
|
|
// this.params = query || {};
|
|
|
- file.uploadId = query.uploadId
|
|
|
- file.modelId = query.modelId? query.modelId: ''
|
|
|
- this.uploader.addFile(file)
|
|
|
- } else {
|
|
|
- getUploadId({
|
|
|
- systemId: query.systemId?query.systemId:'revit',
|
|
|
- secret: query.secret?query.secret:'63afbef6906c342b',
|
|
|
- overwrite: query.overwrite? query.overwrite: false,
|
|
|
- key: file.name
|
|
|
- }, res => {
|
|
|
- if(res.UploadId){
|
|
|
- // this.params = Object.assign(query, { uploadId: res.UploadId }) || {};
|
|
|
- file = Object.assign(file, {
|
|
|
- ...query,
|
|
|
- uploadId: res.UploadId
|
|
|
- })
|
|
|
- this.uploader.addFile(file)
|
|
|
- } else {
|
|
|
- this.$message.error(`请求分片上传接口失败!`);
|
|
|
- }
|
|
|
- })
|
|
|
+ file.uploadId = query.uploadId
|
|
|
+ file.modelId = query.modelId? query.modelId: ''
|
|
|
+ this.uploader.addFile(file)
|
|
|
+ this.setUploaderList(this.uploader.files.map(item => {
|
|
|
+ item.modelId = item.file.modelId?item.file.modelId:''
|
|
|
+ return item
|
|
|
+ }))
|
|
|
+ } else {
|
|
|
+ getUploadId({
|
|
|
+ systemId: query.systemId?query.systemId:'revit',
|
|
|
+ secret: query.secret?query.secret:'63afbef6906c342b',
|
|
|
+ overwrite: query.overwrite? query.overwrite: false,
|
|
|
+ key: file.name
|
|
|
+ }, res => {
|
|
|
+ if(res.UploadId){
|
|
|
+ // this.params = Object.assign(query, { uploadId: res.UploadId }) || {};
|
|
|
+ file = Object.assign(file, {
|
|
|
+ ...query,
|
|
|
+ uploadId: res.UploadId
|
|
|
+ })
|
|
|
+ this.uploader.addFile(file)
|
|
|
+ this.setUploaderList(this.uploader.files.map(item => {
|
|
|
+ item.modelId = item.file.modelId?item.file.modelId:''
|
|
|
+ return item
|
|
|
+ }))
|
|
|
+ } else {
|
|
|
+ this.$message.error(`请求分片上传接口失败!`);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ this.$message.error(`该文件在上传列表中已存在!`);
|
|
|
}
|
|
|
|
|
|
// if (this.$refs.uploadBtn) {
|
|
@@ -128,12 +141,14 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
computed: {
|
|
|
+ ...mapGetters('layout', ['uploaderList']),
|
|
|
//Uploader实例
|
|
|
uploader() {
|
|
|
return this.$refs.uploader.uploader;
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ ...mapMutations('layout', ['setUploaderList']),
|
|
|
onFileAdded(file) {
|
|
|
this.panelShow = true;
|
|
|
this.collapse = true;
|