From e5e3e1a5bc8aa300c580126703bb6067221dee96 Mon Sep 17 00:00:00 2001 From: yxh <172933527@qq.com> Date: 星期四, 15 六月 2023 10:09:08 +0800 Subject: [PATCH] 主要修改了个税计算 --- src/views/project/fund/expertFeeFundApply/index.vue | 393 ++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 252 insertions(+), 141 deletions(-) diff --git a/src/views/project/fund/expertFeeFundApply/index.vue b/src/views/project/fund/expertFeeFundApply/index.vue index ed687bc..d4b0c3f 100644 --- a/src/views/project/fund/expertFeeFundApply/index.vue +++ b/src/views/project/fund/expertFeeFundApply/index.vue @@ -34,8 +34,7 @@ </el-row> </el-col> </el-row> - <el-table v-loading="loading" border highlight-current-row :data="donatebaseinfoList" - @row-click="selectDonotor"> + <el-table v-loading="loading" highlight-current-row :data="donatebaseinfoList" @row-click="selectDonotor"> <!-- <el-table-column label="鎹愮尞缂栧彿" align="center" prop="donorno" /> --> <el-table-column label="鎹愮尞杩涘害" align="center" prop="recordstate"> <template slot-scope="scope"> @@ -217,29 +216,29 @@ <el-row style="margin-top: 5px; margin-bottom: 5px"> <el-row style="margin-bottom: 10px"> <el-col :span="4"> - <el-button @click.native.prevent="addAlls" type="primary" size="small"> + <el-button @click.native.prevent="addAllItems" type="primary" size="small"> 瀵煎叆鏈嶅姟椤圭洰 </el-button> </el-col> </el-row> - <el-table :data="fundDetailArr" v-loading="loading" border highlight-current-row> + <el-table :data="fundDetails" v-loading="loading" border highlight-current-row> <el-table-column prop="orderno" align="center" label="搴忓彿" width="65"> <template slot-scope="scope"> <el-input v-model="scope.row.orderno" placeholder="搴忓彿" /> </template> </el-table-column> - <el-table-column prop="applytype" align="center" label="璐圭敤绫诲瀷" width="200"> + <el-table-column prop="applytype" align="center" label="鏈嶅姟璐圭敤绫诲瀷" width="200"> <template slot-scope="scope"> - <el-select v-model="scope.row.applytype" placeholder="璐圭敤绫诲瀷" @change="LoadItemTypeArr(scope.row)"> - <el-option v-for="dict in fundtypeArr" :key="dict.index" :label="dict.label" + <el-select v-model="scope.row.applytype" placeholder="鏈嶅姟璐圭敤绫诲瀷" @change="loadItemType(scope.row)"> + <el-option v-for="dict in rowfeeItemTypes" :key="dict.index" :label="dict.label" :value="dict.value"></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="itemtype" align="center" label="鏈嶅姟椤圭洰" width="260"> + <el-table-column prop="itemid" align="center" label="鏈嶅姟椤圭洰鍚嶇О" width="260"> <template slot-scope="scope"> - <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰" filterable @change="select(scope.row)" - :filter-method="(val) => SearchItem(val, scope)"> + <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰鍚嶇О" filterable @change="verifyFeeItem(scope.row)" + :filter-method="(val) => searchItemType(val, scope)"> <el-option v-for="dict in scope.row.itemArr" :key="dict.index" :label="dict.itemName" :value="dict.id"></el-option> </el-select> @@ -247,25 +246,25 @@ </el-table-column> <el-table-column prop="itemcode" align="center" label="椤圭洰缂栧彿" show-overflow-tooltip="" v-if="false"> </el-table-column> - <el-table-column prop="servicesscopename" align="center" label="璐圭敤璇存槑" width="180"> + <el-table-column prop="servicesscope" align="center" label="璐圭敤璇存槑" width="180"> <template slot-scope="scope"> <el-select v-model="scope.row.servicesscope" placeholder="璐圭敤璇存槑" clearable allow-create filterable @change="selectedRemark(scope.row)"> - <el-option v-for="dict in scope.row.fundblock" :key="dict.servicesscope" :label="dict.expensedescribe" + <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.servicesscope" :label="dict.remark" :value="dict.servicesscope"></el-option> </el-select> </template> </el-table-column> - <el-table-column v-if="this.ismanager == true" prop="amount" align="center" label="绋庡墠閲戦" width="100"> + <el-table-column v-if="this.ismanager == true" prop="amount" align="center" label="绋庡墠閲戦" width="120"> <template slot-scope="scope"> <el-select v-model="scope.row.amount" placeholder="绋庡墠閲戦" clearable filterable allow-create @change="selectamount(scope.row)"> - <el-option v-for="dict in scope.row.fundblock" :key="dict.expensedescribe" :label="dict.expense" + <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.expensedescribe" :label="dict.expense" :value="dict.expense"></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="100" v-if="this.ismanager == true"> + <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="this.ismanager == true"> <!-- v-if="form.applytype != '3'"涓婂悓 --> <template slot-scope="scope"> <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" /> @@ -335,7 +334,6 @@ <el-input v-model="scope.row.remark" placeholder="澶囨敞" /> </template> </el-table-column> - <el-table-column prop="title" align="center" label="鑱岀О" width="120" v-if="form.applytype != '3'"> <template slot-scope="scope"> <el-input v-model="scope.row.title" placeholder="鑱岀О" /> @@ -360,9 +358,8 @@ <el-table-column fixed="right" align="center" label="鎿嶄綔" width="180" v-if="dialogType == 'edit'"> <template slot-scope="scope"> <el-button type="text" size="mini" @click="addRow(scope.$index)">鏂板</el-button> - <el-button @click.native.prevent=" - deleteRows(scope.row, scope.$index, fundDetailArr) + deleteRows(scope.row, scope.$index, fundDetails) " type="text" size="small"> 鍒犻櫎 </el-button> @@ -413,8 +410,8 @@ <el-row> <el-col :span="12"> <el-form-item label="璐圭敤鐢宠闄勪欢" align="left" prop="annexbankcard"> - <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple :limit="5" - :headers="headers" :on-success="(response, file, fileList) => + <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple + :limit="20" :headers="headers" :on-success="(response, file, fileList) => uploadSccess(response, file, fileList) " :on-preview="downFile" :disabled='dialogType == "detail"' :on-error="handleUploadError" :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> @@ -512,6 +509,11 @@ getFundType, getFundTypeAll, listcountItem, + getDataBybeneficiaryNo, + getTaxByBeneFiciaryNo, + getTaxBeforeByBeneFiciaryNo, + getTaxationByBeneFiciaryNo, + getTaxBeforeByAfterMoney } from "@/api/project/funddetail"; import { listFundflow } from "@/api/project/fundflow"; import { @@ -590,6 +592,14 @@ applytype: "1", createBy: null, }, + + //璁$畻涓◣鍙傛暟 + taxParam: { + beneficiaryNo: '', + money: '0', + startTime: '', + }, + // 琛ㄥ崟鍙傛暟 form: {}, personlist: [], @@ -622,22 +632,26 @@ // 鎹愮尞浜洪亾鎱伴棶閲戣〃鏍兼暟鎹� donateconsolationfundList: [], - - fundDetailArr: [], + //璐圭敤鏄庣粏鍒楄〃 + fundDetails: [], // 寮瑰嚭灞傛爣棰� title: "", userlist: [], itemArr: [], reporters: [], + + //琛岃褰曠殑璐圭敤绫诲瀷鏁扮粍 + rowfeeItemTypes: [], //璐圭敤绫诲瀷鏁扮粍 - fundtypeArr: [], - fundblock: [], + feeItemTypes: [], + //璐圭敤璇存槑 + rowfeeblocks: [], defaultperson: {}, //鏄惁鏄笓瀹惰垂鐨凮PO瀹℃壒浜哄憳 ismanager: false, - fundtypeArrAll: [], + unitList: [], dialogType: "edit", fundflowList: [], @@ -681,11 +695,12 @@ this.detailInfoDialogShow = true; this.detailInfoDialogShowType = showType; }, + ConfirmDetailDialog() { let tempIndex = this.funddetailForm.index; let tempName = this.funddetailForm.beneficiaryname; let tempUnitname = this.funddetailForm.unitname; - let singleDetail = this.fundDetailArr[tempIndex]; + let singleDetail = this.fundDetails[tempIndex]; if (this.detailInfoDialogShowType == "name") { this.personlist.map((res) => { if (tempName == res.username) { @@ -699,11 +714,9 @@ singleDetail.title = res.title; singleDetail.unitname = res.unitname; singleDetail.unitno = parseInt(res.unitno); - } else { - singleDetail.beneficiaryname = tempName; - singleDetail.beneficiaryno = tempName; } }); + } else if (this.detailInfoDialogShowType == "unit") { singleDetail.unitno = this.funddetailForm.unitno; try { @@ -720,9 +733,10 @@ } } - this.fundDetailArr[tempIndex] = singleDetail; + this.fundDetails[tempIndex] = singleDetail; this.detailInfoDialogShow = false; }, + handleup(row) { this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", { confirmButtonText: "纭畾", @@ -757,29 +771,22 @@ }); }, - // recordstatus - // updateFund(row).then(res=>{ - // console.log('鐘舵�佹洿鏂�',res); - // }) - // }, - + //鑾峰彇褰撳墠鐢ㄦ埛淇℃伅 getUsermsg() { getUserProfile().then((response) => { this.defaultperson = response.data; this.standardlevel = response.data.standardlevel; - if ( - this.defaultperson.createBy == "admin" || - this.defaultperson.createBy == "001" || - this.defaultperson.createBy == "002" - ) { + if (this.defaultperson.createBy == "admin" || this.defaultperson.createBy == "001" || this.defaultperson.createBy == "002") { this.ismanager = true; } else { this.ismanager = false; } }); }, + + //鑾峰彇璐圭敤椤圭洰鐨勫娉ㄤ俊鎭� selectedRemark(row) { - row.fundblock.forEach((item, i) => { + row.rowfeeblocks.forEach((item, i) => { if (item.servicesscope === row.servicesscope) { row.servicesscopename = item.expensedescribe; if (row.servicesscopename.includes("绋庡悗")) { @@ -789,14 +796,17 @@ row.amount = item.expense; row.taxedamount = 0.0; } + this.form.serviceFunddetails = 0; - this.fundDetailArr.map((item) => { + this.fundDetails.map((item) => { this.form.serviceFunddetails += item.amount; }); } }); }, - select(row) { + + //鏍¢獙鏀惰垂椤圭洰鏄惁閲嶅 + verifyFeeItem(row) { row.itemArr.map((res) => { if (row.itemid === res.id) { row.remark = res.itemDescribe; @@ -804,20 +814,21 @@ } }); var repeatNum = 0; - this.fundDetailArr.map((res) => { + this.fundDetails.map((res) => { if (res.applytype === row.applytype && res.itemid == row.itemid) { repeatNum++; } }); if (repeatNum > 1) { - this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃鏈嶅姟椤圭洰"); + this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃璇ユ湇鍔¢」鐩簡"); } + //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭� getdetailsByItemId(row.itemid).then((res) => { let fundmsg = res.data; - let fundblock = []; + let rowfeeblocks = []; fundmsg.forEach((item) => { - fundblock.push({ + rowfeeblocks.push({ expense: item.expense, expensedescribe: item.expensedescribe, remark: item.expensedescribe, @@ -825,18 +836,22 @@ }); }); - row.fundblock = fundblock; + row.rowfeeblocks = rowfeeblocks; row.servicesscope = null; row.servicesscopename = ""; }); + }, + + // selectamount(row) { - this.fundblock.forEach((item, i) => { + this.rowfeeblocks.forEach((item, i) => { if (item.expense === row.amount) { row.remark = item.expensedescribe; } }); }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { this.queryParams.pageNum = 1; @@ -902,7 +917,7 @@ // this.form.createTime = nowdate; //this.open = true; //this.initFundApplyForm(); - this.fundDetailArr = []; + this.fundDetails = []; this.addRow(); this.dialogOpen = true; this.dialogType = "edit"; @@ -982,41 +997,65 @@ this.fileList = [] }, - addAlls() { + //瀵煎叆鎵�鏈夐」鐩� + addAllItems() { this.loading = true; - this.fundDetailArr = this.fundDetailArr.filter( + this.fundDetails = this.fundDetails.filter( (r) => r.applytype != "" && r.applytype != null ); let listAdd = []; - //let listAdd = this.fundDetailArr; - for (let i = 0; i < this.fundtypeArrAll.length; i++) { - for (let j = 0; j < this.fundtypeArrAll[i].itemDetails.length; j++) { - let list = this.fundDetailArr.filter( + //let listAdd = this.fundDetails; + for (let i = 0; i < this.feeItemTypes.length; i++) { + for (let j = 0; j < this.feeItemTypes[i].itemDetails.length; j++) { + let list = this.fundDetails.filter( (r) => - r.applytype == this.fundtypeArrAll[i].itemType && - r.itemid == this.fundtypeArrAll[i].itemDetails[j].id + r.applytype == this.feeItemTypes[i].itemType && + r.itemid == this.feeItemTypes[i].itemDetails[j].id ); + if (list.length == 0) { let rowData = { id: null, orderno: listAdd.length + 1, - applytype: this.fundtypeArrAll[i].itemType, - itemid: this.fundtypeArrAll[i].itemDetails[j].id, - itemcode: this.fundtypeArrAll[i].itemDetails[j].itemCode, + applytype: this.feeItemTypes[i].itemType, + itemid: this.feeItemTypes[i].itemDetails[j].id, + itemcode: this.feeItemTypes[i].itemDetails[j].itemCode, recordstatus: "-1", beneficiaryname: "鐐瑰嚮閫夋嫨", unitname: "鐐瑰嚮閫夋嫨", - itemArr: this.fundtypeArrAll[i].itemDetails, + itemArr: this.feeItemTypes[i].itemDetails, + rowfeeblocks: null, + servicesscope: null, + servicesscopename: "" }; + + //鑾峰彇鏀惰垂椤圭洰鐨勮鏄庝俊鎭� + getdetailsByItemId(rowData.itemid).then((res) => { + let fundmsg = res.data; + let rowfeeblocks = []; + fundmsg.forEach((item) => { + rowfeeblocks.push({ + expense: item.expense, + expensedescribe: item.expensedescribe, + remark: item.expensedescribe, + servicesscope: item.id, + }); + }); + + rowData.rowfeeblocks = rowfeeblocks; + rowData.servicesscope = null; + rowData.servicesscopename = ""; + }); + listAdd.push(rowData); } } } - this.fundDetailArr = listAdd; + this.fundDetails = listAdd; this.loading = false; - // let Outerarr = this.fundDetailArr; + // let Outerarr = this.fundDetails; // Outerarr.map((res) => { - // let onelist = this.fundtypeArr; + // let onelist = this.rowfeeItemTypes; // onelist.map((item) => { // //绗竴灞備笉鐩哥瓑鏃讹紱 // if (res.applytype !== item.itemType) { @@ -1025,6 +1064,7 @@ // }); // }); }, + addAll(row, i, arr) { row.itemArr.map((res) => { if (res.id !== row.itemid) { @@ -1036,20 +1076,21 @@ getdetailsByItemId(arr[a].itemid).then((res) => { let fundmsg = res.data; - let fundblock = []; + let rowfeeblocks = []; fundmsg.forEach((item) => { - fundblock.push({ + rowfeeblocks.push({ expense: item.expense, expensedescribe: item.expensedescribe, remark: item.expensedescribe, servicesscope: item.id, }); }); - row.fundblock = fundblock; + row.rowfeeblocks = rowfeeblocks; }); } }); }, + //鏂板涓�琛� addRow(rowIndex) { let rowData = { @@ -1093,21 +1134,21 @@ uploadtime: null, itemArr: [], servicesscope: null, - fundblock: [], + rowfeeblocks: [], }; if (rowIndex == undefined || rowIndex == null || rowIndex < 0) { - this.fundDetailArr.push(rowData); + this.fundDetails.push(rowData); } else { - this.fundDetailArr.splice(rowIndex + 1, 0, rowData); + this.fundDetails.splice(rowIndex + 1, 0, rowData); } - for (let i = 0; i < this.fundDetailArr.length; i++) { - this.fundDetailArr[i].orderno = i + 1; + for (let i = 0; i < this.fundDetails.length; i++) { + this.fundDetails[i].orderno = i + 1; } }, //鍔犺浇鏈嶅姟椤圭洰 - LoadItemTypeArr(row) { - let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype); + loadItemType(row) { + let list = this.feeItemTypes.filter((r) => r.itemType == row.applytype); row.itemArr = list[0].itemDetails; row.itemid = null; this.$forceUpdate(); @@ -1128,12 +1169,20 @@ let totalPreTaxAmount = 0.0; let totalAfterTaxAmount = 0.0; let totalAmount = 0.0; - for (let k = 0; k < this.fundDetailArr.length; k++) { - let tempDetail = this.fundDetailArr[k]; + + //淇濆瓨鍓嶆牎楠屾暟鎹� + for (let k = 0; k < this.fundDetails.length; k++) { + let tempDetail = this.fundDetails[k]; if (tempDetail.itemid == null) { - this.$modal.msgWarning("璇烽�夋嫨鏈嶅姟椤圭洰"); + this.$modal.msgWarning("鏈嶅姟椤圭洰鏄繀閫夐」锛岃閫夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"); return; } + + if (tempDetail.beneficiaryno == null) { + this.$modal.msgWarning("鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (k + 1).toString() + "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"); + return; + } + // //鍒ゆ柇鍗曚綅 unitSel // try { // let unitIndex = this.unitList.findIndex( @@ -1147,15 +1196,41 @@ // } catch { // tempDetail.unitname = tempDetail.unitno; // } - if (!isNaN(parseFloat(tempDetail.amount))) { - totalPreTaxAmount += parseFloat(tempDetail.amount); - totalAmount += parseFloat(tempDetail.amount); + + //璁$畻涓◣ + //if (isNaN(parseFloat(tempDetail.taxedamount))) + if (tempDetail.taxedamount == undefined || tempDetail.taxedamount == null || tempDetail.taxedamount == 0 || tempDetail.taxedamount == '') { + //鑾峰彇鍙傛暟 + this.taxParam.beneficiaryNo = tempDetail.beneficiaryno; + this.taxParam.money = tempDetail.amount.toString(); + this.taxParam.startTime = this.form.createTime.substring(0, 10); + getTaxByBeneFiciaryNo(this.taxParam).then((res) => { + if (res.code == 200) { + tempDetail.taxamount = res.data; + tempDetail.taxedamount = tempDetail.amount - tempDetail.taxamount; + } + }); } - if (!isNaN(parseFloat(tempDetail.taxedamount))) { - totalAfterTaxAmount += parseFloat(tempDetail.taxedamount); - totalAmount += parseFloat(tempDetail.taxedamount); + + //if (isNaN(parseFloat(tempDetail.amount))) + if (tempDetail.amount == undefined || tempDetail.amount == null || tempDetail.amount == 0 || tempDetail.amount == '') { + //鑾峰彇鍙傛暟 + this.taxParam.beneficiaryNo = tempDetail.beneficiaryno; + this.taxParam.money = tempDetail.taxedamount.toString(); + this.taxParam.startTime = this.form.createTime.substring(0, 10); + + getTaxBeforeByAfterMoney(this.taxParam).then((res) => { + console.log("",res); + if (res.code == 200) { + tempDetail.taxamount = res.data.nowTax; + tempDetail.amount = res.data.nowTaxBeforeMoney; + } + }); } - this.fundDetailArr[k] = tempDetail; + + totalAfterTaxAmount += parseFloat(tempDetail.taxedamount); + totalAmount += parseFloat(tempDetail.amount); + this.fundDetails[k] = tempDetail; } this.loading = true; @@ -1178,8 +1253,8 @@ this.selectDonotor(this.curCase); this.$modal.msgSuccess("淇敼鎴愬姛"); this.loading = false; - for (let m = 0; m < this.fundDetailArr.length; m++) { - let tempData = this.fundDetailArr[m]; + for (let m = 0; m < this.fundDetails.length; m++) { + let tempData = this.fundDetails[m]; let tempItemArr = tempData.itemArr; tempData.fundid = formData.id; //鑾峰彇鏈嶅姟椤圭洰鏄庣粏 @@ -1190,6 +1265,15 @@ tempData.itemname = tempItemArr[itemIndex].itemName; tempData.itemid = tempItemArr[itemIndex].id; } + + //鑾峰彇applytypename + let applytypeIndex = this.rowfeeItemTypes.findIndex( + (item) => tempData.applytype == item.value + ); + if (applytypeIndex > -1) { + tempData.applytypename = this.rowfeeItemTypes[applytypeIndex].label; + } + if (tempData.id > 0) { updateFunddetail(tempData).then((response2) => { }); } else { @@ -1199,9 +1283,10 @@ }); } else { //淇濆瓨璐圭敤鐢宠 - for (let m = 0; m < this.fundDetailArr.length; m++) { - let tempData = this.fundDetailArr[m]; + for (let m = 0; m < this.fundDetails.length; m++) { + let tempData = this.fundDetails[m]; let tempUtemArr = tempData.itemArr; + //鑾峰彇鏈嶅姟椤圭洰鏄庣粏 let itemIndex = tempUtemArr.findIndex( (item) => tempData.itemid == item.id @@ -1210,21 +1295,24 @@ tempData.itemname = tempUtemArr[itemIndex].itemName; tempData.itemid = tempUtemArr[itemIndex].id; } + //鑾峰彇applytypename - let applytypeIndex = this.fundtypeArr.findIndex( + let applytypeIndex = this.rowfeeItemTypes.findIndex( (item) => tempData.applytype == item.value ); if (applytypeIndex > -1) { - tempData.applytypename = this.fundtypeArr[applytypeIndex].label; + tempData.applytypename = this.rowfeeItemTypes[applytypeIndex].label; } - this.fundDetailArr[m] = tempData; + this.fundDetails[m] = tempData; } + this.form.serviceFunddetails = 0; - this.fundDetailArr.map((item) => { + this.fundDetails.map((item) => { this.form.serviceFunddetails += item.amount; }); - this.form.serviceFunddetails = this.fundDetailArr; + this.form.serviceFunddetails = this.fundDetails; this.form.recordstatus = -1; + batchUploadFund(this.form).then((response) => { if (response.code === 200) { this.$modal.msgSuccess("鏂板鎴愬姛"); @@ -1240,13 +1328,16 @@ } }); }, + + //鑾峰彇涓撳鍒楄〃 getlistExternalperson() { listExternalperson().then((res) => { this.personlist = res.rows; }); }, + + //涓撳浜哄憳鍒楄〃 selectReporters() { - //涓撳浜哄憳鍒楄〃 let arr = ["expert"]; let arrreportlist = []; for (let i = 0; i < arr.length; i++) { @@ -1262,6 +1353,7 @@ }); } }, + selectpersonmsg(row) { // if(row.beneficiaryname) this.personlist.map((res) => { @@ -1281,11 +1373,13 @@ } }); }, + getlistUser() { listUser().then((res) => { this.userlist = res.data; }); }, + /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate(row) { this.isopen = 0; @@ -1305,19 +1399,32 @@ this.form.name = this.curCase.name; //闄勪欢澶勭悊 this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] - getownFundDetail(id).then((res) => { - this.fundDetailArr = res.data; - for (let m = 0; m < this.fundDetailArr.length; m++) { - this.fundDetailArr[m].itemArr = []; - this.getItemArr(m, this.fundDetailArr[m]); - this.fundDetailArr[m].fundblock = []; - this.fundDetailArr[m].fundblock.push({ - expense: this.fundDetailArr[m].expense, - expensedescribe: this.fundDetailArr[m].servicesscopename, - remark: this.fundDetailArr[m].servicesscope, - servicesscope: this.fundDetailArr[m].servicesscope, + this.fundDetails = res.data; + for (let m = 0; m < this.fundDetails.length; m++) { + this.fundDetails[m].itemArr = []; + this.getItemArr(m, this.fundDetails[m]); + + //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭� + this.fundDetails[m].rowfeeblocks = []; + + this.fundDetails[m].rowfeeblocks.push({ + servicesscope: this.fundDetails[m].servicesscope, + expensedescribe: this.fundDetails[m].servicesscopename, + expense: this.fundDetails[m].expense, + remark: this.fundDetails[m].servicesscopename, }); + // getdetailsByItemId(this.fundDetails[m].itemid).then((res) => { + // let fundmsg = res.data; + // fundmsg.forEach((item) => { + // this.fundDetails[m].rowfeeblocks.push({ + // servicesscope: item.id, + // expensedescribe: item.expensedescribe, + // expense: item.expense, + // remark: item.expensedescribe, + // }); + // }); + // }); } }); }); @@ -1349,16 +1456,16 @@ this.fundflowList = res.rows; }); getownFundDetail(id).then((res) => { - this.fundDetailArr = res.data; - for (let m = 0; m < this.fundDetailArr.length; m++) { - this.fundDetailArr[m].itemArr = []; - this.getItemArr(m, this.fundDetailArr[m]); - this.fundDetailArr[m].fundblock = []; - this.fundDetailArr[m].fundblock.push({ - expense: this.fundDetailArr[m].expense, - expensedescribe: this.fundDetailArr[m].servicesscopename, - remark: this.fundDetailArr[m].servicesscope, - servicesscope: this.fundDetailArr[m].servicesscope, + this.fundDetails = res.data; + for (let m = 0; m < this.fundDetails.length; m++) { + this.fundDetails[m].itemArr = []; + this.getItemArr(m, this.fundDetails[m]); + this.fundDetails[m].rowfeeblocks = []; + this.fundDetails[m].rowfeeblocks.push({ + expense: this.fundDetails[m].expense, + expensedescribe: this.fundDetails[m].servicesscopename, + remark: this.fundDetails[m].servicesscope, + servicesscope: this.fundDetails[m].servicesscope, }); } }); @@ -1403,15 +1510,15 @@ }).then(() => { this.$set(rows, rows.splice(index, 1)); getownFundDetail(this.form.id).then((res) => { - this.$set(this.fundDetailArr, res.data); + this.$set(this.fundDetails, res.data); this.sumTotalFee(); - // this.fundDetailArr = res.data + // this.fundDetails = res.data }); }); } // getownFundDetail(this.form.id).then(res=>{ - // this.$set(this.fundDetailArr,res.data) - // this.fundDetailArr = res.data + // this.$set(this.fundDetails,res.data) + // this.fundDetails = res.data // }) }); } else { @@ -1424,37 +1531,40 @@ }); }, + //璁$畻涓◣ + calculateTax() { }, + //璁$畻鎬婚噾棰� sumTotalFee(row) { let allSum = 0; if (this.form.applytype != null) { - for (let i = 0; i < this.fundDetailArr.length; i++) { + for (let i = 0; i < this.fundDetails.length; i++) { let totalFee = 0; let taxFee = 0; if (this.form.applytype == 1 || this.form.applytype == 2) { //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣 - if (!isNaN(parseFloat(this.fundDetailArr[i].amount))) { - totalFee += parseFloat(this.fundDetailArr[i].amount); - taxFee += parseFloat(this.fundDetailArr[i].amount); + if (!isNaN(parseFloat(this.fundDetails[i].amount))) { + totalFee += parseFloat(this.fundDetails[i].amount); + taxFee += parseFloat(this.fundDetails[i].amount); } - if (!isNaN(parseFloat(this.fundDetailArr[i].taxamount))) { - totalFee -= parseFloat(this.fundDetailArr[i].taxamount); - taxFee -= parseFloat(this.fundDetailArr[i].taxamount); + if (!isNaN(parseFloat(this.fundDetails[i].taxamount))) { + totalFee -= parseFloat(this.fundDetails[i].taxamount); + taxFee -= parseFloat(this.fundDetails[i].taxamount); } } else if (this.form.applytype == 3) { if ( - !isNaN(parseFloat(this.fundDetailArr[i].price)) && - !isNaN(parseFloat(this.fundDetailArr[i].quantity)) + !isNaN(parseFloat(this.fundDetails[i].price)) && + !isNaN(parseFloat(this.fundDetails[i].quantity)) ) { totalFee += - parseFloat(this.fundDetailArr[i].price) * - parseFloat(this.fundDetailArr[i].quantity); + parseFloat(this.fundDetails[i].price) * + parseFloat(this.fundDetails[i].quantity); } } //绋庡墠銆佺◣鍚庨渶瑕佺嫭绔嬪綍鍏� // if (!isNaN(parseFloat(taxFee))) { - // this.fundDetailArr[i].taxedamount = taxFee.toFixed(2); + // this.fundDetails[i].taxedamount = taxFee.toFixed(2); // } allSum += totalFee; @@ -1468,10 +1578,10 @@ getCurFundType() { getFundTypeAll(this.currentApplyType).then((res) => { let dataList = res.data; - this.fundtypeArrAll = dataList; - this.fundtypeArr = []; + this.feeItemTypes = dataList; + this.rowfeeItemTypes = []; for (let m = 0; m < dataList.length; m++) { - this.fundtypeArr.push({ + this.rowfeeItemTypes.push({ value: dataList[m].itemType, label: dataList[m].itemTypeName, }); @@ -1480,14 +1590,14 @@ }, getItemArr(rowindex, row) { - let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype); + let list = this.feeItemTypes.filter((r) => r.itemType == row.applytype); row.itemArr = list[0].itemDetails; - this.$set(this.fundDetailArr, rowindex, row); + this.$set(this.fundDetails, rowindex, row); //this.loading = true; // getItemNames(row.applytype).then((res) => { // this.loading = false; // row.itemArr = res.data; - // this.$set(this.fundDetailArr, rowindex, row); + // this.$set(this.fundDetails, rowindex, row); // }); }, @@ -1541,7 +1651,8 @@ }); }, - SearchItem(val, scope) { + //绛涙煡鍑哄搴旂殑璐圭敤椤圭洰 + searchItemType(val, scope) { let result = []; if (val != "") { let tempItemArr = scope.row.itemArr; @@ -1557,7 +1668,7 @@ } else { getItemNames(scope.row.applytype).then((res) => { scope.row.itemArr = res.data; - //this.$set(this.fundDetailArr, rowindex, row); + //this.$set(this.fundDetails, rowindex, row); }); } }, -- Gitblit v1.9.3