| | |
| | | </el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 5px; margin-bottom: 5px"> |
| | | <el-table :data="fundDetailArr" border highlight-current-row> |
| | | <el-table :data="fundDetails" border highlight-current-row> |
| | | <el-table-column prop="orderno" align="center" label="排序" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="排序" /> |
| | |
| | | <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> |
| | | <el-button @click.native.prevent=" |
| | | Filepopup(scope.$index, fundDetails, scope.row) |
| | | " type="text" size="small"> |
| | | 票据 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | // 捐献人道慰问金表格数据 |
| | | donateconsolationfundList: [], |
| | | |
| | | fundDetailArr: [], |
| | | //明细记录 |
| | | fundDetails: [], |
| | | |
| | | // 弹出层标题 |
| | | title: "", |
| | |
| | | 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) { |
| | |
| | | } |
| | | } |
| | | console.log("singleDetail",singleDetail); |
| | | this.fundDetailArr[tempIndex] = singleDetail; |
| | | this.fundDetails[tempIndex] = singleDetail; |
| | | this.detailInfoDialogShow = false; |
| | | }, |
| | | selectremark(row) { |
| | |
| | | row.servivesscope = item.servivesscope; |
| | | row.amount = item.expense; |
| | | this.form.serviceFunddetails = 0; |
| | | this.fundDetailArr.map((item) => { |
| | | this.fundDetails.map((item) => { |
| | | this.form.serviceFunddetails += item.amount; |
| | | }); |
| | | // row.remark |
| | |
| | | } |
| | | }); |
| | | var repeatNum = 0; |
| | | this.fundDetailArr.map((res) => { |
| | | this.fundDetails.map((res) => { |
| | | if (res.applytype === row.applytype && res.itemid == row.itemid) { |
| | | repeatNum++; |
| | | } |
| | |
| | | // this.form.createTime = nowdate; |
| | | //this.open = true; |
| | | //this.initFundApplyForm(); |
| | | this.fundDetailArr = []; |
| | | this.fundDetails = []; |
| | | this.addRow(); |
| | | this.dialogOpen = true; |
| | | this.title = "添加费用申请"; |
| | |
| | | servivesscope: null, |
| | | }; |
| | | 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; |
| | | } |
| | | }, |
| | | |
| | |
| | | this.$refs["form"].validate((valid) => { |
| | | if (valid) { |
| | | let formData = this.form; |
| | | 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("请选择服务项目"); |
| | | return; |
| | |
| | | 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; |
| | | //获取服务项目明细 |
| | |
| | | }); |
| | | } 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; |
| | | |
| | | //获取服务项目明细 |
| | |
| | | if (applytypeIndex > -1) { |
| | | tempData.applytypename = this.fundtypeArr[applytypeIndex].label; |
| | | } |
| | | this.fundDetailArr[m] = tempData; |
| | | this.fundDetails[m] = tempData; |
| | | } |
| | | |
| | | this.form.serviceFunddetails = this.fundDetailArr; |
| | | this.form.serviceFunddetails = this.fundDetails; |
| | | batchUploadFund(this.form).then((response) => { |
| | | if (response.code === 200) { |
| | | this.$modal.msgSuccess("新增成功"); |
| | |
| | | }, |
| | | |
| | | getBankAccount() { |
| | | //专家人员列表 |
| | | //获取银行账号列表,类型是机构 |
| | | listReportname("org").then((res) => { |
| | | this.bankaccountlist = res.data; |
| | | console.log("this.bankaccountlist", this.bankaccountlist); |
| | |
| | | this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | getownFundDetail(id).then(async (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.fundDetails = res.data; |
| | | for (let m = 0; m < this.fundDetails.length; m++) { |
| | | this.fundDetails[m].itemArr = []; |
| | | this.getItemArr(m, this.fundDetails[m]); |
| | | } |
| | | }); |
| | | }); |
| | |
| | | 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].fundblock = []; |
| | | this.fundDetails[m].fundblock.push({ |
| | | expense: this.fundDetails[m].expense, |
| | | expensedescribe: this.fundDetails[m].servicesscopename, |
| | | remark: this.fundDetails[m].servicesscope, |
| | | servicesscope: this.fundDetails[m].servicesscope, |
| | | }); |
| | | } |
| | | }); |
| | |
| | | }).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(row); |
| | | // this.fundDetailArr = res.data |
| | | // this.fundDetails = res.data |
| | | }); |
| | | }); |
| | | } |
| | |
| | | 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; |
| | | } |
| | |
| | | getItemArr(rowindex, row) { |
| | | let list = this.fundtypeArrAll.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); |
| | | // }); |
| | | }, |
| | | |
| | | addAlls() { |
| | | 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; |
| | | //let listAdd = this.fundDetails; |
| | | 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 list = this.fundDetails.filter( |
| | | (r) => |
| | | r.applytype == this.fundtypeArrAll[i].itemType && |
| | | r.itemid == this.fundtypeArrAll[i].itemDetails[j].id |
| | |
| | | } |
| | | } |
| | | } |
| | | this.fundDetailArr = listAdd; |
| | | this.fundDetails = listAdd; |
| | | this.loading = false; |
| | | // let Outerarr = this.fundDetailArr; |
| | | // let Outerarr = this.fundDetails; |
| | | // Outerarr.map((res) => { |
| | | // let onelist = this.fundtypeArr; |
| | | // onelist.map((item) => { |
| | |
| | | } else { |
| | | getItemNames(scope.row.applytype).then((res) => { |
| | | scope.row.itemArr = res.data; |
| | | //this.$set(this.fundDetailArr, rowindex, row); |
| | | //this.$set(this.fundDetails, rowindex, row); |
| | | }); |
| | | } |
| | | }, |
| | |
| | | }, |
| | | }, |
| | | |
| | | // 点击文件 |
| | | Filepopup(index, rows, row) { |
| | | console.log(index, rows, row); |
| | | this.atpresent = index; |
| | | console.log(this.atpresent); |
| | | this.pdfVisible = true; |
| | | if (this.fundDetails[index].annexfilesList) { |
| | | this.fileListto = this.rbDetails[index].annexfilesList; |
| | | } else { |
| | | this.fileListto = []; |
| | | this.pdfimg = ""; |
| | | this.pdftitle = ""; |
| | | } |
| | | }, |
| | | |
| | | //生命周期 - 创建完成(可以访问当前this实例) |
| | | created() { |
| | | this.getList(); |