From 03cfba0f636b42417070fc8caef44bcdd792a085 Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期二, 07 五月 2024 17:34:37 +0800 Subject: [PATCH] 概述 出库模块 编辑的时候循环处理对应产品调用接口获取在库数量的逻辑处理 --- src/views/overview/AddOverviewDialog.vue | 87 +++++++++++++++++++++++++++++++++---------- 1 files changed, 67 insertions(+), 20 deletions(-) diff --git a/src/views/overview/AddOverviewDialog.vue b/src/views/overview/AddOverviewDialog.vue index df3c3a5..156dbe6 100644 --- a/src/views/overview/AddOverviewDialog.vue +++ b/src/views/overview/AddOverviewDialog.vue @@ -473,17 +473,19 @@ :addTypeIdMultiple="true" :product-table-list="productTableList" :detail-enter="!showFooter" + @selProductClick="selProductClick" @inputContent="inputContent" @addProductClick="addProductClick('鎿嶄綔')" @getSelectArray="getSelectArray" + @selSonLocationClick="selSonLocationClick" @emptyProductClick="emptyProductClick" @clearupProduct="clearupProduct" > <template v-if="showFooter" slot="tableButton"> + <!-- fixed="right" --> <el-table-column label="鎿嶄綔" width="60" - fixed="right" align="center" > <template slot-scope="scope"> @@ -642,6 +644,9 @@ getLogisticCompanyList, printReceipts, } from "@/api/overview/overview"; +import { + getLocationProductAmount +} from "@/api/operate/inventoryAdjustment" import { getSupplierList, getCompanyList, @@ -1044,6 +1049,8 @@ productId: item.productId, auxiliaryUnit:item.auxiliaryUnit, auxiliaryAmount:item.auxiliaryAmount, + totalNetWeight:item.totalNetWeight, + totalGrossWeight:item.totalGrossWeight, }); }); params.details = arr; @@ -1057,6 +1064,8 @@ productId: item.productId, auxiliaryUnit:item.auxiliaryUnit, auxiliaryAmount:item.auxiliaryAmount, + totalNetWeight:item.totalNetWeight, + totalGrossWeight:item.totalGrossWeight, }); } else { arr.push({ @@ -1066,6 +1075,8 @@ productId: item.productId, auxiliaryUnit:item.auxiliaryUnit, auxiliaryAmount:item.auxiliaryAmount, + totalNetWeight:item.totalNetWeight, + totalGrossWeight:item.totalGrossWeight, }); } }); @@ -1085,6 +1096,8 @@ productId: item.productId, auxiliaryUnit:item.auxiliaryUnit, auxiliaryAmount:item.auxiliaryAmount, + totalNetWeight:item.totalNetWeight, + totalGrossWeight:item.totalGrossWeight, }); // if(item.fromLocationId.value){ // arr.push({ @@ -1324,9 +1337,11 @@ { label: "浠�", prop: "fromLocationId", + min:120, sonLocation: true, isRequird: true, }, + { label: "鍦ㄥ簱鏁伴噺", prop: "inLibraryAmount" }, { label: "鏁伴噺", prop: "amount", inputFloat: true }, { label: "璁¢噺鍗曚綅", prop: "unit" }, { label: "杈呭姪鏁伴噺", prop: "auxiliaryAmount",inputFloatValue:true,isInputFloat:'inputFloatAuxiliaryAmount' }, @@ -1352,6 +1367,7 @@ label: "浠�", prop: "fromLocationId", sonLocation: true, + min:120, isRequird: true, }, { @@ -1384,6 +1400,7 @@ { label: "浠�", prop: "fromLocationId", + min:120, sonLocation: true, isRequird: true, }, @@ -1411,6 +1428,7 @@ { label: "浠�", prop: "fromLocationId", + min:120, sonLocation: true, isRequird: true, }, @@ -1424,10 +1442,17 @@ { label: "璁¢噺鍗曚綅", prop: "unit" }, ]; } + console.log(this.tableData,'===tableData') + if(this.workType == 2){ + for(let i in this.tableData){ + this.selSonLocationClick(this.tableData[i].fromLocation.id,'fromLocationId',this.tableData[i],i,3) + } + } this.productTableList = { tableData: this.tableData, tableColumn: tableColumnArr, }; + }, getTwoTable(data,value){ let list = data.map((res) => { @@ -1476,28 +1501,29 @@ moreUnit:res.product.moreUnit, moreUnitList:res.product.moreUnitList, auxiliaryUnit:res.auxiliaryUnit, - auxiliaryAmount:res.amount&&adjunctAmount?Number(adjunctAmount)*Number(res.amount):0, + // auxiliaryAmount:res.amount&&adjunctAmount?Number(adjunctAmount)*Number(res.amount):0, + auxiliaryAmount:res.auxiliaryAmount, auxiliaryAmountInfo:adjunctAmount?Number(adjunctAmount):0, inputFloatAuxiliaryAmount:isValue, - grossWeight:res.product.grossWeight, - totalGrossWeight:res.totalGrossWeight, - netWeight:res.product.netWeight, - totalNetWeight:res.totalNetWeight, + grossWeight:res.product.grossWeight==0?null:res.product.grossWeight, + totalGrossWeight:res.totalGrossWeight==0?null:Number(res.totalGrossWeight), + netWeight:res.product.netWeight==0?null:res.product.netWeight, + totalNetWeight:res.totalNetWeight==0?null:Number(res.totalNetWeight), }; }else{ return { ...res, amount: 1, - productName: res.name, - productId: res.id, + productName: res.productId?res.productName:res.name, + productId: res.productId?res.productId:res.id, auxiliaryUnit:adjunctUnit, - auxiliaryAmount:adjunctAmount?Number(adjunctAmount)*1:0, + auxiliaryAmount:adjunctAmount?(1/Number(adjunctAmount)).toFixed(2):0, auxiliaryAmountInfo:adjunctAmount?Number(adjunctAmount):0, inputFloatAuxiliaryAmount:isValue, - grossWeight:res.grossWeight, - totalGrossWeight:res.grossWeight?Number(res.grossWeight)*1:'', - netWeight:res.netWeight, - totalNetWeight:res.netWeight?Number(res.netWeight)*1:'', + grossWeight:res.grossWeight==0?null:res.grossWeight, + totalGrossWeight:res.grossWeight==0?null:Number(res.grossWeight)*1, + netWeight:res.netWeight==0?null:res.netWeight, + totalNetWeight:res.netWeight==0?null:Number(res.netWeight)*1, }; } }); @@ -1540,16 +1566,34 @@ this.countId = row.countId; this.tableData.map((item) => { if (item.id == row.id) { - debugger item[prop] = val; let auxiliaryAmountObject=this.getAuxiligyAmount(item.moreUnit,item.moreUnitList) if(prop=='amount'){ - item.totalGrossWeight=item[prop]&&item.grossWeight?Number(item.grossWeight)*Number(item[prop]):'' - item.totalNetWeight=item[prop]&&item.netWeight?Number(item.netWeight)*Number(item[prop]):'' - item.auxiliaryAmount=item[prop]&&auxiliaryAmountObject.auxiliaryAmount?Number(auxiliaryAmountObject.auxiliaryAmount)*Number(item[prop]):'' + item.totalGrossWeight=item[prop]&&item.grossWeight?Number(item.grossWeight)*Number(item[prop]):null + item.totalNetWeight=item[prop]&&item.netWeight?Number(item.netWeight)*Number(item[prop]):null + item.auxiliaryAmount=item[prop]&&auxiliaryAmountObject.auxiliaryAmount?(Number(item[prop])/Number(auxiliaryAmountObject.auxiliaryAmount)).toFixed(2):null } } }); + }, + selSonLocationClick(val, prop, row,scope,type){ + if(this.workType == 2){ + if(prop=='fromLocationId'){ + getLocationProductAmount({ + locationId:type==3?val:val.value, + productId:row.productId + }).then((res)=>{ + if(res.code==200){ + if(type==3){ + this.$set(this.tableData[scope],'inLibraryAmount',res.data?res.data.amount:0) + }else{ + this.$set(this.tableData[scope.$index],'inLibraryAmount',res.data?res.data.amount:0) + } + this.$forceUpdate() + } + }) + } + } }, // 鏂板 addProductClick(value) { @@ -1598,6 +1642,9 @@ // }) // } // } + }, + selProductClick(value, prop,row,scope){ + this.getSelectArray([value],scope.$index) }, // 鏂板鏂瑰紡淇敼 getSelectArray(val, index) { @@ -1649,7 +1696,7 @@ if (this.workType == "鍐呴儴璋冩嫧"||this.workType==3) { this.tableColumn = [ { label: "浜у搧", prop: "name", productName: true, isRequird: true }, - { label: "浠�", prop: "number", select: true }, + { label: "浠�", prop: "number", select: true,min:120,}, { label: "鑷�", prop: "amount", select: true }, { label: "瀹屾垚", prop: "total", inputFloat: true }, { label: "璁¢噺鍗曚綅", prop: "total", select: true }, @@ -1657,7 +1704,7 @@ } else { this.tableColumn = [ { label: "浜у搧", prop: "name", productName: true, isRequird: true }, - { label: "浠�", prop: "number", select: true }, + { label: "浠�", prop: "number", select: true , min:120,}, { label: "瀹屾垚", prop: "total", inputFloat: true }, { label: "璁¢噺鍗曚綅", prop: "total", select: true }, ]; @@ -1737,7 +1784,7 @@ baseOperationType: this.editConfig.infomation.baseOperationType || undefined, // 1鏄槈鑱� - cutAfterWidth:name=='jialian'?52.6: + cutAfterWidth:name=='jialian'?53.9: (this.editConfig.infomation.baseOperationType == 2 ? 50.8 : 53.3), -- Gitblit v1.8.0