From 40e702344f3d35e251bb098d1227fdea74ee8e4e Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期三, 20 三月 2024 17:50:24 +0800 Subject: [PATCH] 11 --- src/views/project/tallage/computingBill/index.vue | 381 +++++++++++++++++++++++++---------------------------- 1 files changed, 179 insertions(+), 202 deletions(-) diff --git a/src/views/project/tallage/computingBill/index.vue b/src/views/project/tallage/computingBill/index.vue index 0427c66..a617bec 100644 --- a/src/views/project/tallage/computingBill/index.vue +++ b/src/views/project/tallage/computingBill/index.vue @@ -29,7 +29,7 @@ <el-form-item label="绠楃◣鐘舵��" prop="sex"> <el-select v-model="form.istax" placeholder="璇烽�夋嫨鐘舵��"> <el-option - v-for="dict in gatheringlist" + v-for="dict in swgatheringlist" :key="dict.label" :label="dict.label" :value="dict.value" @@ -55,6 +55,7 @@ ><el-form-item label="绋庡墠閲戦" prop="donateno"> <el-input v-model="form.pretaxamount" + :disabled="true" placeholder="璇疯緭鍏ョ◣鍓嶉噾棰�" /> </el-form-item> @@ -63,6 +64,7 @@ ><el-form-item label="鎵g◣閲戦" prop="donateno"> <el-input v-model="form.taxMoney" + :disabled="true" placeholder="璇疯緭鍏ユ墸绋庨噾棰�" /> </el-form-item> @@ -72,6 +74,7 @@ <el-form-item label="绋庡悗閲戦" prop="donationcategory"> <el-input v-model="form.taxedamount" + :disabled="true" placeholder="璇疯緭鍏ユ敹娆捐鍙�" /> </el-form-item> @@ -112,15 +115,15 @@ show-summary > <el-table-column - prop="organno" + prop="donorname" align="center" fixed label="妗堜緥鎹愮尞鑰�" - width="90" + width="120" > <template slot-scope="scope"> <el-input - v-model="scope.row.organno" + v-model="scope.row.donorname" placeholder="妗堜緥鎹愮尞鑰�" :disabled="true" /> @@ -131,39 +134,32 @@ label="鐢宠浜�" align="center" width="120" - prop="caseno" + prop="username" > <template slot-scope="scope"> <el-input - v-model="scope.row.caseno" + v-model="scope.row.username" :disabled="true" placeholder="鐢宠浜�" /> </template> </el-table-column> <el-table-column - prop="hospitalno" + prop="deptmentname" align="center" label="鎵�灞炵粍鍒�" width="280" > <template slot-scope="scope"> - <!-- <el-input - v-model="scope.row.hospitalname" - :disabled="true" - placeholder="鎺ユ敹鍖婚櫌" - /> --> - <org-selecter - ref="tranHosSelect" - :org-type="'4'" + <el-input + v-model="scope.row.deptmentname" :disabled="true" - v-model="scope.row.hospitalno" - style="width: 100%" + placeholder="鎺ユ敹鍖婚櫌" /> </template> </el-table-column> <el-table-column - prop="receiveTime" + prop="applyTime" align="center" label="鐢宠鏃ユ湡" width="200" @@ -173,7 +169,7 @@ clearable size="small" style="width: 100%" - v-model="scope.row.receiveTime" + v-model="scope.row.applyTime" :disabled="true" type="date" value-format="yyyy-MM-dd HH:mm:ss" @@ -182,52 +178,37 @@ </el-date-picker> </template> </el-table-column> - <el-table-column - prop="organname" - fixed - align="center" - label="绋庡墠閲戦" - width="120" - > + <el-table-column prop="pretaxcost" align="center" label="绋庡墠閲戦"> <template slot-scope="scope"> <el-input - v-model="scope.row.organname" + v-model="scope.row.pretaxcost" :disabled="true" placeholder="绋庡墠閲戦" /> </template> </el-table-column> - <el-table-column - label="鎵g◣閲戦" - align="center" - width="120" - prop="name" - > + <el-table-column label="鎵g◣閲戦" align="center" prop="taXmoney"> <template slot-scope="scope"> <el-input - v-model="scope.row.name" + v-model="scope.row.taXmoney" :disabled="true" placeholder="鎵g◣閲戦" /> </template> </el-table-column> - <el-table-column - prop="organcharge" - align="center" - label="绋庡悗閲戦" - width="150" - > + <el-table-column prop="taxedcost" align="center" label="绋庡悗閲戦"> <template slot-scope="scope"> <el-input @blur="chargeSum" - v-model="scope.row.organcharge" + :disabled="true" + v-model="scope.row.taxedcost" placeholder="绋庡悗閲戦" /> </template> </el-table-column> <el-table-column - prop="organchargedesc" + prop="remark" width="280" align="center" label="澶囨敞" @@ -236,17 +217,13 @@ <el-input type="textarea" :rows="1" - v-model="scope.row.organchargedesc" + :disabled="true" + v-model="scope.row.remark" placeholder="澶囨敞" /> </template> </el-table-column> - <el-table-column - label="鎿嶄綔" - fixed="right" - width="260" - align="center" - > + <el-table-column label="鎿嶄綔" fixed="right" align="center"> <template slot-scope="scope"> <el-button type="text" @@ -275,6 +252,12 @@ v-if="operationType == 'add' || operationType == 'update'" >淇� 瀛�</el-button > + <el-button + @click="calculateFn" + v-if="operationType == 'add' || operationType == 'update'" + >绠楃◣</el-button + > + <el-button type="info" @click="cancel">鍏抽棴</el-button> </div> <!-- 娣诲姞鎮h�� --> @@ -297,7 +280,7 @@ > <el-form-item label="鎹愮尞妗堜緥" prop="status"> <el-select - v-model="patientqueryParams.donorchargeid" + v-model="patientqueryParams.donorno" filterable placeholder="璇烽�夋嫨" > @@ -343,39 +326,39 @@ </el-table-column> <el-table-column - prop="organname" + prop="deptmentname" label="鎵�灞炵粍鍒�" show-overflow-tooltip > </el-table-column> - <el-table-column prop="organno" label="鐢宠浜�" width="120"> + <el-table-column prop="username" label="鐢宠浜�" width="120"> </el-table-column> <el-table-column - prop="caseno" + prop="applyTime" label="鐢宠鏃ユ湡" show-overflow-tooltip > </el-table-column> <el-table-column - prop="name" + prop="pretaxcost" label="绋庡墠閲戦" show-overflow-tooltip > </el-table-column> <el-table-column - prop="hospitalname" - label="鎵g◣閲戦" + prop="taXmoney" + label="鎵g◣閲戦(缂�)" show-overflow-tooltip > </el-table-column> <el-table-column - prop="receiveTime" + prop="taxedcost" label="绋庡悗閲戦" show-overflow-tooltip > </el-table-column> <el-table-column - prop="address" + prop="remark" label="澶囨敞" show-overflow-tooltip > @@ -538,10 +521,12 @@ import { getUserProfile } from "@/api/system/user"; import { getToken } from "@/utils/auth"; import { - addFundTax, - getExpertfeeList, + ExpertfeeListnb, getFundtax, getMaxFundTaxId, + updateFundtax, + addFundtax, + CalculationDetail, listbxiaostatistics } from "@/api/project/tallage"; export default { @@ -555,39 +540,21 @@ name: "Donorchargemanager", data() { return { - activeName: 1, //鏂囦欢绫诲瀷 - tableData: [ - { - date: "2016-05-03", - name: "鐜嬪皬铏�", - address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" - }, - { - date: "2016-05-02", - name: "鐜嬪皬铏�", - address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" - }, - { - date: "2016-05-04", - name: "鐜嬪皬铏�", - address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" - }, - { - date: "2016-05-01", - name: "鐜嬪皬铏�", - address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" - } + swgatheringlist: [ + { label: "鏈畻绋�", value: 0 }, + { label: "宸茬畻绋�", value: 1 } ], gatheringlist: [ - { label: "鏈畻绋�", value: "0" }, - { label: "宸茬畻绋�", value: "1" } + { label: "鏈粯娆�", value: "0" }, + { label: "宸蹭粯娆�", value: "1" } ], multipleSelection: [], patientqueryParams: { + paApplyType: 1, + pacheckno: "047", + checkstatus: 0, pageNum: 1, - pageSize: 10, - hospitalno: null, - paymentid: null + pageSize: 10 }, dialogVisiblepatient: false, patienttotal: 0, // @@ -595,10 +562,7 @@ pdftitle: "", pdfimg: "", pdfVisible: false, - costtypeobj: { - value: 0, - label: "" - }, + maxTaxId: "", pdfimgsrcList: [], Savereminder: false, //鎻愰啋淇濆瓨寮规 Reminderquantity: 0, //鎻愰啋鏁伴噺 @@ -656,7 +620,11 @@ // 褰撳墠鐢ㄦ埛淇℃伅 userprofile: {}, // 琛ㄥ崟鍙傛暟 - form: {}, + form: { + istax: 0, + isdistribute: "0" + }, + MaxFundTaxId: null, // 鏈�澶d // 鍒楄〃鍙傛暟 table: {}, reimbursementList: [], @@ -695,7 +663,6 @@ // 褰撳墠鍗曟嵁ID curId: 0, - curCase: null, //涓氬姟鎿嶄綔绫诲瀷 operationType: "edit", @@ -722,14 +689,7 @@ created() { console.log(234); - this.Getnetworkheader(); - - //鑾峰彇鐧诲綍鑰呬俊鎭� - getUserProfile().then(response => { - this.userprofile = response.data; - this.defaultperson = response.data; - this.standardlevel = response.data.standardlevel; - }); + this.GetMaxTaxid(); //鑾峰彇鍙傛暟 this.getroute(); @@ -783,7 +743,72 @@ this.donorchargeorgans = this.donorchargeorgans.concat( this.multipleSelection ); + console.log(this.donorchargeorgans, "donorchargeorgans"); + this.donorchargeorgans.forEach(item => { + CalculationDetail({ id: item.id, fundTaxId: this.form.id }); + }); + this.donorchargeorgans.forEach(item => { + item.taXmoney = item.pretaxcost - item.taxedcost; + item.taXmoney = item.taXmoney.toFixed(2); + this.accumulation(); + }); + this.$modal.msgSuccess("娣诲姞鎴愬姛锛�"); + this.dialogVisiblepatient = false; + }, + // 璁$畻涓◣ + calculateFn() { + if (this.form.id >= this.MaxFundTaxId) { + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); + this.$modal + .confirm("鍗冲皢杩涜绠楃◣鏄惁宸蹭繚瀛樺叏閮ㄦ暟鎹�?") + .then(res => { + listbxiaostatistics({ + fundTaxId: Number(this.form.id), + addOrupdate: 1 + }).then(res1 => { + if (res1.code == 200) { + this.$modal.msgSuccess("璁$畻鎴愬姛"); + this.$modal.closeLoading(); + getFundtax(this.form.id).then(response => { + this.form = response.data; + if (this.form.serviceFunds[0]) { + this.donorchargeorgans = this.form.serviceFunds; + this.donorchargeorgans.forEach(item => { + item.taXmoney = item.pretaxcost - item.taxedcost; + item.taXmoney = item.taXmoney.toFixed(2); + this.accumulation();//璁$畻 + this.form.istax = 1; + this.submitForm(); + }); + } + }); + } else { + this.$modal.closeLoading(); + this.$modal.msgError(res1.msg); + } + }); + }) + + .catch(() => {}); + } else { + this.$modal.msgError("褰撳墠鍗曟嵁涓嶄负鏈�鏂扮敵璇峰崟"); + } + }, + // 閲戦鍚堣 + accumulation() { + this.form.pretaxamount = this.donorchargeorgans.reduce( + (acc, obj) => acc + obj.pretaxcost, + 0 + ); + this.form.taxMoney = this.donorchargeorgans.reduce( + (acc, obj) => acc + Number(obj.taXmoney), + 0 + ); + this.form.taxedamount = this.donorchargeorgans.reduce( + (acc, obj) => acc + obj.taxedcost, + 0 + ); }, // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(val) { @@ -792,50 +817,18 @@ // 鐐瑰嚮鏂板 handleAddpatient(row) { this.dialogVisiblepatient = true; - this.patientqueryParams.hospitalno = this.form.hospitalno; - this.patientqueryParams.paymentid = null; - this.patientqueryParams.paymentidIsNotNull = false; - listDonorchargeorgan(this.patientqueryParams).then(res => { + this.patientqueryParams.fundTaxid = -1; + ExpertfeeListnb(this.patientqueryParams).then(res => { this.donorchargeList = res.rows; this.patienttotal = res.total; - this.patientqueryParams.paymentidIsNotNull = true; console.log(this.donorchargeList); }); }, - // 鑾峰彇璇锋眰澶� - Getnetworkheader() { - let string = window.location.href; - if (string.includes("9091")) { - const index = string.indexOf("9091"); - this.Networkheader = string.slice(0, index + 4); // 鎴彇9091鍙婂叾鍓嶉儴瀛楃 - } else { - const index = string.indexOf("8032"); - this.Networkheader = string.slice(0, index + 4); // 鎴彇8032鍙婂叾鍓嶉儴瀛楃 - } - }, - // 琛ㄥ崟閲嶇疆 - reset() { - this.form = { - id: null, - infoid: null, - donateno: null, - donatetime: null, - name: null, - borthdate: null, - sex: null, - age: null, - donationcategory: null, - donateorgan: null, - chargeamount: null, - chargeamounted: null, - remark: null, - delFlag: null, - createBy: null, - createTime: null, - updateBy: null, - updateTime: null - }; - this.resetForm("form"); + // 鑾峰彇鏈�澶axid + GetMaxTaxid() { + getMaxFundTaxId().then(res => { + this.MaxFundTaxId = Number(res.msg); + }); }, /** 閫氳繃鍙傛暟鑾峰彇涓氬姟绫诲瀷 */ @@ -843,8 +836,6 @@ //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佹煡鐪� this.operationType = this.$route.query.operation; this.curId = this.$route.query.id; - this.curCase = this.$route.query.data; - this.patientqueryParams.paymentid = this.curId; console.log("this.$route.query", this.$route.query); if (this.operationType == "add") { @@ -879,40 +870,42 @@ /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd() { - this.reset(); - this.title = "鏂板鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; - - if (this.curCase) { - this.form.infoid = this.curCase.id; - this.form.paystatus = "1"; - this.form.hospitalname = this.curCase.organizationname; - this.form.hospitalno = this.curCase.organizationid; - this.form.borthdate = this.curCase.birthday; - } + this.title = "鏂板涓撳璐规眹鎬诲崟"; + //鑾峰彇鐧诲綍鑰呬俊鎭� + getUserProfile().then(res => { + this.form.username = res.createBy; + }); }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate() { - this.reset(); - this.title = "鏀舵缁撶畻鐢宠鍗曠紪杈�"; - getFundtax(this.curId ).then(response => { + this.title = "涓撳璐规眹鎬诲崟缂栬緫"; + getFundtax(this.curId).then(response => { this.form = response.data; - + if (this.form.serviceFunds[0]) { + this.donorchargeorgans = this.form.serviceFunds; + this.donorchargeorgans.forEach(item => { + item.taXmoney = item.pretaxcost - item.taxedcost; + item.taXmoney = item.taXmoney.toFixed(2); + this.accumulation(); + }); + } }); }, /** 鏌ョ湅鎿嶄綔 */ handleDetail() { - this.reset(); - listDonorpayment({ id: this.curId }).then(response => { - this.title = "鏌ョ湅鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; - this.form = response.rows[0]; - //鍣ㄥ畼璐圭敤淇℃伅 - listDonorchargeorgan(this.patientqueryParams).then(res => { - console.log("listDonorchargeorgan", res); - this.donorchargeorgans = res.rows; - console.log(this.donorchargeorgans, "donorchargeorgans"); - }); + this.title = "鏌ョ湅涓撳璐规眹鎬诲崟"; + getFundtax(this.curId).then(response => { + this.form = response.data; + if (this.form.serviceFunds[0]) { + this.donorchargeorgans = this.form.serviceFunds; + this.donorchargeorgans.forEach(item => { + item.taXmoney = item.pretaxcost - item.taxedcost; + item.taXmoney = item.taXmoney.toFixed(2); + this.accumulation(); + }); + } }); }, @@ -922,43 +915,23 @@ this.$refs["form"].validate(valid => { if (valid) { this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); - //淇濆瓨 + this.form.serviceFunds = this.donorchargeorgans; if (this.form.id != null) { - for (let k = 0; k < this.donorchargeorgans.length; k++) { - this.donorchargeorgans[k].paymentid = this.form.id; - } - - editDonorpayment(this.form).then(res1 => { + updateFundtax(this.form).then(res1 => { if (res1.code == 200) { - saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { - if (res2.code == 200) { - this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); - } else { - this.$modal.msgError(res2.msg); - } - this.$modal.closeLoading(); - }); + this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); + this.$modal.closeLoading(); } else { this.$modal.closeLoading(); this.$modal.msgError(res1.msg); } }); } else { - addDonorpayment(this.form).then(response => { + addFundtax(this.form).then(response => { if (response.code == 200) { - this.form.id = response.msg; - //淇濆瓨鍓嶆牎楠屾暟鎹� - for (let k = 0; k < this.donorchargeorgans.length; k++) { - this.donorchargeorgans[k].paymentid = response.msg; - } - saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { - if (res2.code == 200) { - this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); - } else { - this.$modal.msgError(res2.msg); - } - }); + this.form.id = response.data.fundTaxId; + this.$modal.msgSuccess("鏂板鎴愬姛锛�"); this.$modal.closeLoading(); } else { this.$modal.msgError(response.msg); @@ -970,7 +943,6 @@ }); }, //淇敼鎬诲疄鏀跺悗瑙﹀彂 - chargeSumall() { if (this.form.receivedamount == this.form.receivableamount) { this.donorchargeorgans.forEach(item => { @@ -1002,17 +974,22 @@ handleDelete(row) { this.$modal - .confirm("鏄惁纭鍒犻櫎璇ユ潯鍣ㄥ畼璐圭敤鏁版嵁椤癸紵") + .confirm("鏄惁纭鍒犻櫎璇ユ潯涓撳璐圭敤鏁版嵁椤癸紵") .then(() => { - let value = row; - value.paymentid = null; - this.delogans.push(value); - - saveDonorchargeorgan(this.delogans).then(res2 => { + CalculationDetail({ id: row.id }).then(res2 => { if (res2.code == 200) { - let index = this.donorchargeorgans.indexOf(row); - this.donorchargeorgans.splice(index, 1); this.$modal.msgSuccess("鍒犻櫎鎴愬姛锛�"); + getFundtax(this.curId).then(response => { + this.form = response.data; + if (this.form.serviceFunds[0]) { + this.donorchargeorgans = this.form.serviceFunds; + this.donorchargeorgans.forEach(item => { + item.taXmoney = item.pretaxcost - item.taxedcost; + item.taXmoney = item.taXmoney.toFixed(2); + this.accumulation(); + }); + } + }); } }); }) -- Gitblit v1.9.3