From 970660e0f54a635c2ea1c17e1a3d5d37ed671573 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期二, 19 九月 2023 16:50:13 +0800 Subject: [PATCH] 11 --- src/views/project/fund/applyDetail/index.vue | 235 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 152 insertions(+), 83 deletions(-) diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue index 1904792..ccf4751 100644 --- a/src/views/project/fund/applyDetail/index.vue +++ b/src/views/project/fund/applyDetail/index.vue @@ -177,11 +177,13 @@ > </div></el-col > + </el-row> + <el-row v-if="businessType == 1 && operationType == 'check'"> <el-col :span="3" ><div style="margin-bottom: 15px;"> <el-button - type="primary" - icon="el-icon-download" + type="success" + icon="el-icon-edit-outline" @click="Manualcalculationfn" >璁$畻鏄庣粏</el-button > @@ -219,7 +221,7 @@ <template slot-scope="scope"> <el-select v-model="scope.row.applytype" - placeholder="鏈嶅姟绫诲瀷" + placeholder="璇烽�夋嫨鏈嶅姟绫诲瀷" @change="verifyFeeItemType(scope.row)" > <el-option @@ -240,7 +242,7 @@ <template slot-scope="scope"> <el-select v-model="scope.row.itemid" - placeholder="鏈嶅姟椤圭洰" + placeholder="璇烽�夋嫨鏈嶅姟椤圭洰" filterable @change="verifyFeeItem(scope.row)" :filter-method="val => searchItemType(val, scope)" @@ -381,7 +383,11 @@ type="primary" plain @click="ShowDetailDialog(scope, 'expert')" - >{{ scope.row.beneficiaryname }}</el-button + >{{ + scope.row.beneficiaryname + ? scope.row.beneficiaryname + : "鐐瑰嚮閫夋嫨" + }}</el-button > <!-- <el-select filterable @@ -407,14 +413,16 @@ align="center" label="鍗曚綅鍚嶇О" width="250" - v-if="form.applytype != '4'" + v-if="form.applytype != '4' && form.applytype != '3'" > <template slot-scope="scope"> <el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')" - >{{ scope.row.unitname }}</el-button + >{{ + scope.row.unitname ? scope.row.unitname : "鐐瑰嚮閫夋嫨" + }}</el-button > <!-- <el-select v-model="scope.row.unitno" @@ -433,11 +441,11 @@ </template> </el-table-column> <el-table-column - prop="unitno" + prop="beneficiaryname" align="center" label="鍗曚綅/涓汉" width="250" - v-if="form.applytype == '4'" + v-if="form.applytype == '4' || form.applytype == '3'" > <template slot-scope="scope"> <el-button @@ -445,9 +453,9 @@ plain @click="ShowDetailDialog(scope, 'expert')" >{{ - experthear == "expert" - ? scope.row.unitname - : scope.row.beneficiaryname + scope.row.beneficiaryname + ? scope.row.beneficiaryname + : "鐐瑰嚮閫夋嫨" }}</el-button > <!-- <el-select @@ -771,6 +779,16 @@ > <el-button type="primary" + @click="handleup" + v-if=" + operationType == 'add' || + operationType == 'update' || + ismanager == true + " + >涓婃姤</el-button + > + <el-button + type="primary" @click="checksubmit" v-if="operationType == 'check'" >鎻愪氦瀹℃牳</el-button @@ -788,7 +806,7 @@ v-loading="loading" > <el-form ref="funddetailForm" :model="funddetailForm"> - <el-row v-if="businessType != 4"> + <el-row v-if="businessType != 4 && businessType != 3"> <el-col :span="24" v-if="selectionType == 'expert' && businessType != 4" @@ -876,7 +894,7 @@ </el-col> </el-row> - <el-row v-if="businessType == 4"> + <el-row v-if="businessType == 4 || businessType == 3"> <el-col :span="24"> <el-form-item label="璇烽�夋嫨涓撳淇℃伅锛�" prop="experthear"> <el-radio-group @@ -918,7 +936,7 @@ <el-col :span="24" v-if="experthear == 'expert'"> <el-form-item label="鍗曚綅鍚嶇О" prop="unitno" label-width="120px"> <el-select - v-model="funddetailForm.unitname" + v-model="funddetailForm.beneficiaryname" placeholder="鍗曚綅鍚嶇О" @change="bbaaccss" clearable @@ -927,17 +945,17 @@ style="width: 100%" > <el-option - v-for="(spec, index) in unitList" + v-for="(spec, index) in feeUnitList" :key="index" - :label="spec.organizationname" - :value="spec.organizationname" + :label="spec.reportName" + :value="spec.reportName" ></el-option> </el-select> </el-form-item> </el-col> </el-row> - <el-row v-if="businessType != 4"> + <el-row v-if="businessType != 4 && businessType != 3"> <el-col :span="12" v-if="expertfrom == '2'"> <el-form-item label="涓撳濮撳悕" prop="expertname" label-width="80px"> <el-input @@ -966,7 +984,7 @@ </el-form-item> </el-col> </el-row> - <el-row v-if="businessType != 4"> + <el-row v-if="businessType != 4 && businessType != 3"> <el-col :span="24" v-if="expertfrom == '2'"> <el-form-item label="韬唤璇佸彿" @@ -992,7 +1010,7 @@ </el-col> </el-row> --> - <el-row v-if="businessType != 4"> + <el-row v-if="businessType != 4 && businessType != 3"> <el-col :span="24" v-if="expertfrom == '2'"> <el-form-item label="鍗曚綅鍚嶇О" @@ -1016,7 +1034,7 @@ </el-select> </el-form-item ></el-col> </el-row> - <el-row v-if="businessType != 4"> + <el-row v-if="businessType != 4 && businessType != 3"> <el-col :span="24" v-if="expertfrom == '2'"> <el-form-item label="寮�鎴烽摱琛�" @@ -1398,7 +1416,7 @@ exportLoading: false, usernamedata: "", jurisdiction: false, - + Routinglevel: 1, // 琛ㄥ崟鍙傛暟 form: {}, experthear: "", @@ -1437,8 +1455,8 @@ cityOptions: [], checkAll: false, checkedCities: [], - Personnelforname: "璇烽�夋嫨", - unitforname: "璇烽�夋嫨", + Personnelforname: null, + unitforname: null, isIndeterminate: true, //鏄惁鏄笓瀹惰垂鐨凮PO瀹℃壒浜哄憳 @@ -1721,6 +1739,7 @@ } else if (this.businessType == "3") { this.businessName = "鍖诲鎴愭湰鎶ラ攢鍗�"; this.amountLabel = "閲戦"; + this.getUnitList(); } else if (this.businessType == "4") { this.businessName = "鍔炲叕璐圭敤鎶ラ攢鍗�"; this.amountLabel = "閲戦"; @@ -1935,7 +1954,17 @@ }, /** 涓婃姤鎸夐挳鎿嶄綔 */ - handleUp() { + handleup() { + if ( + (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && + JSON.stringify(this.rbDetails) == + sessionStorage.getItem("apifunddetail")) || + !sessionStorage.getItem("apifunddetail") + ){ + }else{ + this.$message.error('璇蜂繚瀛樺悗鍐嶈繘琛屼笂鎶�'); + return + } this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", { confirmButtonText: "纭畾", cancelButtonText: "鍙栨秷", @@ -1952,6 +1981,7 @@ type: "success", message: "鐢宠鎴愬姛" }); + this.cancel() } else { this.$message({ type: "error", @@ -2015,10 +2045,7 @@ return; } - if ( - tempDetail.beneficiaryno == null || - tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨" - ) { + if (tempDetail.beneficiaryno == null) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (k + 1).toString() + @@ -2201,24 +2228,35 @@ // }); } - addorupdateFund(this.form).then(response => { - if (response.code === 200) { - this.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒"); - } else { - this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg); - } - }); sessionStorage.setItem( "apifunddetail", JSON.stringify(this.rbDetails) ); sessionStorage.setItem("apiform", JSON.stringify(this.form)); - + addorupdateFund(this.form).then(response => { + console.log(response, "淇濆瓨杩斿弬"); + if (response.code === 200) { + this.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒"); + this.$store.dispatch("tagsView/delView", this.$route); + this.$router.push({ + path: "/finance/applyDetail/", + query: { + id: response.data, + businessType: "2", + operationType: "update", + curCase: this.curCase + } + }); + this.Routinglevel++; + } else { + this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg); + } + }); //鍏抽棴绐楀彛 this.loading = false; // this.getfundList(); - this.$store.dispatch("tagsView/delView", this.$route); - this.$router.go(-1); + // this.$store.dispatch("tagsView/delView", this.$route); + // this.$router.go(-1); } }); }, 500), @@ -2243,8 +2281,10 @@ // 鍙栨秷鎸夐挳 cancel() { // this.reset(); + console.log(-this.Routinglevel); this.$store.dispatch("tagsView/delView", this.$route); - this.$router.go(-1); + this.$router.go(-this.Routinglevel); + }, //鑾峰彇褰撳墠鐢ㄦ埛淇℃伅 @@ -2346,6 +2386,7 @@ getFeeUnitList() { listReportname("org").then(res => { this.feeUnitList = res.data; + console.log(this.feeUnitList); }); }, @@ -2554,30 +2595,40 @@ //璁$畻涓◣锛歵ype(A:宸茬煡绋庡墠閲戦锛岃绠楃◣鍚庨噾棰濓紱B锛氬凡鐭ョ◣鍚庨噾棰濓紝璁$畻绋庡墠閲戦) calculateTax(row, type) { + let targetValue = 0; + for (let i = 0; i < this.rbDetails.length; i++) { + if (!this.rbDetails[i].amount) { + this.rbDetails[i].amount = 0; + } + targetValue += parseFloat(this.rbDetails[i].amount); // 鍋囪姣忎釜瀵硅薄涓殑鐗瑰畾鍊煎瓨鍌ㄥ湪'specificValue'灞炴�т笅 + } + console.log(targetValue, "鍚堣"); + this.form.pretaxcost = targetValue; + //if (isNaN(parseFloat(tempDetail.taxedamount))) //鑾峰彇鍙傛暟 - this.taxParam.beneficiaryNo = row.beneficiaryno; - this.taxParam.startTime = this.form.createTime.substring(0, 10); + // this.taxParam.beneficiaryNo = row.beneficiaryno; + // this.taxParam.startTime = this.form.createTime.substring(0, 10); - if (type == "A") { - // 璁$畻涓◣銆佺◣鍚庨噾棰� - this.taxParam.money = row.amount.toString(); - getTaxByBeneFiciaryNo(this.taxParam).then(res => { - if (res.code == 200) { - row.taxamount = res.data; - row.taxedamount = row.amount - row.taxamount; - } - }); - } else { - // 璁$畻绋庡墠銆佷釜绋庨噾棰� - this.taxParam.money = row.taxedamount.toString(); - getTaxBeforeByAfterMoney(this.taxParam).then(res => { - if (res.code == 200) { - row.taxamount = res.data.nowTax; - row.amount = parseFloat(res.data.nowTaxBeforeMoney); - } - }); - } + // if (type == "A") { + // // 璁$畻涓◣銆佺◣鍚庨噾棰� + // this.taxParam.money = row.amount.toString(); + // getTaxByBeneFiciaryNo(this.taxParam).then(res => { + // if (res.code == 200) { + // row.taxamount = res.data; + // row.taxedamount = row.amount - row.taxamount; + // } + // }); + // } else { + // // 璁$畻绋庡墠銆佷釜绋庨噾棰� + // this.taxParam.money = row.taxedamount.toString(); + // getTaxBeforeByAfterMoney(this.taxParam).then(res => { + // if (res.code == 200) { + // row.taxamount = res.data.nowTax; + // row.amount = parseFloat(res.data.nowTaxBeforeMoney); + // } + // }); + // } }, //瀵煎叆鎵�鏈夐」鐩� @@ -2604,8 +2655,8 @@ itemid: this.feeItemTypes[i].itemDetails[j].id, itemcode: this.feeItemTypes[i].itemDetails[j].itemCode, recordstatus: "-1", - beneficiaryname: "鐐瑰嚮閫夋嫨", - unitname: "鐐瑰嚮閫夋嫨", + beneficiaryname: null, + unitname: null, itemlist: this.feeItemTypes[i].itemDetails, rowfeeblocks: null, servicesscope: null, @@ -2687,10 +2738,7 @@ return; } - if ( - tempDetail.beneficiaryno == null || - tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨" - ) { + if (tempDetail.beneficiaryno == null) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (k + 1).toString() + @@ -2906,6 +2954,21 @@ Manualcalculationfn() { ManualCalculation(this.rbDetails).then(res => { console.log(res); + if (res.code == 200) { + sessionStorage.removeItem("apiform"); + sessionStorage.removeItem("apifunddetail"); + sessionStorage.setItem( + "apifunddetail", + JSON.stringify(this.rbDetails) + ); + sessionStorage.setItem("apiform", JSON.stringify(this.form)); + this.$router.go(0); + } else { + // this.$message({ + // type: "error", + // message: "鐢宠澶辫触" + // }); + } }); }, // 鎵归噺褰曞叆鐐瑰嚮 @@ -2970,6 +3033,7 @@ for (let i = 0; i < this.checkedCities.length + 1; i++) { this.rbDetails[i].orderno = i + 1; } + this.calculateTax(); this.batchdialogVisible = false; }, //鏂板涓�琛� @@ -2978,9 +3042,9 @@ orderno: null, id: null, fundid: null, - beneficiaryname: "鐐瑰嚮閫夋嫨", + beneficiaryname: null, beneficiaryno: null, - unitname: "鐐瑰嚮閫夋嫨", + unitname: null, unitno: null, uintuserno: null, title: null, @@ -3286,7 +3350,7 @@ ShowDetailDialog(spoce, showType) { this.spocewl = spoce; this.selectionType = showType; - if (this.businessType == 4 || !showType) { + if (this.businessType == 4 || this.businessType == 3 || !showType) { this.selectionType = this.experthear; } // if (!showType) { @@ -3294,7 +3358,7 @@ // } this.expertfrom = "1"; - + console.log(spoce); this.funddetailForm.index = spoce.$index; this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno; this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname; @@ -3313,20 +3377,23 @@ //涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨 ConfirmDetailDialog() { - if (this.businessType == 4) { - if (this.experthear == "expert") { - this.funddetailForm.beneficiaryname = this.unitforname; - } else { - this.funddetailForm.beneficiaryname = this.Personnelforname; - } - } - + // if (this.businessType == 4) { + // if (this.experthear == "expert") { + // this.funddetailForm.beneficiaryname = this.unitforname; + // } else { + // this.funddetailForm.beneficiaryname = this.Personnelforname; + // } + // } let tempIndex = this.funddetailForm.index; let tempExpertName = this.funddetailForm.beneficiaryname; let tempUnitname = this.funddetailForm.unitname; let singleDetail = this.rbDetails[tempIndex]; - if (this.selectionType == "expert" || this.businessType == 4) { + if ( + this.selectionType == "expert" || + this.businessType == 4 || + this.businessType == 3 + ) { if (this.expertfrom == "1" || this.experthear == "unit") { //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭� this.personlist.map(res => { @@ -3444,7 +3511,7 @@ // if (this.experthear == "unit") { // singleDetail.unitname = ""; // } - if (this.businessType == 4) { + if (this.businessType == 4 || this.businessType == 3) { singleDetail.beneficiaryname = this.funddetailForm.beneficiaryname; } this.rbDetails[tempIndex] = singleDetail; @@ -3477,7 +3544,9 @@ beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� - destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + destroyed() { + window.removeEventListener("beforeunload", e => this.beforeunloadFn(e)); + }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 }; </script> -- Gitblit v1.9.3