From 84d9de8968ea6675ecb57fa7c59a7bf2fede8f4d Mon Sep 17 00:00:00 2001 From: zuozhengqing <a13193816592@163.com> Date: 星期三, 06 十二月 2023 16:45:44 +0800 Subject: [PATCH] 采购管理新增和编辑时供应商是否可以提供当前产品提示优化 --- src/views/supplierManage/supplier/AddSupplier.vue | 126 +++++++++++++++++++++++++++++++++--------- 1 files changed, 99 insertions(+), 27 deletions(-) diff --git a/src/views/supplierManage/supplier/AddSupplier.vue b/src/views/supplierManage/supplier/AddSupplier.vue index 4f973c8..c8dbfa4 100644 --- a/src/views/supplierManage/supplier/AddSupplier.vue +++ b/src/views/supplierManage/supplier/AddSupplier.vue @@ -14,7 +14,7 @@ :model="editConfig.infomation" :rules="rules" label-position="right" - label-width="308px" + label-width="150px" size="mini" > <!-- 淇℃伅 --> @@ -160,11 +160,12 @@ <span style="margin-left: 5px">鍚堝悓闄勪欢</span> </div> </template> - <div class="annex-view"> + <div v-if="file_id === 0" class="annex-view"> <div @click="addAnnexClick"> <el-upload class="upload-demo" - action="https://jsonplaceholder.typicode.com/posts/" + :headers="headers" + action="" :limit="1" :before-upload="beforeAvatarUpload" :on-exceed="handleExceed" @@ -178,13 +179,15 @@ </el-upload> </div> </div> - <div v-if="file_name && file_name.length > 0" class="file-content"> + <!-- v-if="file_name && file_name.length > 0" --> + <div v-else class="file-content"> <div>{{ file_name }}</div> <div> - <el-button type="text">棰勮</el-button> - <el-button type="text">涓嬭浇</el-button> - <el-button type="text">鍒犻櫎</el-button> + <el-button type="text" @click="previewClick" style="margin-left: 10px">棰勮</el-button> + <el-button type="text" @click="downloadClick">涓嬭浇</el-button> + <el-button type="text" @click="delContractClick">鍒犻櫎</el-button> </div> + <div ref="file"></div> </div> </el-form-item> </el-col> @@ -203,10 +206,20 @@ </template> <script> -import { createSupplier, createContract, updateSupplier, getIndustryList } from "@/api/supplierManage/supplier" +import { + createSupplier, + createContract, + updateSupplier, + getIndustryList, + getSupplierTypeList, + // downloadContract + // previewContract +} from "@/api/supplierManage/supplier" import EditDropdownDialog from "@/views/other/commonDialog/EditDropdownDialog" -import { getSupplierTypeList } from "@/api/supplierManage/supplier" -import { getMemberList } from "@/api/common/other" +import { getMemberListFromGrpc } from "@/api/common/other" +import download from "downloadjs" +// import { renderAsync } from "docx-preview" +import axios from "axios" export default { name: "AddSupplierDialog", props: { @@ -222,10 +235,15 @@ } }, components: { EditDropdownDialog }, - computed: {}, + computed: { + headers() { + const authorization = "Bearer "+document.cookie.replace(/(?:(?:^|.*;\s*)token\s*=\s*([^;]*).*$)|^.*$/, "$1")|| '' + return { authorization } + } + }, data() { return { - dialogWidth: "80%", + dialogWidth: "50%", editConfig: this.addCommonConfig, rules: { name: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], @@ -257,24 +275,29 @@ infomation: {} }, fileList: [], - file_name: "", - file_id: this.addCommonConfig.infomation.fileId + file_name: this.addCommonConfig.infomation.file_name, + file_id: this.addCommonConfig.infomation.fileId, + previewUrl: "", + loading: false } }, created() { this.getSupplierTypeList() this.getIndustryList() this.getMemberList() + if (this.editConfig.title === "淇敼") { + // this.previewContract() + } }, methods: { // 閿�鍞礋璐d汉 async getMemberList() { - await getMemberList({ + await getMemberListFromGrpc({ page: 1, pageSize: 100 }).then((res) => { console.log(res) - this.memberOptions = res.data.data.list + this.memberOptions = res.data.list }) }, // 渚涘簲鍟嗙被鍨� @@ -283,7 +306,7 @@ page: 1, pageSize: 100 }).then((res) => { - this.supplierTypeOptions = res.data.data.list + this.supplierTypeOptions = res.data.list }) }, // 鎵�灞炶涓� @@ -292,7 +315,7 @@ page: 1, pageSize: 100 }).then((res) => { - this.industryOptions = res.data.data.list + this.industryOptions = res.data.list }) }, handleClose() { @@ -347,7 +370,7 @@ name: data.name || "", number: data.number || "", phone: data.phone || "", - responsiblePersonId: data.responsiblePersonId || 0, + responsiblePersonName: data.responsiblePersonName || document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1"), status: data.status || 0, supplierType: data.supplierType || "", url: data.url || "" @@ -387,10 +410,9 @@ fd.append("name", file.name) // 璋冪敤鎺ュ彛 createContract(fd).then((res) => { - if (res.status == 200) { - console.log(res.data.data) + if (res.code == 200) { this.file_name = file.name - this.file_id = res.data.data.id + this.file_id = res.data.id } }) } @@ -399,6 +421,61 @@ handleExceed(files, fileList) { console.log(fileList) this.$message.warning(`褰撳墠闄愬埗閫夋嫨 1 涓枃浠讹紝鏈閫夋嫨浜� ${files.length} 涓枃浠禶) + }, + // 涓嬭浇鍚堝悓 + downloadClick() { + let url = "/api/downloadContract?id=" + this.file_id + download(url, "", "") + }, + // 鍒犻櫎鍚堝悓 + delContractClick() { + // deleteContract({ + // id: this.file_id + // }).then((res) => { + // console.log(res) + // this.$message.success(res.msg) + this.file_id = 0 + // }) + }, + // 棰勮鍚堝悓 + // async previewClick() { + // this.previewUrl = "/api/con/previewContract?id=" + this.file_id + // if (this.file_name.includes("pdf")) { + // window.open(this.previewUrl, "_blank") + // } else { + // let routeUrl = this.$router.resolve({ + // path: "/PreviewFile", + // query: { + // //瑕佷紶鐨勫弬鏁� + // previewUrl: this.previewUrl + // } + // }) + // window.open(routeUrl.href, "_blank") + // } + // } + async previewClick() { + this.previewUrl = "/api/previewContract?id=" + this.file_id + if (this.file_name.includes("pdf")) { + console.log("鏄痯df鏂囦欢") + await axios.get(this.previewUrl, { headers: { "Authorization":"Bearer "+ document.cookie.replace(/(?:(?:^|.*;\s*)token\s*=\s*([^;]*).*$)|^.*$/, "$1")} }) + .then(response => { + window.open(this.previewUrl, "_blank") + console.log("response",response,this.previewUrl) + }) + .catch(error => { + console.error(error); + }); + } else { + console.log(this.previewUrl,"鐪嬬湅鏄暐瀛�") + let routeUrl = this.$router.resolve({ + path: "/PreviewFile", + query: { + //瑕佷紶鐨勫弬鏁� + previewUrl: this.previewUrl + } + }) + window.open(routeUrl.href, "_blank") + } } } } @@ -446,11 +523,6 @@ .file-content { display: flex; } - } - .dialog-footer { - background-color: #f5f5f5; - height: 55px; - line-height: 55px; } } } -- Gitblit v1.8.0