From 57451296729e00be76124e4a6be7c14bdf67c0e6 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期三, 02 八月 2023 10:41:17 +0800
Subject: [PATCH] yxh增加了杂费申请

---
 src/views/project/fund/medicalCostFundApply/index.vue |  158 +++++++++++++++++++++++++++++++---------------------
 1 files changed, 94 insertions(+), 64 deletions(-)

diff --git a/src/views/project/fund/medicalCostFundApply/index.vue b/src/views/project/fund/medicalCostFundApply/index.vue
index 2a235b4..4f1dd9c 100644
--- a/src/views/project/fund/medicalCostFundApply/index.vue
+++ b/src/views/project/fund/medicalCostFundApply/index.vue
@@ -207,7 +207,7 @@
           </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="鎺掑簭" />
@@ -364,9 +364,14 @@
               <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>
@@ -501,7 +506,7 @@
   getdownloadSS,
   getdownloadYX,
   getdownloadBX,
-  batchUploadFund,
+  addorupdateFund,
   getdetailsByItemId,
 } from "@/api/project/fund";
 import {
@@ -610,9 +615,6 @@
         deptmentname: [
           { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" },
         ],
-        amountrequested: [
-          { required: true, message: "璇疯緭鍏ョ敵璇烽噾棰�", trigger: "blur" },
-        ],
       },
 
       //鎹愮尞妗堜緥鍒楄〃鏁版嵁
@@ -629,7 +631,8 @@
       // 鎹愮尞浜洪亾鎱伴棶閲戣〃鏍兼暟鎹�
       donateconsolationfundList: [],
 
-      fundDetailArr: [],
+      //鏄庣粏璁板綍
+      fundDetails: [],
 
       // 寮瑰嚭灞傛爣棰�
       title: "",
@@ -687,7 +690,7 @@
       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) {
@@ -726,8 +729,8 @@
           singleDetail.unitname = singleDetail.unitno;
         }
       }
-      console.log("singleDetail",singleDetail);
-      this.fundDetailArr[tempIndex] = singleDetail;
+      console.log("singleDetail", singleDetail);
+      this.fundDetails[tempIndex] = singleDetail;
       this.detailInfoDialogShow = false;
     },
     selectremark(row) {
@@ -736,7 +739,7 @@
           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
@@ -784,7 +787,7 @@
         }
       });
       var repeatNum = 0;
-      this.fundDetailArr.map((res) => {
+      this.fundDetails.map((res) => {
         if (res.applytype === row.applytype && res.itemid == row.itemid) {
           repeatNum++;
         }
@@ -878,7 +881,7 @@
         // this.form.createTime = nowdate;
         //this.open = true;
         //this.initFundApplyForm();
-        this.fundDetailArr = [];
+        this.fundDetails = [];
         this.addRow();
         this.dialogOpen = true;
         this.title = "娣诲姞璐圭敤鐢宠";
@@ -1005,12 +1008,12 @@
         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;
       }
     },
 
@@ -1034,8 +1037,8 @@
       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;
@@ -1073,16 +1076,18 @@
           this.form.pretaxcost = parseFloat(this.form.amountrequested).toFixed(
             2
           );
+
           if (this.form.id != null) {
             updateFund(this.form).then((response) => {
               this.getfundList();
+
               this.dialogOpen = false;
               this.getList();
               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;
                 //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
@@ -1102,8 +1107,8 @@
             });
           } 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;
 
               //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
@@ -1121,11 +1126,11 @@
               if (applytypeIndex > -1) {
                 tempData.applytypename = this.fundtypeArr[applytypeIndex].label;
               }
-              this.fundDetailArr[m] = tempData;
+              this.fundDetails[m] = tempData;
             }
 
-            this.form.serviceFunddetails = this.fundDetailArr;
-            batchUploadFund(this.form).then((response) => {
+            this.form.serviceFunddetails = this.fundDetails;
+            addorupdateFund(this.form).then((response) => {
               if (response.code === 200) {
                 this.$modal.msgSuccess("鏂板鎴愬姛");
                 this.loading = false;
@@ -1134,14 +1139,22 @@
                 this.loading = false;
               }
             });
+
+            //鍏抽棴绐楀彛
+            this.loading = false;
             this.dialogOpen = false;
+            // this.getfundList();
+            this.getList();
+            this.selectDonotor(this.curCase);
           }
+
+
         }
       });
     },
 
     getBankAccount() {
-      //涓撳浜哄憳鍒楄〃
+      //鑾峰彇閾惰璐﹀彿鍒楄〃锛岀被鍨嬫槸鏈烘瀯
       listReportname("org").then((res) => {
         this.bankaccountlist = res.data;
         console.log("this.bankaccountlist", this.bankaccountlist);
@@ -1174,10 +1187,10 @@
         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]);
           }
         });
       });
@@ -1209,16 +1222,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].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,
             });
           }
         });
@@ -1263,9 +1276,9 @@
                 }).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
                   });
                 });
               }
@@ -1284,31 +1297,31 @@
     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;
         }
@@ -1336,25 +1349,25 @@
     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
@@ -1375,9 +1388,9 @@
           }
         }
       }
-      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) => {
@@ -1469,7 +1482,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);
         });
       }
     },
@@ -1493,7 +1506,7 @@
         this.$modal.msgSuccess(response.msg);
         this.fileList.push({ name: response.fileName, url: response.fileName });
       } else {
-        this.$modal.msgError(response.msg);
+        console.log(response.msg);;
       }
     },
     // 涓嬭浇鏂囦欢
@@ -1507,6 +1520,21 @@
     },
   },
 
+  // 鐐瑰嚮鏂囦欢
+  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 = "";
+    }
+  },
+
   //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
   created() {
     this.getList();
@@ -1516,11 +1544,13 @@
     this.getlistUser();
     // this.getUnitList();
   },
+
   //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
   mounted() {
     this.getBankAccount();
     this.getUsermsg();
   },
+
   beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
   beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
   beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠

--
Gitblit v1.9.3