优化文档导出

This commit is contained in:
龙运模 2024-11-05 22:53:36 +08:00
parent b15443222f
commit c6680f76ba
3 changed files with 76 additions and 3 deletions

View File

@ -24,6 +24,27 @@
</div> </div>
</template> </template>
</el-popover> </el-popover>
<!-- <div class="customerPopover">-->
<!-- <div class="btnBox">-->
<!-- <slot></slot>-->
<!-- </div>-->
<!-- <div class="contentPopover" v-if="show">-->
<!-- <div class="bodyMain">-->
<!-- <span class="arrow"></span>-->
<!-- <div v-for="(item,index) in list" :key="item">-->
<!-- <div :class="list.length-1==index?'':'exportItem'" v-if="list.length>0 && type == item.type">-->
<!-- <div class="exportHeader">-->
<!-- <div class="name">{{item.type_desc}}</div>-->
<!-- <div class="status" v-if="item.status==0">{{item.msg}}</div>-->
<!-- <div class="finish" v-if="item.status==1"><i class="icon"><sc-icon-Finish/></i> 文件生成完成</div>-->
<!-- </div>-->
<!-- <el-progress class="exportPopover" :text-inside="true" :stroke-width="12" :percentage="item.rate" />-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
</template> </template>
<script> <script>
@ -64,6 +85,10 @@ export default {
methods:{ methods:{
getWsResult(res){ getWsResult(res){
if(res.data && (res.data.type == 14)){ if(res.data && (res.data.type == 14)){
let ids = this.list.map(em=>em.file_unique_id);
if(ids.indexOf(res.data.file_unique_id) == -1){
this.list.push({file_unique_id:res.data.file_unique_id,client_file_name:res.data.client_file_name})
}
this.list.forEach(item=>{ this.list.forEach(item=>{
if(item.file_unique_id == res.data.file_unique_id){ if(item.file_unique_id == res.data.file_unique_id){
item.type = res.data.type; item.type = res.data.type;
@ -73,7 +98,6 @@ export default {
item.msg = res.data.msg; item.msg = res.data.msg;
} }
}) })
let data = this.list.filter(em=>em.status!=1); let data = this.list.filter(em=>em.status!=1);
let params = { let params = {
type:res.data.type, type:res.data.type,
@ -121,5 +145,49 @@ export default {
display: flex;align-items: center;justify-content: flex-end; display: flex;align-items: center;justify-content: flex-end;
font-size: 10px; font-size: 10px;
} }
.customerPopover{
position: relative;
height: auto;
.btnBox{
margin-left: 12px;
}
.contentPopover{
width: 300px;
padding: 12px;
background: var(--el-bg-color-overlay);
border: 1px solid var(--el-border-color-light);
box-shadow: var(--el-box-shadow-light);
border-radius: 4px;
position: absolute;
top: 38px;
right: 0;
z-index: 200;
}
.bodyMain{
position: relative;
.arrow{
position: absolute;
right: 10px;
top: -18px;
width: 8px;height: 8px;z-index: 10;
}
.arrow:before{
position: absolute;
top: 0;
right: 10px;
z-index: -1;
content: '';
width: 8px;
height: 8px;
transform:rotate(135deg);
border: 1px solid var(--el-border-color-light);
background: #fff;
border-bottom-left-radius:2px;
border-right-color:transparent;
border-top-color:transparent;
}
}
}
</style> </style>

View File

@ -1,4 +1,5 @@
<template> <template>
{{show}}
<div class="customerPopover"> <div class="customerPopover">
<div class="btnBox"> <div class="btnBox">
<slot></slot> <slot></slot>

View File

@ -2,7 +2,7 @@
<slot name="header"></slot> <slot name="header"></slot>
<el-dialog v-bind="$attrs" :title="title" v-model="visible" :width="560" destroy-on-close draggable @closed="visible=false"> <el-dialog v-bind="$attrs" :title="title" v-model="visible" :width="560" destroy-on-close draggable @closed="visible=false">
<div class="importBody"> <div class="importBody" v-loading="saveLoading" element-loading-text="处理中...">
<el-upload <el-upload
class="upload" class="upload"
:action="oss.host" :action="oss.host"
@ -55,7 +55,7 @@
</div> </div>
<template #footer> <template #footer>
<el-button @click="close"> </el-button> <el-button @click="close"> </el-button>
<el-button type="primary" @click="save"> </el-button> <el-button type="primary" @click="save" :disabled="saveLoading"> </el-button>
</template> </template>
</el-dialog> </el-dialog>
</template> </template>
@ -73,6 +73,7 @@ export default {
data(){ data(){
return{ return{
visible: false, visible: false,
saveLoading:false,
fileList:[], // fileList:[], //
listProgress:[], // listProgress:[], //
@ -173,9 +174,12 @@ export default {
this.handleRemove('',this.fileList,true); this.handleRemove('',this.fileList,true);
}, },
async save() { async save() {
this.saveLoading = true;
const res = await this.$API.docs.manager.upload.post(this.params); const res = await this.$API.docs.manager.upload.post(this.params);
this.saveLoading = false;
if (res.code == 200) { if (res.code == 200) {
this.$message.success('提交成功,正在上传'); this.$message.success('提交成功,正在上传');
this.listProgress = [];
this.uploadShow = false; this.uploadShow = false;
} }
}, },