From eed27d3000e127c433fd45609d0d5e5d06b7868c Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期二, 26 十二月 2023 11:14:28 +0800 Subject: [PATCH] Merge branch 'dev' of http://192.168.5.5:10010/r/web/crm-web into dev --- src/views/sales/quotation/AddQuotationDialog.vue | 65 ++++++++++++++++++++++++-------- 1 files changed, 48 insertions(+), 17 deletions(-) diff --git a/src/views/sales/quotation/AddQuotationDialog.vue b/src/views/sales/quotation/AddQuotationDialog.vue index d272c43..cf978a6 100644 --- a/src/views/sales/quotation/AddQuotationDialog.vue +++ b/src/views/sales/quotation/AddQuotationDialog.vue @@ -166,7 +166,7 @@ </el-col> <el-col :span="12"> <el-form-item label="閿�鍞満浼�" prop="sale_chance_name" - :rules="[{ required: autoCodeHeadersObj.xsjh=='yes'?true:false, validator: this.checkChance, trigger: 'change' }]"> + :rules="[{ required: autoCodeHeadersObj.Xsjh=='yes'?true:false, validator: this.checkChance, trigger: 'change' }]"> <div class="custom-name"> <el-autocomplete v-model="editConfig.infomation.sale_chance_name" @@ -250,9 +250,11 @@ <CommonFormTableView :show-summary="showSummary" pageName="quotation" + :addTypeIdMultiple="true" :product-table-list="productTableList" @inputContent="inputContent" @addProductClick="addProductClick" + @getSelectArray="getSelectArray" @emptyProductClick="emptyProductClick" @recalculateProductClick="recalculateProductClick" @clearupProduct="clearupProduct" @@ -418,6 +420,7 @@ this.setTableForm() this.getCommonData() this.formInfo() + this.getUseSystemSet({modeType:'bjd'}) }, watch: { "editConfig.visible"(val) { @@ -477,8 +480,16 @@ if (this.isNoProduct) { this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖") } else { + for (let i = 0; i < this.tableData.length; i++) { + if (this.tableData[i].cost||Number(this.tableData[i].cost)==0) { + let reg = /^\+?[1-9]\d*$/; + if(!reg.test(this.tableData[i].cost)){ + this.$message.error("鎴愭湰鍗曚环闇�瑕佸~鍐欏ぇ浜�0鐨�2浣嶅皬鏁帮紒") + return true; + } + } + } const params = this.saveParams() - console.log(params) if (this.editConfig.title === "鏂板缓") { getAddQuotation(params).then((res) => { console.log(res) @@ -615,6 +626,9 @@ name: "", number: "", price: 0, + cost:'', + profit:'', + margin:'', total: 0, unit: "" } @@ -633,9 +647,9 @@ { label: "浜у搧缂栧彿", prop: "number" }, { label: "鍗曚綅", prop: "unit" }, { label: "閿�鍞崟浠�", prop: "price", inputFloat: true, isRequird: true }, - { label: "鎴愭湰鍗曚环", prop: "cost",inputFloat: true }, + { label: "鎴愭湰鍗曚环", prop: "cost",input: true }, { label: "姣涘埄", prop: "profit" }, - { label: "姣涘埄鐜�", prop: "margin",min:90}, + { label: "姣涘埄鐜�(%)", prop: "margin",min:90}, { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true }, { label: "浠风◣鍚堣", prop: "total", inputFloat: true } ] @@ -652,18 +666,32 @@ }, // 浜у搧鏂板 addProductClick() { - this.productId++ - this.tableData.push({ - productId: this.productId, - id: 0, - amount: 0, - desc: "", - name: "", - number: "", - price: 0, - total: 0, - unit: "" - }) + // this.productId++ + // this.tableData.push({ + // productId: this.productId, + // id: 0, + // amount: 0, + // desc: "", + // name: "", + // number: "", + // price: 0, + // cost:'', + // profit:'', + // margin:'', + // total: 0, + // unit: "" + // }) + // this.showSummary.show = true + }, + // 鏂板鏂瑰紡淇敼 + getSelectArray(val){ + if(val.length>0){ + val.map((item, index) => { + item.productId = this.tableData.length + index+1 + }) + } + this.tableData=this.tableData.concat(val); + this.productTableList.tableData=this.tableData this.showSummary.show = true }, // 浜у搧娓呯┖ @@ -678,6 +706,9 @@ name: "", number: "", price: 0, + cost:'', + profit:'', + margin:'', total: 0, unit: "" } @@ -695,7 +726,7 @@ if (this.editConfig.infomation.sale_chance_name && this.editConfig.infomation.sale_chance_name.length > 0) { callback() } else { - if(this.autoCodeHeadersObj.xsjh=='yes'){ + if(this.autoCodeHeadersObj.Xsjh=='yes'){ callback(new Error("璇烽�夋嫨閿�鍞満浼�")) }else{ callback() -- Gitblit v1.8.0