From 6a84b9b93897276fc3ecc59ff75ef01df0ff25b7 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 22 四月 2024 17:31:07 +0800
Subject: [PATCH] 11

---
 src/views/project/tallage/index.vue               |    2 
 src/views/project/tallage/computingBill/index.vue |   42 ++++++++------
 src/views/project/unitCost/index.vue              |    4 
 src/views/project/unitCost/particulars/index.vue  |  119 +++++++++++++++++++++++++++++++++++----
 4 files changed, 132 insertions(+), 35 deletions(-)

diff --git a/src/views/project/tallage/computingBill/index.vue b/src/views/project/tallage/computingBill/index.vue
index 061e294..2c48bfa 100644
--- a/src/views/project/tallage/computingBill/index.vue
+++ b/src/views/project/tallage/computingBill/index.vue
@@ -8,8 +8,8 @@
             <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
               <el-date-picker
                 v-model="form.createTime"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                type="datetime"
+                value-format="yyyy-MM-dd "
+                type="date"
                 :disabled="true"
                 placeholder="閫夋嫨鍑虹敓骞存湀"
               >
@@ -115,6 +115,14 @@
             show-summary
           >
             <el-table-column
+              prop="index"
+              align="center"
+              fixed
+              label="妗堜緥鎹愮尞鑰�"
+              width="120"
+            >
+            </el-table-column>
+            <el-table-column
               prop="donorname"
               align="center"
               fixed
@@ -172,8 +180,8 @@
                   v-model="scope.row.applyTime"
                   :disabled="true"
                   type="date"
-                  value-format="yyyy-MM-dd HH:mm:ss"
                   placeholder="鐢宠鏃ユ湡"
+                  value-format="yyyy-MM-dd"
                 >
                 </el-date-picker>
               </template>
@@ -568,7 +576,7 @@
     Li_area_select,
     pdf
   },
-  dicts: ["sys_gathering", "sys_0_1"],
+  dicts: ["Collection_status", "sys_0_1"],
   name: "Donorchargemanager",
   data() {
     return {
@@ -588,7 +596,7 @@
         paApplyType: 1,
         pacheckno: "047",
         checkstatus: 0,
-        istax:0,
+        istax: 0,
         pageNum: 1,
         pageSize: 10
       },
@@ -837,18 +845,15 @@
     },
     // 閲戦鍚堣
     accumulation() {
-      this.form.pretaxamount = this.donorchargeorgans.reduce(
-        (acc, obj) => acc + Number(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 + Number(obj.taxedcost),
-        0
-      );
+      this.form.pretaxamount = this.donorchargeorgans
+        .reduce((acc, obj) => acc + Number(obj.pretaxcost), 0)
+        .toFixed(2);
+      this.form.taxMoney = this.donorchargeorgans
+        .reduce((acc, obj) => acc + Number(obj.taXmoney), 0)
+        .toFixed(2);
+      this.form.taxedamount = this.donorchargeorgans
+        .reduce((acc, obj) => acc + Number(obj.taxedcost), 0)
+        .toFixed(2);
     },
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
@@ -993,9 +998,10 @@
         this.form = response.data;
         if (this.form.serviceFunds[0]) {
           this.donorchargeorgans = this.form.serviceFunds;
-          this.donorchargeorgans.forEach(item => {
+          this.donorchargeorgans.forEach((item, index) => {
             item.taXmoney = item.pretaxcost - item.taxedcost;
             item.taXmoney = item.taXmoney.toFixed(2);
+            item.index = index + 1;
             this.accumulation();
           });
         }
diff --git a/src/views/project/tallage/index.vue b/src/views/project/tallage/index.vue
index 6ea4608..af1f8e5 100644
--- a/src/views/project/tallage/index.vue
+++ b/src/views/project/tallage/index.vue
@@ -216,7 +216,7 @@
 
 export default {
   name: "Donorcharge",
-  dicts: ["sys_gathering", "sys_calculate"],
+  dicts: ["Collection_status", "sys_calculate"],
   components: {
     OrgSelecter
   },
diff --git a/src/views/project/unitCost/index.vue b/src/views/project/unitCost/index.vue
index 229c77e..1726b5d 100644
--- a/src/views/project/unitCost/index.vue
+++ b/src/views/project/unitCost/index.vue
@@ -117,7 +117,7 @@
       <el-table-column label="鐘舵��" align="center" prop="paystatus">
         <template slot-scope="scope">
           <dict-tag
-            :options="dict.type.sys_gathering"
+            :options="dict.type.Collection_status"
             :value="scope.row.paystatus"
           />
         </template>
@@ -231,7 +231,7 @@
 
 export default {
   name: "Donorcharge",
-  dicts: ["sys_gathering"],
+  dicts: ["Collection_status"],
   components: {
     OrgSelecter
   },
diff --git a/src/views/project/unitCost/particulars/index.vue b/src/views/project/unitCost/particulars/index.vue
index 4c5537a..4c3439e 100644
--- a/src/views/project/unitCost/particulars/index.vue
+++ b/src/views/project/unitCost/particulars/index.vue
@@ -6,7 +6,7 @@
         <el-row>
           <el-col :span="5">
             <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
-              <el-date-picker v-model="form.createTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime"
+              <el-date-picker v-model="form.createTime" value-format="yyyy-MM-dd " type="date"
                 :disabled="true" placeholder="閫夋嫨鍑虹敓骞存湀">
               </el-date-picker>
             </el-form-item>
@@ -66,8 +66,8 @@
           </el-col>
           <el-col :span="5">
             <el-form-item label="鏀舵鏃ユ湡" prop="receivedtime">
-              <el-date-picker clearable size="small" v-model="form.receivedtime" value-format="yyyy-MM-dd HH:mm:ss"
-                type="datetime" placeholder="閫夋嫨鏀舵鏃ユ湡">
+              <el-date-picker clearable size="small" v-model="form.receivedtime" value-format="yyyy-MM-dd "
+                type="date" placeholder="閫夋嫨鏀舵鏃ユ湡">
               </el-date-picker>
             </el-form-item>
           </el-col>
@@ -165,6 +165,24 @@
       <!-- 娣诲姞鎮h�� -->
       <el-dialog title="閫夋嫨鍣ㄥ畼鍜岀粍缁�" :visible.sync="dialogVisiblepatient" width="70%" :before-close="handleClosehz">
         <div class="examine-jic">
+          <div style="margin: 0 10px 20px 10px;">
+            <el-card class="box-card">
+              <el-tag
+                v-for="item in overallCase"
+                :key="item.id"
+                closable
+                @close="handleClose(item)"
+              >
+                {{ item.donorname }}
+              </el-tag>
+              <div style="margin-top: 20px; text-align: right;">
+                鍏遍�夋嫨<span
+                  style="font-size: 18px; color: #409EFF;margin: 0 10px;"
+                  >{{ overallCase.length }}</span
+                >鏉℃暟鎹�
+              </div>
+            </el-card>
+          </div>
           <div class="jic-value">
             <el-row :gutter="20">
               <!--鐢ㄦ埛鏁版嵁-->
@@ -307,7 +325,7 @@
     Li_area_select,
     pdf
   },
-  dicts: ["sys_gathering", "sys_0_1"],
+  dicts: ["Collection_status", "sys_0_1"],
   name: "Donorchargemanager",
   data() {
     return {
@@ -346,6 +364,8 @@
         hospitalno: null,
         paymentid: null
       },
+      // 鎬婚�変腑鏁版嵁
+      overallCase: [],
       dialogVisiblepatient: false,
       patienttotal: 0, //
       //绁ㄦ嵁鏂囦欢
@@ -528,7 +548,6 @@
     handleClosehz() {
       this.dialogVisiblepatient = false;
     },
-    handleQuery() { },
     resetQuery() {
       this.patientqueryParams.donorname = null;
       this.patientqueryParams.donorchargeid = null;
@@ -538,13 +557,82 @@
     // 寮规娣诲姞
     AddDispatchpatients() {
       this.donorchargeorgans = this.donorchargeorgans.concat(
-        this.multipleSelection
+        this.overallCase
       );
       this.dialogVisiblepatient = false;
     },
     // 澶氶�夋閫変腑鏁版嵁
-    handleSelectionChange(val) {
-      this.multipleSelection = val;
+    handleSelectionChange(selection) {
+      if (this.decision) return;
+      // 鍒ゆ柇鏄惁鏈夊垹闄�
+      if (this.multipleSelection.length <= selection.length) {
+        this.multipleSelection = selection;
+      } else {
+        console.log(11);
+        this.multipleSelection.forEach(item => {
+          if (selection.includes(item)) {
+          } else {
+            if (this.multipleSelection.length == 1) {
+              this.multipleSelection = [];
+            } else {
+              this.multipleSelection.splice(
+                this.multipleSelection.indexOf(item),
+                1
+              );
+            }
+            if (this.overallCase.length == 1) {
+              this.overallCase = [];
+            } else {
+              this.overallCase.splice(this.overallCase.indexOf(item), 1);
+            }
+          }
+        });
+      }
+      // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
+      this.multipleSelection.forEach(item => {
+        if (!this.overallCase.includes(item)) {
+          this.overallCase.push(item);
+        }
+      });
+      console.log(this.multipleSelection, "瑙﹀彂閫夋嫨鍚巑ultipleSelection");
+    },
+    // 鍒囨崲椤靛悗鎭㈠閫変腑
+    Restorecheck() {
+      console.log(this.overallCase, "this.overallCase");
+      const allid = this.overallCase.map(item => item.id);
+      const overlap = this.donorchargeList.filter(value => {
+        return allid.includes(value.id);
+      });
+      // 淇濇寔ids鍜屽綋鍓嶉〉闈㈢殑鍚屾鎬�
+      this.multipleSelection = overlap;
+      console.log(this.multipleSelection, "杩涘叆鍒嗛〉multipleSelection");
+
+      this.toggleSelection(overlap);
+    },
+    // 鎸傝浇閫夋嫨鐘舵��
+    toggleSelection(rows) {
+      if (rows) {
+        this.decision = true;
+        this.$nextTick(() => {
+          rows.forEach(row => {
+            this.$refs.multipleTable.toggleRowSelection(row, true);
+          });
+          this.decision = false;
+        });
+        console.log(123);
+      } else {
+        this.$refs.multipleTable.clearSelection();
+      }
+    },
+    // 閫夋嫨浜哄憳鏍囩鍒犻櫎浜嬩欢
+    handleClose(item) {
+      this.overallCase.splice(this.overallCase.indexOf(item), 1);
+      if (this.multipleSelection.indexOf(item) == -1) {
+      } else {
+        this.multipleSelection.splice(this.multipleSelection.indexOf(item), 1);
+        this.$refs.multipleTable.toggleRowSelection(item, false);
+        // this.toggleSelection(this.multipleSelection);
+      }
     },
     // 鐐瑰嚮鏂板
     handleAddpatient(row) {
@@ -556,7 +644,7 @@
         this.donorchargeList = res.rows;
         this.patienttotal = res.total;
         this.patientqueryParams.paymentidIsNotNull = true;
-        console.log(this.donorchargeList);
+        this.Restorecheck();
       });
     },
     // 鑾峰彇璇锋眰澶�
@@ -622,11 +710,7 @@
       });
     },
 
-    /** 閲嶇疆鎸夐挳鎿嶄綔 */
-    resetQuery() {
-      this.resetForm("queryForm");
-      this.handleQuery();
-    },
+
 
     // 鍙栨秷鎸夐挳
     cancel() {
@@ -1147,6 +1231,13 @@
     }
   }
 }
+::v-deep .el-tag--medium {
+  height: 28px;
+  line-height: 26px;
+  margin-right: 15px;
+  margin-bottom: 15px;
+  font-size: 16px;
+}
 
 ::v-deep .el-input.is-disabled .el-input__inner {
   background-color: #F5F7FA;

--
Gitblit v1.9.3