From b88b42be258535e65d38888823ac85fd8467b571 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期一, 02 十一月 2026 14:02:11 +0800
Subject: [PATCH] 已收金额,未收金额钻取数据列表

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java |   11 +++++
 ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml                  |   35 +++++++++++++++++
 ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonorchargeorganMapper.java            |    3 +
 ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonorchargeorganService.java         |   10 +++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java  |   11 +++++
 5 files changed, 70 insertions(+), 0 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
index e41c09b..34877d4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
@@ -242,6 +242,17 @@
     }
 
     /**
+     * 鏀惰垂缁熻鏄庣粏锛堢偣鍑诲凡鏀�/鏈敹閲戦閽诲彇锛�
+     */
+    @ApiOperation("鏀惰垂缁熻鏄庣粏")
+    @PostMapping("/getSpStatChangeDetail")
+    public TableDataInfo getSpStatChangeDetail(@RequestBody SpStatChangeDetailReq spStatChangeDetailReq) {
+        startPage();
+        List<SpStatChangeDetail> list = serviceDonorchargeorganService.getSpStatChangeDetail(spStatChangeDetailReq);
+        return getDataTable(list);
+    }
+
+    /**
      * 瀵煎嚭鏀舵缁熻
      */
     @ApiOperation("瀵煎嚭鏀舵缁熻")
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonorchargeorganMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonorchargeorganMapper.java
index 22b2c43..658b651 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonorchargeorganMapper.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonorchargeorganMapper.java
@@ -5,6 +5,7 @@
 import com.ruoyi.project.domain.ServiceDonorchargeorgan;
 import com.ruoyi.project.domain.SpStatBonus;
 import com.ruoyi.project.domain.SpStatChange;
+import com.ruoyi.project.domain.SpStatChangeDetail;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -33,4 +34,6 @@
 
     public List<SpStatChange> getListBySpStatChange(@Param("PABEGTIME") String PABEGTIME, @Param("PAENDTIME") String PAENDTIME, @Param("PAHOSPITALNAME") String PAHOSPITALNAME);
 
+    public List<SpStatChangeDetail> getSpStatChangeDetail(@Param("PABEGTIME") String PABEGTIME, @Param("PAENDTIME") String PAENDTIME, @Param("PAHOSPITALNAME") String PAHOSPITALNAME, @Param("PACHARGESTATE") String PACHARGESTATE);
+
 }
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonorchargeorganService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonorchargeorganService.java
index fbe3848..f02abb1 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonorchargeorganService.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonorchargeorganService.java
@@ -3,6 +3,8 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.project.domain.ServiceDonorchargeorgan;
 import com.ruoyi.project.domain.SpStatChange;
+import com.ruoyi.project.domain.SpStatChangeDetail;
+import com.ruoyi.project.domain.SpStatChangeDetailReq;
 import com.ruoyi.project.domain.SpStatChangeReq;
 
 import java.util.List;
@@ -33,4 +35,12 @@
      * @return
      */
     public List<SpStatChange> getListBySpStatChange(SpStatChangeReq spStatChangeReq);
+
+    /**
+     * 鏀舵缁熻鏄庣粏锛堥捇鍙栵級
+     *
+     * @param req 鏌ヨ鏉′欢
+     * @return 鏄庣粏闆嗗悎
+     */
+    public List<SpStatChangeDetail> getSpStatChangeDetail(SpStatChangeDetailReq req);
 }
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java
index e456d46..3800c85 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java
@@ -6,6 +6,8 @@
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.project.domain.ServiceDonorchargeorgan;
 import com.ruoyi.project.domain.SpStatChange;
+import com.ruoyi.project.domain.SpStatChangeDetail;
+import com.ruoyi.project.domain.SpStatChangeDetailReq;
 import com.ruoyi.project.domain.SpStatChangeReq;
 import com.ruoyi.project.mapper.ServiceDonorchargeorganMapper;
 import com.ruoyi.project.service.IServiceDonorchargeorganService;
@@ -117,4 +119,13 @@
                 spStatChangeReq.getPahospitalname());
     }
 
+    @Override
+    public List<SpStatChangeDetail> getSpStatChangeDetail(SpStatChangeDetailReq req) {
+        return serviceDonorchargeorganMapper.getSpStatChangeDetail(
+                req.getPabegtime(),
+                req.getPaendtime(),
+                req.getPahospitalname(),
+                req.getPachargestate());
+    }
+
 }
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml
index 7b169e7..49514fd 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonorchargeorganMapper.xml
@@ -213,4 +213,39 @@
         )
     </select>
 
+    <resultMap id="SpStatChangeDetailResult" type="com.ruoyi.project.domain.SpStatChangeDetail">
+        <result property="donatetime" column="donatetime"/>
+        <result property="donorname" column="donorname"/>
+        <result property="organno" column="OrganNo"/>
+        <result property="organname" column="OrganName"/>
+        <result property="name" column="name"/>
+        <result property="caseno" column="caseno"/>
+        <result property="hospitalname" column="HospitalName"/>
+        <result property="organcharge" column="organcharge"/>
+        <result property="amount" column="amount"/>
+        <result property="nonpayment" column="nonpayment"/>
+    </resultMap>
+
+    <select id="getSpStatChangeDetail" resultMap="SpStatChangeDetailResult">
+        select b.donatetime,
+               o.donorname,
+               o.OrganNo,
+               o.OrganName,
+               o.name,
+               o.caseno,
+               o.HospitalName,
+               o.organcharge,
+               o.amount,
+               (ifnull(o.organcharge, 0) - ifnull(o.amount, 0)) as nonpayment
+        from service_donorchargeorgan o
+                 left join service_donatebaseinfo b on b.ID = o.InfoID
+        where o.del_flag = 0
+        <if test="PABEGTIME != null and PABEGTIME != ''">and b.donatetime &gt;= #{PABEGTIME}</if>
+        <if test="PAENDTIME != null and PAENDTIME != ''">and b.donatetime &lt;= #{PAENDTIME}</if>
+        <if test="PAHOSPITALNAME != null and PAHOSPITALNAME != ''">and o.HospitalName = #{PAHOSPITALNAME}</if>
+        <if test='"1".equals(PACHARGESTATE)'>and ifnull(o.amount, 0) &gt; 0</if>
+        <if test='"0".equals(PACHARGESTATE)'>and (ifnull(o.organcharge, 0) - ifnull(o.amount, 0)) &gt; 0</if>
+        order by b.donatetime
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3