From d4f4c52402b91cb8e17c1845da71c5e39662fde0 Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期三, 03 一月 2024 15:28:06 +0800 Subject: [PATCH] 销售报价单列表页增加统计内容及接口联调、添加报价单天天客户名称及对应限制功能 --- src/components/makepager/CommonFormTableView.vue | 65 +++++++++++++++++++++++--------- 1 files changed, 47 insertions(+), 18 deletions(-) diff --git a/src/components/makepager/CommonFormTableView.vue b/src/components/makepager/CommonFormTableView.vue index ec70ab3..4476b95 100644 --- a/src/components/makepager/CommonFormTableView.vue +++ b/src/components/makepager/CommonFormTableView.vue @@ -44,7 +44,7 @@ :disabled="!isOperate" @change=" (val) => { - commonInputChange(val, item.prop, scope.row) + commonInputChange(val, item.prop, scope.row,scope) } " ></el-input> @@ -105,7 +105,7 @@ style="width: 100%; margin-right: 5px" @change=" (val) => { - commonInputChange(val, item.prop, scope.row) + commonInputChange(val, item.prop, scope.row,scope) } " ></el-input-number> @@ -127,19 +127,13 @@ style="width: 100%; margin-right: 5px" @change=" (val) => { - commonInputChange(val, item.prop, scope.row) + commonInputChange(val, item.prop, scope.row,scope) } " ></el-input-number> </el-form-item> <span v-else> - <template v-if="pageName=='quotation'&&item.prop=='profit'"> - {{ (scope.row.price&&scope.row.cost)?Number(scope.row.price)-Number(scope.row.cost):'' }} - </template> - <template v-if="pageName=='quotation'&&item.prop=='margin'"> - {{ (scope.row.price&&scope.row.cost)?((Number(scope.row.price)-Number(scope.row.cost))*100/Number(scope.row.cost)).toFixed(2)+'%':'' }} - </template> - <template v-else> + <template> {{ scope.row[item.prop] }} </template> </span> @@ -160,7 +154,7 @@ style="width: 100%; margin-right: 5px" @change=" (val) => { - commonInputChange(val, item.prop, scope.row) + commonInputChange(val, item.prop, scope.row,scope) } " ></el-input-number> @@ -168,7 +162,7 @@ <span v-else style="text-align: right">{{ scope.row[item.prop] }}</span> </template> </el-table-column> - <el-table-column label="鎿嶄綔" width="40" align="center"> + <el-table-column label="鎿嶄綔" width="40" v-if="!detailEnter" align="center"> <template slot-scope="scope"> <el-button type="text" @@ -207,6 +201,7 @@ :edit-common-config="editSelCommonConfig" :quotationNumber="quotationNumber" @selClient="selClient" + @getSelectArray="getSelectArray" /> </div> </template> @@ -230,6 +225,11 @@ pageName:{ type:String, default:'' + }, + // 鍒楄〃鏂板鏄惁澶氶�� + addTypeIdMultiple:{ + type:Boolean, + default:false, }, // 鏍规嵁鎶ヤ环鍗曟煡璇骇鍝� quotationNumber:{ @@ -274,6 +274,7 @@ tableList: [], editSelCommonConfig: { editVisible: false, + isSelectBox:false, title: "", infomation: {} }, @@ -405,11 +406,15 @@ }, // 鏂板 add() { - this.$emit("addProductClick") + if(this.addTypeIdMultiple){ + this.editSelCommonConfig.title = "浜у搧鍚嶇О" + this.editSelCommonConfig.isSelectBox=true; + this.editSelCommonConfig.editVisible = true + }else{ + this.$emit("addProductClick") + } }, - commonInputChange(val, prop, row) { - console.log(val, prop) - console.log(row) + commonInputChange(val, prop, row,scope) { if (prop === "amount") { this.tableList.tableData.map((ite) => { if (ite.name === row.name) { @@ -417,7 +422,27 @@ } }) } - this.$emit("inputContent", val, prop, row) + if(this.pageName=='quotation'&&prop=='cost'&&scope.row.cost){ + let value=scope.row.cost + let reg2 = + /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/; + if (!reg2.test(value)||value==0) { + this.$message.error("鎴愭湰鍗曚环闇�瑕佸~鍐欏ぇ浜�0鐨�2浣嶅皬鏁帮紒") + return true; + } + this.$forceUpdate() + } + if(this.pageName=='quotation'){ + if(prop=='price'||prop=='cost'){ + if(scope.row.price&&scope.row.cost){ + let profit=Number(scope.row.price)-Number(scope.row.cost) + scope.row.profit=profit+''; + let margin=((Number(scope.row.price)-Number(scope.row.cost))*100/Number(scope.row.cost)).toFixed(2) + scope.row.margin=margin+''; + } + } + } + this.$emit("inputContent", val, prop, row,scope) }, // 娓呯┖ empty() { @@ -428,7 +453,7 @@ deleteClick(scope){ this.tableList.tableData.splice(scope.$index,1) this.$forceUpdate(); - this.$message.success('鍒犻櫎闄ゆ垚鍔燂紒') + this.$message.success('鍒犻櫎鎴愬姛锛�') this.$emit("deleteClick",scope) }, // 閲嶇畻 @@ -475,6 +500,7 @@ console.log(row, prop) this.productIndex = row.productId - 1 this.editSelCommonConfig.title = "浜у搧鍚嶇О" + this.editSelCommonConfig.isSelectBox=false; this.editSelCommonConfig.editVisible = true }, selClient(item) { @@ -493,6 +519,9 @@ } }) }, + getSelectArray(val){ + this.$emit("getSelectArray",val) + }, // 娓呴櫎宸查�夋嫨鐢ㄦ埛 clearupClient(row) { this.productIndex = row.productId - 1 -- Gitblit v1.8.0