From d3f66f66a0fa684bdc80bca582adb726b102966f Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期三, 04 十一月 2026 09:55:41 +0800
Subject: [PATCH] 器管回款列表增加无回款医院的过滤,修改增加应收款、实收款修改

---
 src/views/project/unitCost/organfee/index.vue |  160 ++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 120 insertions(+), 40 deletions(-)

diff --git a/src/views/project/unitCost/organfee/index.vue b/src/views/project/unitCost/organfee/index.vue
index 145ca25..1360086 100644
--- a/src/views/project/unitCost/organfee/index.vue
+++ b/src/views/project/unitCost/organfee/index.vue
@@ -8,31 +8,37 @@
       v-show="showSearch"
       label-width="90px"
     >
-      <el-form-item label="浠樻鍖婚櫌" prop="hospitalno">
+      <el-form-item label="鍥炴鍖婚櫌" prop="hospitalno">
         <el-select
-          v-model="queryParams.hospitalno"
-          placeholder="璇烽�夋嫨浠樻鍖婚櫌"
+          v-model="hospitalFilter"
+          placeholder="璇烽�夋嫨鍥炴鍖婚櫌"
           clearable
           filterable
           size="small"
           style="width: 200px"
+          @change="handleHospitalFilterChange"
         >
+         <el-option label="鏈~鍐欏洖娆惧尰闄�" value="__EMPTY__" />
           <el-option
             v-for="item in organizationList"
             :key="item.organizationid"
             :label="item.organizationname"
-            :value="item.organizationid"
+            :value="String(item.organizationid)"
           />
+         
         </el-select>
-      </el-form-item>
-      <el-form-item label="鎹愮尞鑰�" prop="donorname">
-        <el-input
-          v-model="queryParams.donorname"
-          placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+      </el-form-item>      
+      <el-form-item label="鍥炴鐘舵��" prop="payStatus">
+        <el-select
+          v-model="queryParams.payStatus"
+          placeholder="璇烽�夋嫨鍥炴鐘舵��"
           clearable
           size="small"
-          @keyup.enter.native="handleQuery"
-        />
+          style="width: 140px"
+        >
+          <el-option label="宸蹭粯" value="宸蹭粯" />
+          <el-option label="鏈粯" value="鏈粯" />
+        </el-select>
       </el-form-item>
       <el-form-item label="鎹愮尞鏃ユ湡">
         <el-date-picker
@@ -46,6 +52,31 @@
           size="small"
           @change="handleDonatetimeChange"
         />
+      </el-form-item>
+      <el-form-item label="鎹愮尞鑰�" prop="donorname">
+        <el-input
+          v-model="queryParams.donorname"
+          placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鍒╃敤鐘舵��" prop="organState">
+        <el-select
+          v-model="queryParams.organState"
+          placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��"
+          clearable
+          size="small"
+          style="width: 160px"
+        >
+          <el-option
+            v-for="item in organStateList"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
       </el-form-item>
       <el-form-item>
         <el-button
@@ -120,29 +151,21 @@
         width="120"
         align="center"
       />
-      <el-table-column
-        prop="payOrganName"
-        label="浠樻鍣ㄥ畼鍚嶇О"
-        width="140"
-        align="center"
-        show-overflow-tooltip
-      />
+      
       <el-table-column
         prop="caseno"
-        label="鍣ㄥ畼鍒嗛厤缂栧彿"
+        label="鍣ㄥ畼缂栧彿"
         align="center"
         show-overflow-tooltip
-      />
-      <el-table-column prop="name" label="鍙椾綋" width="120" align="center" />
-      
-      <el-table-column label="鍣ㄥ畼鐘舵��" width="120" align="center">
+      />   
+      <el-table-column label="鍒╃敤鐘舵��" width="120" align="center">
         <template slot-scope="scope">
           <span>{{ selectOrganState(scope.row.organState) }}</span>
         </template>
       </el-table-column>
        <el-table-column
         prop="hospitalname"
-        label="浠樻鍖婚櫌"
+        label="鍥炴鍖婚櫌"
         width="200"
         align="center"
       />
@@ -152,7 +175,7 @@
         width="120"
         align="center"
       />
-      <el-table-column label="浠樻鐘舵��" width="100" align="center">
+      <el-table-column label="鍥炴鐘舵��" width="100" align="center">
         <template slot-scope="scope">
           <span>{{ payStatus(scope.row) }}</span>
         </template>
@@ -163,17 +186,25 @@
         width="120"
         align="center"
       />
-      <el-table-column label="鏈粯閲戦" width="160" align="center">
+      <el-table-column label="鏈洖娆鹃噾棰�" width="160" align="center">
         <template slot-scope="scope">
           <span>{{ formatReceivableDiff(scope.row) }}</span>
         </template>
       </el-table-column>
       
-      <el-table-column label="鏀舵鏃ユ湡" width="120" align="center">
+      <el-table-column label="鍥炴鏃ユ湡" width="120" align="center">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.organtime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
+      <el-table-column prop="name" label="鍙椾綋" width="120" align="center" />
+      <el-table-column
+        prop="payOrganName"
+        label="鍣ㄥ畼鍚嶇О-缁撶畻"
+        width="140"
+        align="center"
+        show-overflow-tooltip
+      />
       <el-table-column
         prop="organchargedesc"
         label="澶囨敞"
@@ -191,7 +222,6 @@
             type="text"
             icon="el-icon-edit"
             @click="handleEdit(scope.row)"
-            v-hasPermi="['project:donorchargeorgan:edit']"
             >淇敼</el-button
           >
           <el-button
@@ -199,14 +229,12 @@
             type="text"
             icon="el-icon-check"
             @click="handleCharge(scope.row)"
-            v-hasPermi="['project:donorchargeorgan:edit']"
             >宸叉敹璐�</el-button
           >
           <el-button
             type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
-            v-hasPermi="['project:donorchargeorgan:edit']"
             >鍒犻櫎</el-button
           >
         </template>
@@ -223,7 +251,7 @@
 
     <!-- 淇敼鍣ㄥ畼鐘舵�併�佸娉� -->
     <el-dialog
-      title="淇敼鍣ㄥ畼淇℃伅"
+      title="淇敼鍣ㄥ畼鍥炴淇℃伅"
       :visible.sync="editOpen"
       width="760px"
       append-to-body
@@ -232,10 +260,10 @@
       <el-form ref="editForm" :model="editForm" label-width="110px">
         <el-row :gutter="20">
           <el-col :span="12">
-            <el-form-item label="浠樻鍖婚櫌" prop="hospitalno">
+            <el-form-item label="鍥炴鍖婚櫌" prop="hospitalno">
               <el-select
                 v-model="editForm.hospitalno"
-                placeholder="璇烽�夋嫨浠樻鍖婚櫌"
+                placeholder="璇烽�夋嫨鍥炴鍖婚櫌"
                 clearable
                 filterable
                 style="width: 100%"
@@ -251,20 +279,20 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="浠樻鍣ㄥ畼鍚嶇О" prop="payOrganName">
+            <el-form-item label="(缁撶畻)鍣ㄥ畼鍚嶇О" prop="payOrganName">
               <el-input
                 v-model="editForm.payOrganName"
                 maxlength="100"
-                placeholder="璇疯緭鍏ヤ粯娆惧櫒瀹樺悕绉�"
+                placeholder="璇疯緭鍏�(缁撶畻)鍣ㄥ畼鍚嶇О"
               />
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="鍣ㄥ畼鍒嗛厤缂栧彿" prop="caseno">
+            <el-form-item label="(鍥藉)鍣ㄥ畼缂栧彿" prop="caseno">
               <el-input
                 v-model="editForm.caseno"
                 maxlength="50"
-                placeholder="璇疯緭鍏ュ櫒瀹樺垎閰嶇紪鍙�"
+                placeholder="璇疯緭鍏ュ浗瀹跺櫒瀹樺垎閰嶇紪鍙�"
               />
             </el-form-item>
           </el-col>
@@ -278,10 +306,34 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="鍣ㄥ畼鐘舵��" prop="organState">
+            <el-form-item label="搴旀敹閲戦" prop="organcharge">
+              <el-input-number
+                v-model="editForm.organcharge"
+                :min="0"
+                :precision="2"
+                :controls="false"
+                placeholder="璇疯緭鍏ュ簲鏀堕噾棰�"
+                style="width: 100%"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="瀹炴敹閲戦" prop="amount">
+              <el-input-number
+                v-model="editForm.amount"
+                :min="0"
+                :precision="2"
+                :controls="false"
+                placeholder="璇疯緭鍏ュ疄鏀堕噾棰�"
+                style="width: 100%"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鍒╃敤鐘舵��" prop="organState">
               <el-select
                 v-model="editForm.organState"
-                placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��"
+                placeholder="璇烽�夋嫨鍣ㄥ畼鍒╃敤鐘舵��"
                 style="width: 100%"
               >
                 <el-option
@@ -538,6 +590,8 @@
         payOrganName: null,
         caseno: null,
         name: null,
+        organcharge: null,
+        amount: null,
         organState: null,
         organchargedesc: null
       },
@@ -557,11 +611,16 @@
         ]
       },
       // 鏌ヨ鍙傛暟
+      // 鍥炴鍖婚櫌绛涢�夛紙__EMPTY__ 琛ㄧず鏈~鍐欙級
+      hospitalFilter: null,
       queryParams: {
         pageNum: 1,
         pageSize: 10,
         hospitalno: null,
+        hospitalnoIsNull: false,
         donorname: null,
+        organState: null,
+        payStatus: null,
         paymentid: null,
         // false锛氳蛋 queryListBypaymentidIsNull锛屽嵆鏈敹榻愯垂鐢ㄧ殑鍣ㄥ畼
         paymentidIsNotNull: false,
@@ -746,7 +805,7 @@
           });
       });
     },
-    /** 鎵撳紑淇敼寮圭獥锛堜粯娆惧尰闄€�佷粯娆惧櫒瀹樺悕绉般�佸櫒瀹樼姸鎬併�佸娉級 */
+    /** 鎵撳紑淇敼寮圭獥锛堝洖娆惧尰闄€�佷粯娆惧櫒瀹樺悕绉般�侀噾棰濄�佸埄鐢ㄧ姸鎬併�佸娉級 */
     handleEdit(row) {
       this.editForm = {
         id: row.id,
@@ -758,6 +817,12 @@
         payOrganName: row.payOrganName || "",
         caseno: row.caseno || "",
         name: row.name || "",
+        organcharge:
+          row.organcharge === null || row.organcharge === undefined
+            ? null
+            : row.organcharge,
+        amount:
+          row.amount === null || row.amount === undefined ? null : row.amount,
         organState:
           row.organState === null || row.organState === undefined
             ? null
@@ -801,13 +866,28 @@
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
       this.donatetimeRange = [];
+      this.hospitalFilter = null;
+      this.queryParams.hospitalnoIsNull = false;
       this.queryParams.hospitalno = null;
       this.queryParams.donorname = null;
+      this.queryParams.organState = null;
+      this.queryParams.payStatus = null;
       this.queryParams.starttime = null;
       this.queryParams.endtime = null;
       this.queryParams.pageNum = 1;
       this.getList();
     },
+    /** 鍥炴鍖婚櫌绛涢�夛細__EMPTY__ 琛ㄧず鍙煡鏈~鍐欏洖娆惧尰闄㈢殑鏁版嵁 */
+    handleHospitalFilterChange(value) {
+      if (value === "__EMPTY__") {
+        this.queryParams.hospitalno = null;
+        this.queryParams.hospitalnoIsNull = true;
+      } else {
+        this.queryParams.hospitalno = value;
+        this.queryParams.hospitalnoIsNull = false;
+      }
+      this.queryParams.pageNum = 1;
+    },
     /** 鎶ュ憡鏃ユ湡鍖洪棿 -> 鏌ヨ鍙傛暟锛屾湭閫夋嫨鏃朵紶 null锛岄伩鍏嶅悗绔嫾鍑� donatetime >= '' */
     handleDonatetimeChange(val) {
       if (val && val.length === 2) {

--
Gitblit v1.9.3