From 17e08759071de47a7513d1cc1408c62d79713cd9 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期三, 28 十月 2026 17:47:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml |   85 ++++++++++++++++++++++++++++++++----------
 1 files changed, 65 insertions(+), 20 deletions(-)

diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml
index a580351..9749fa1 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml
@@ -6,6 +6,7 @@
 
     <resultMap type="com.ruoyi.project.domain.ServiceDonorchargeorgan" id="ServiceDonorchargeorganResult">
         <result property="id" column="ID"/>
+        <result property="infoid" column="InfoID"/>
         <result property="donorchargeid" column="donorchargeid"/>
         <result property="paymentid" column="paymentid"/>
         <result property="paymentno" column="paymentno"/>
@@ -31,6 +32,9 @@
         <result property="name" column="name"/>
         <result property="receiveTime" column="receive_time"/>
         <result property="annexFiles" column="annex_files"/>
+        <result property="donatetime" column="donatetime"/>
+        <result property="organState" column="organ_state"/>
+        <result property="organChargeState" column="organ_charge_state"/>
     </resultMap>
 
     <sql id="selectServiceDonorchargeorganVo">
@@ -60,7 +64,9 @@
                caseno,
                name,
                receive_time,
-               annex_files
+               annex_files,
+               organ_state,
+               organ_charge_state
         from service_donorchargeorgan
     </sql>
 
@@ -93,29 +99,66 @@
 
     <select id="queryListBypaymentidIsNull" parameterType="com.ruoyi.project.domain.ServiceDonorchargeorgan"
             resultMap="ServiceDonorchargeorganResult">
-        <include refid="selectServiceDonorchargeorganVo"/>
+        select o.ID,
+        o.donorchargeid,
+        o.paymentid,
+        o.paymentno,
+        o.InfoID,
+        o.donorname,
+        o.HospitalName,
+        o.HospitalNo,
+        o.OrganNo,
+        o.OrganName,
+        o.organcharge,
+        o.organtime,
+        o.chargeoperator,
+        o.amount,
+        o.amounttime,
+        o.amountoperator,
+        o.chargestate,
+        o.organchargedesc,
+        o.del_flag,
+        o.create_by,
+        o.create_time,
+        o.update_by,
+        o.update_time,
+        o.caseno,
+        o.name,
+        o.receive_time,
+        o.annex_files,
+        o.organ_state,
+        o.organ_charge_state,
+        b.donatetime
+        from service_donorchargeorgan o
+                 left join service_donatebaseinfo b on b.ID = o.InfoID
         <where>
-            paymentid IS NULL
-            <if test="infoid != null ">and InfoID = #{infoid}</if>
-            <if test="receiveTime != null ">and receive_time = #{receiveTime}</if>
-            <if test="paymentno != null ">and paymentno = #{paymentno}</if>
-            <if test="donorchargeid != null ">and donorchargeID = #{donorchargeid}</if>
-            <if test="donorname != null  and donorname != ''">and donorname like concat('%', #{donorname}, '%')</if>
-            <if test="hospitalname != null  and hospitalname != ''">and HospitalName like concat('%', #{hospitalname},
+            <if test="selectAll != true ">
+               and (o.paymentid IS NULL or o.paymentid=0 or organcharge-amount>0)
+               and (organ_charge_state =0 OR organ_charge_state IS null)
+            </if>
+            <if test="infoid != null ">and o.InfoID = #{infoid}</if>
+            <if test="receiveTime != null ">and o.receive_time = #{receiveTime}</if>
+            <if test="paymentno != null ">and o.paymentno = #{paymentno}</if>
+            <if test="donorchargeid != null ">and o.donorchargeID = #{donorchargeid}</if>
+            <if test="donorname != null  and donorname != ''">and o.donorname like concat('%', #{donorname}, '%')</if>
+            <if test="hospitalname != null  and hospitalname != ''">and o.HospitalName like concat('%', #{hospitalname},
                 '%')
             </if>
-            <if test="hospitalno != null  and hospitalno != ''">and HospitalNo = #{hospitalno}</if>
-            <if test="organno != null  and organno != ''">and OrganNo = #{organno}</if>
-            <if test="organname != null  and organname != ''">and OrganName like concat('%', #{organname}, '%')</if>
-            <if test="organcharge != null ">and organcharge = #{organcharge}</if>
-            <if test="organtime != null ">and organtime = #{organtime}</if>
-            <if test="chargeoperator != null  and chargeoperator != ''">and chargeoperator = #{chargeoperator}</if>
-            <if test="amount != null ">and amount = #{amount}</if>
-            <if test="amounttime != null ">and amounttime = #{amounttime}</if>
-            <if test="amountoperator != null  and amountoperator != ''">and amountoperator = #{amountoperator}</if>
-            <if test="chargestate != null ">and chargestate = #{chargestate}</if>
-            <if test="organchargedesc != null  and organchargedesc != ''">and organchargedesc = #{organchargedesc}</if>
+            <if test="hospitalno != null  and hospitalno != ''">and o.HospitalNo = #{hospitalno}</if>
+            <if test="organno != null  and organno != ''">and o.OrganNo = #{organno}</if>
+            <if test="organname != null  and organname != ''">and o.OrganName like concat('%', #{organname}, '%')</if>
+            <if test="organcharge != null ">and o.organcharge = #{organcharge}</if>
+            <if test="organtime != null ">and o.organtime = #{organtime}</if>
+            <if test="chargeoperator != null  and chargeoperator != ''">and o.chargeoperator = #{chargeoperator}</if>
+            <if test="amount != null ">and o.amount = #{amount}</if>
+            <if test="amounttime != null ">and o.amounttime = #{amounttime}</if>
+            <if test="amountoperator != null  and amountoperator != ''">and o.amountoperator = #{amountoperator}</if>
+            <if test="chargestate != null ">and o.chargestate = #{chargestate}</if>
+            <if test="organchargedesc != null  and organchargedesc != ''">and o.organchargedesc = #{organchargedesc}</if>
+            <if test="starttime != null ">and b.donatetime &gt;= #{starttime}</if>
+            <if test="endtime != null ">and b.donatetime &lt;= #{endtime}</if>
         </where>
+        order by b.donatetime
     </select>
 
     <update id="updateDonorchargeorgan" parameterType="com.ruoyi.project.domain.ServiceDonorchargeorgan">
@@ -142,6 +185,8 @@
             <if test="name != null  and name != ''">name = #{name},</if>
             <if test="annexFiles != null  and annexFiles != ''">annex_files = #{annexFiles},</if>
             <if test="receiveTime != null">receive_time = #{receiveTime},</if>
+            <if test="organState != null ">organ_state = #{organState},</if>
+            <if test="organChargeState != null ">organ_charge_state = #{organChargeState},</if>
             paymentid = #{paymentid},
             update_time = sysdate()
         </set>

--
Gitblit v1.9.3