From 65bc5629504c5e138d8540cdf9b0eb3796842d4a Mon Sep 17 00:00:00 2001 From: zuozhengqing <a13193816592@163.com> Date: 星期六, 18 十一月 2023 17:14:44 +0800 Subject: [PATCH] fix:采购管理-产品列表与供应商列表关联 --- src/views/purchaseManage/purchase/components/AddPurchase.vue | 64 ++++++++++++++++++++++++------- 1 files changed, 49 insertions(+), 15 deletions(-) diff --git a/src/views/purchaseManage/purchase/components/AddPurchase.vue b/src/views/purchaseManage/purchase/components/AddPurchase.vue index 260540a..7764bdb 100644 --- a/src/views/purchaseManage/purchase/components/AddPurchase.vue +++ b/src/views/purchaseManage/purchase/components/AddPurchase.vue @@ -31,6 +31,7 @@ style="width:100%;" > <el-select + :disabled="editConfig.isDisabled" placeholder="璇烽�夋嫨閲囪喘绫诲瀷" v-model="editConfig.infomation.purchaseTypeId" clearable @@ -44,6 +45,7 @@ ></el-option> </el-select> <i + v-if="!editConfig.isDisabled" class="el-icon-setting margin_left_10px cursor_pointer" style="font-size: 20px; color: #333" @click="handleShow" @@ -55,11 +57,12 @@ <el-form-item label="渚涘簲鍟嗗悕绉�" prop="supplierName"> <div class="custom-name"> <el-autocomplete + :disabled="editConfig.isDisabled" style="width: calc(100% - 40px)" v-model="editConfig.infomation.supplierName" :fetch-suggestions=" (queryString, callback) => { - querySearchAsync(queryString, callback, 'client'); + querySearchAsync(queryString, callback, 'supplier'); } " value-key="name" @@ -67,6 +70,7 @@ @select="handleSelectClient('client', $event)" ></el-autocomplete> <div + v-if="!editConfig.isDisabled" class="common-select-btn" @click="selClientClick('client')" > @@ -80,7 +84,8 @@ class="common-select-btn" @click="clearupClient('client')" > - <i class="el-icon-remove-outline" title="娓呴櫎"></i> + <i class="el-icon-remove-outline" + v-if="!editConfig.isDisabled" title="娓呴櫎"></i> </div> </div> </el-form-item> @@ -97,6 +102,7 @@ <el-col :span="12"> <el-form-item label="閲囪喘鍗曞悕绉�" prop="name"> <el-input + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.name" placeholder="璇峰~鍐�" clearable @@ -106,6 +112,7 @@ <el-col :span="12"> <el-form-item label="渚涘簲鍟嗚仈绯讳汉" prop="contact"> <el-input + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.contact" placeholder="璇峰~鍐�" clearable @@ -115,6 +122,7 @@ <el-col :span="12"> <el-form-item label="鑱旂郴鐢佃瘽" prop="phone"> <el-input + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.phone" placeholder="璇峰~鍐�" clearable @@ -124,6 +132,7 @@ <el-col :span="12"> <el-form-item label="绛剧害鏃ユ湡" prop="signingDate"> <el-date-picker + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.signingDate" style="width: 100%" type="date" @@ -137,6 +146,7 @@ <el-col :span="12"> <el-form-item label="浜や粯鏃ユ湡" prop="deliveryDate"> <el-date-picker + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.deliveryDate" style="width: 100%" type="date" @@ -150,6 +160,7 @@ <el-col :span="24"> <el-form-item label="澶囨敞淇℃伅" prop="remark"> <el-input + :disabled="editConfig.isDisabled" type="textarea" :autosize="{ minRows: 3, maxRows: 4 }" maxlength="500" @@ -182,6 +193,7 @@ <el-select v-model="editConfig.infomation.wholeDiscountType" placeholder="璇烽�夋嫨" + :disabled="editConfig.isDisabled" filterable @change="getTotal" > @@ -195,7 +207,7 @@ <el-input v-model="editConfig.infomation.wholeDiscount" size="mini" - :disabled="editConfig.infomation.wholeDiscountType?false:true" + :disabled="editConfig.isDisabled" @change="getTotal" placeholder="璇峰~鍐�" ></el-input> @@ -206,6 +218,7 @@ <div class="table-bottom-l"> <el-form-item label="璋冩暣" prop="member_id"> <el-select + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.priceAdjustmentType" placeholder="璇烽�夋嫨" filterable @@ -219,9 +232,9 @@ <div class="table-bottom-r"> <el-form-item label="" prop="member_id"> <el-input + :disabled="editConfig.isDisabled" v-model="editConfig.infomation.priceAdjustment" size="mini" - :disabled="editConfig.infomation.priceAdjustmentType?false:true" @change="getTotal" placeholder="璇峰~鍐�" ></el-input> @@ -265,6 +278,7 @@ <script> import CommonFormTableView from "@/components/makepager/CommonFormTableView"; import BomDialog from "@/components/makepager/BomDialog"; +import { getProductList } from "@/api/productManage/product" import { addPurchase, @@ -358,8 +372,12 @@ }, created() { this.handleGetBomKindDictList(); + this.$store.dispatch("getSupplier") }, computed: { + supplierList() { + return this.$store.state.getSupplierName.supplierList + } }, watch:{ 'editCommonConfig.visible':{ @@ -491,10 +509,8 @@ this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖"); } else { const params = this.saveParams(); - console.log(params); if (this.editConfig.title === "鍒涘缓") { addPurchase(params).then((res) => { - console.log(res); this.editConfig.visible = false; if (res.code === 200) { this.$message.success("娣诲姞鎴愬姛"); @@ -529,7 +545,7 @@ let params = { productList:this.tableData, purchase:{ - supplierId:this.supplierId||0, + supplierId:data.supplierId, signingDate:data.signingDate||'', remark:data.remark, orderSource:data.orderSource||'', @@ -556,9 +572,10 @@ }, // 閫夋嫨瀹㈡埛鐩稿叧鏂规硶 querySearchAsync(queryString, cb, value) { + this.productTableList.tableProductList=[] var restaurants = []; - if (value === "client") { - restaurants = this.clientList; + if (value === "supplier") { + restaurants = this.supplierList; } var results = queryString ? restaurants.filter(this.createStateFilter(queryString)) @@ -572,11 +589,22 @@ ); }; }, - handleSelectClient(value, item) { - console.log(value); + async handleSelectClient(value, item) { + this.productTableList.supplierId=item.ID if (value === "client") { this.supplierId = item.id; + this.editConfig.infomation.supplierId=item.ID } + await getProductList({ + supplierId:item.ID, + page:1, + pageSize:100 + }).then((res)=>{ + if(res.data.code===200){ + this.productTableList.tableProductList = res.data.data.list + console.log(this.productTableList.tableProductList,"pop") + } + }) }, selClientClick() { this.editSelectSupplierConfig.editVisible = true; @@ -589,6 +617,7 @@ }, // 娓呴櫎宸查�夋嫨鐢ㄦ埛 clearupClient(value) { + this.emptyProductClick() if (value == "client") { this.$set(this.editConfig.infomation, "supplierName", ""); this.supplierId = null; @@ -619,7 +648,10 @@ // }); } this.productTableList = { + tableProductList:[], + supplierId:undefined, tableData: this.tableData, + disabled:this.editConfig.isDisabled, tableColumn: [ { label: "浜у搧鍚嶇О", @@ -627,19 +659,21 @@ min: 180, productName: true, isRequird: true, + disabled:this.editConfig.isDisabled, }, { label: "浜у搧缂栧彿", prop: "number", min: 150,}, { label: "璁¢噺鍗曚綅", prop: "unit" }, - { label: "瑙勬牸鍨嬪彿", prop: "specifications" }, - { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true }, + { label: "瑙勬牸鍨嬪彿", prop: "specifications",}, + { label: "鏁伴噺", prop: "amount", inputNumber: true,disabled:this.editConfig.isDisabled, }, { label: "閲囪喘鍗曚环", prop: "price", inputFloat: true, isRequird: true, + disabled:this.editConfig.isDisabled, }, - { label: "浠风◣鍚堣", prop: "total", inputFloat: true,disabled:true,multiply:true, }, - { label: "鎻忚堪", prop: "remark", input: true }, + { label: "浠风◣鍚堣", prop: "total", inputFloat: true,disabled:this.editConfig.isDisabled,multiply:true, }, + { label: "鎻忚堪", prop: "remark", input: true,disabled:this.editConfig.isDisabled}, ], }; this.toal=this.editConfig.infomation.realTotalPrice -- Gitblit v1.8.0