From 29b5ffe318b8ab32865ebebedd865ea2aa3f6c7e Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期三, 06 九月 2023 17:45:31 +0800
Subject: [PATCH] 供应商列表相关bug修复及样式调整
---
src/views/purchaseManage/purchase/components/AddPurchase.vue | 107 +++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 79 insertions(+), 28 deletions(-)
diff --git a/src/views/purchaseManage/purchase/components/AddPurchase.vue b/src/views/purchaseManage/purchase/components/AddPurchase.vue
index 7205625..c3cda91 100644
--- a/src/views/purchaseManage/purchase/components/AddPurchase.vue
+++ b/src/views/purchaseManage/purchase/components/AddPurchase.vue
@@ -27,7 +27,8 @@
<el-form-item
label="閲囪喘绫诲瀷"
prop="purchaseTypeId"
- class="form-item float_left"
+ class="float_left"
+ style="width:100%;"
>
<el-select
placeholder="璇烽�夋嫨閲囪喘绫诲瀷"
@@ -166,7 +167,9 @@
:show-summary="showSummary"
:recalculateShow="false"
:product-table-list="productTableList"
+ sign="purchase"
@inputContent="inputContent"
+ @getSummaries="getSummaries"
@addProductClick="addProductClick"
@emptyProductClick="emptyProductClick"
@clearupProduct="clearupProduct"
@@ -180,6 +183,7 @@
v-model="editConfig.infomation.wholeDiscountType"
placeholder="璇烽�夋嫨"
filterable
+ @change="getTotal"
>
<el-option label="鐧惧垎姣旈檷浠�" :value="1"></el-option>
<el-option label="鐩存帴闄嶄环" :value="2"></el-option>
@@ -191,6 +195,8 @@
<el-input
v-model="editConfig.infomation.wholeDiscount"
size="mini"
+ :disabled="editConfig.infomation.wholeDiscountType?false:true"
+ @change="getTotal"
placeholder="璇峰~鍐�"
></el-input>
</el-form-item>
@@ -203,6 +209,7 @@
v-model="editConfig.infomation.priceAdjustmentType"
placeholder="璇烽�夋嫨"
filterable
+ @change="getTotal"
>
<el-option label="澧炲姞" :value="1"></el-option>
<el-option label="鍑忓皯" :value="2"></el-option>
@@ -214,6 +221,8 @@
<el-input
v-model="editConfig.infomation.priceAdjustment"
size="mini"
+ :disabled="editConfig.infomation.priceAdjustmentType?false:true"
+ @change="getTotal"
placeholder="璇峰~鍐�"
></el-input>
</el-form-item>
@@ -221,7 +230,7 @@
</div>
<div class="table-bottom-item">
<div class="table-bottom-l">鍚堣</div>
- <div class="table-bottom-r">{{ editConfig.infomation.realTotalPrice }}</div>
+ <div class="table-bottom-r">{{ total }}</div>
</div>
</div>
</div>
@@ -297,7 +306,7 @@
wholeDiscount: [
{
required: false,
- message: "璇峰~鍐�",
+ message: "璇峰~鍐�0-100鐨勬暟瀛�",
trigger: "change",
},
{ validator: this.validatorNum, trigger: "change" },
@@ -316,6 +325,7 @@
show: true,
total: false,
sumProp: ["price", "total"],
+ multiply:['amount','price'],
titleProp: [
"缂栧彿",
"浜у搧鍚嶇О",
@@ -326,6 +336,7 @@
"鎻忚堪",
],
mergeNumber: 4,
+ totalName:'灏忚'
},
editSelectSupplierConfig: {
editVisible: false,
@@ -340,11 +351,13 @@
plcBrandList:[],
editRow:{
isDefault:'pin'
- }
+ },
+ total:0,
+ totalTwo:0,
};
},
created() {
- this.setTableForm();
+ this.handleGetBomKindDictList();
},
computed: {
},
@@ -353,26 +366,30 @@
immediate:true,
handler:function(){
- this.setTableForm();
+ this.handleGetBomKindDictList(true);
}
}
},
methods: {
validatorNum(rule, value, callback) {
- if (value) {
- if (value == undefined || value == null) {
+ if(this.editConfig.infomation.wholeDiscountType==1){
+ if(value==undefined||value==null||(!value&&value!=0)){
callback(new Error("璇疯緭鍏ユ湁鏁堟暟瀛�"));
- } else {
- var reg = /^\+?[0-9]\d*$/;
- if (!reg.test(value)) {
- callback(new Error("璇峰~鍐欎笉灏忎簬0鐨勬暟瀛�"));
- } else {
- callback();
+ }else{
+ var reg=/^\+?[0-9]\d*$/
+ if(!reg.test(value)){
+ callback(new Error('璇峰~鍐�0-100鐨勬暟瀛�'))
+ }else{
+ if(Number(value)>100){
+ callback(new Error('璇峰~鍐�0-100鐨勬暟瀛�'))
+ }else{
+ callback()
+ }
}
- }
- } else {
- callback();
- }
+ }
+ }else{
+ this.validatorNumThree(rule, value, callback)
+ }
},
validatorNumThree(rule, value, callback){
if(value){
@@ -397,9 +414,9 @@
},
// PLC閰嶇疆
handleGetBomKindDictList(val) {
- console.log(val,'val')
getPurchaseType().then((res) => {
this.plcBrandList = res.data;
+ this.setTableForm()
if (val) {
for (let i in this.plcBrandList) {
if (this.plcBrandList[i][this.editRow.isDefault]) {
@@ -492,6 +509,13 @@
},
saveParams() {
let data =JSON.parse(JSON.stringify(this.editConfig.infomation));
+
+ if(this.editConfig.infomation.wholeDiscountType==2&&this.editConfig.infomation.wholeDiscount){
+ if(Number(this.editConfig.infomation.wholeDiscount)>Number(this.totalTwo)){
+ this.$message.error('鐩存帴闄嶄环涓嶈兘瓒呰繃浠风◣鍚堣鐨勬�诲拰锛�')
+ return true;
+ }
+ }
let params = {
productList:this.tableData,
purchase:{
@@ -504,11 +528,12 @@
name:data.name||'',
deliveryDate:data.deliveryDate||'',
contact:data.contact,
- wholeDiscountType:data.wholeDiscountType,
- wholeDiscount:Number(data.wholeDiscount),
- priceAdjustmentType:data.priceAdjustmentType,
- priceAdjustment:Number(data.priceAdjustment),
- realTotalPrice:data.realTotalPrice||'',
+ wholeDiscountType:data.wholeDiscountType?data.wholeDiscountType:0,
+ wholeDiscount:data.wholeDiscount?Number(data.wholeDiscount):0,
+ priceAdjustmentType:data.priceAdjustmentType?data.priceAdjustmentType:0,
+ priceAdjustment:data.priceAdjustment?Number(data.priceAdjustment):0,
+ realTotalPrice:this.total?Number(this.total):0,
+ totalPrice:this.totalTwo?Number(this.totalTwo):0,
}
};
if(data.ID){
@@ -589,11 +614,11 @@
{
label: "浜у搧鍚嶇О",
prop: "name",
- min: 170,
+ min: 180,
productName: true,
isRequird: true,
},
- { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "浜у搧缂栧彿", prop: "number", min: 150,},
{ label: "璁¢噺鍗曚綅", prop: "unit" },
{ label: "瑙勬牸鍨嬪彿", prop: "specifications" },
{ label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
@@ -603,11 +628,12 @@
inputFloat: true,
isRequird: true,
},
- { label: "浠风◣鍚堣", prop: "total", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true,disabled:true,multiply:true, },
{ label: "鎻忚堪", prop: "remark", input: true },
],
};
- this.handleGetBomKindDictList(true);
+ this.toal=this.editConfig.infomation.realTotalPrice
+
},
// 浜у搧鍒楄〃杈撳叆
inputContent(val, prop, row) {
@@ -617,6 +643,31 @@
item[prop] = val;
}
});
+
+ },
+ getSummaries(total){
+ this.totalTwo= JSON.parse(JSON.stringify(total));
+ this.total=total;
+ this.getTotal()
+ },
+ getTotal(){
+ let prie=0
+ if(this.editConfig.infomation.priceAdjustmentType==1){
+ prie=Number(this.editConfig.infomation.priceAdjustment)
+ }else if(this.editConfig.infomation.priceAdjustmentType==2){
+ prie=(-1)*Number(this.editConfig.infomation.priceAdjustment)
+ }else{
+ prie=0
+ }
+ let t=0
+ if(this.editConfig.infomation.wholeDiscountType==1){
+ t=this.totalTwo*Number(this.editConfig.infomation.wholeDiscount)/100
+ }else if(this.editConfig.infomation.wholeDiscountType==2){
+ t=Number(this.editConfig.infomation.wholeDiscount)
+ }else{
+ t=0
+ }
+ this.total=this.totalTwo-t+Number(prie)
},
// 浜у搧鏂板
addProductClick() {
--
Gitblit v1.8.0