From dbe1b807e2a0e4aaa37277b69c50dd69dc42dda2 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期日, 25 六月 2023 10:34:36 +0800 Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs --- Source/UBCS-WEB/src/components/BatchImport/index.vue | 107 +++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 86 insertions(+), 21 deletions(-) diff --git a/Source/UBCS-WEB/src/components/BatchImport/index.vue b/Source/UBCS-WEB/src/components/BatchImport/index.vue index f9baddc..3c65d7a 100644 --- a/Source/UBCS-WEB/src/components/BatchImport/index.vue +++ b/Source/UBCS-WEB/src/components/BatchImport/index.vue @@ -1,5 +1,11 @@ <template> - <el-dialog :title="title" :visible="visible" append-to-body> + <el-dialog + v-if="dialogVisible" + :title="title" + :visible.sync="dialogVisible" + append-to-body + v-dialogDrag + > <Divider text="瀵煎叆鎻愮ず" left="30px"></Divider> <ul> <li v-for="(item, index) in tipList" :key="index"> @@ -23,6 +29,7 @@ :headers="uploadHeaders" :on-success="onSuccess" :show-file-list="false" + :on-change="uploadChange" :data="{ codeClassifyOid: this.codeClassifyOid, classifyAttr: this.classifyAttr, @@ -33,19 +40,35 @@ > </el-upload> <template #footer> - <el-button type="primary" size="small" @click="downloadTemplateFun" :loading="downloadLoading" + <el-button + type="primary" + size="small" + @click="downloadTemplateFun" + :loading="downloadLoading" >涓嬭浇瀵煎叆妯℃澘</el-button > - <el-button size="small">鍏抽棴</el-button> + <el-button size="small" @click="dialogVisible = false">鍏抽棴</el-button> </template> + <ShowImportData + :visible.sync="showVisible" + v-if="dialogVisible" + :leftTree="leftTree" + :redisOid="redisOid" + ></ShowImportData> </el-dialog> </template> <script> -import { downloadHistoryImportTemplate, downloadErrorFile } from "../../api/batchImport/index"; +import ShowImportData from "./ShowImportData.vue"; +import { + downloadHistoryImportTemplate, + downloadErrorFile, + getHistoryLeftTree +} from "../../api/batchImport/index"; import { getToken } from "@/util/auth"; export default { - name: "", + name: "BatchImport", + components: { ShowImportData }, props: { visible: { type: Boolean, @@ -57,7 +80,7 @@ }, codeClassifyOid: { type: String, - default: "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B", + default: "", }, type: { type: String, @@ -68,7 +91,11 @@ return { classifyAttr: "id", uploadParams: {}, - downloadLoading: false + downloadLoading: false, + showVisible: false, + leftTree: [], + redisOid:'', + pageLoading: null }; }, computed: { @@ -76,6 +103,14 @@ return { "Blade-Auth": "bearer " + getToken(), }; + }, + dialogVisible: { + get() { + return this.visible; + }, + set(val) { + this.$emit("update:visible", val); + }, }, }, methods: { @@ -109,30 +144,60 @@ }, // 涓嬭浇瀵煎叆妯℃澘 downloadTemplateFun() { - this.downloadLoading = true + this.downloadLoading = true; downloadHistoryImportTemplate({ - codeClassifyOid: "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B", - }).then(res => { - this.downloadLoading = false - console.log(res); - }).catch(() => { - this.downloadLoading = false - }); + codeClassifyOid: this.codeClassifyOid, + }) + .then((res) => { + this.$utilFunc.downloadFileByBlob(res.data, "鍘嗗彶鏁版嵁瀵煎叆妯℃澘.xls"); + this.downloadLoading = false; + }) + .catch(() => { + this.downloadLoading = false; + }); }, onSuccess(res) { - if (res.code === 400) { - this.$message.error(`${res.msg}锛岃涓嬭浇閿欒淇℃伅杩涜鏌ョ湅锛乣) + let fileName = res.data.filePath.split('/').pop() + if (res.data.fileOid) { + this.$message.error("璇蜂笅杞介敊璇俊鎭枃浠惰繘琛屾煡鐪嬶紒"); + downloadErrorFile({ uuid: res.data.fileOid }).then((res2) => { + this.$utilFunc.downloadFileByBlob(res2.data, fileName); + }); } - downloadErrorFile({uuid: res.data.fileOid}) + if (res.data.redisUuid) { + this.redisOid = res.data.redisUuid + getHistoryLeftTree(res.data.redisUuid).then(res => { + this.leftTree = res.obj.map(item => { + return { + ...item.codeClassifyTemplateVO, + cloNamesList: item.cloNamesList + } + }) + this.showVisible = true + }) + } + }, + uploadChange(file) { + if (file.status === 'ready') { + this.pageLoading = this.$loading({ + lock: true, + text: '鏂囦欢涓婁紶涓�', + spinner: 'el-icon-loading', + background: 'rgba(0, 0, 0, 0.7)' + }); + } + if (file.status === 'success' || file.status === 'error') { + this.pageLoading.close() + } } }, watch: { visible: { - immediate:true, + immediate: true, handler() { this.getDataByType(); - } - } + }, + }, }, }; </script> -- Gitblit v1.9.3