From ee089a8ac4a9d99ef0a0491bbf1d80a2d4fbc393 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期二, 10 十一月 2026 09:15:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java |   34 ++++++++++++++++++++++++++++++++++
 1 files changed, 34 insertions(+), 0 deletions(-)

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 3800c85..d88abef 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
@@ -14,7 +14,10 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.math.BigDecimal;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 鎹愮尞鍣ㄥ畼Service涓氬姟灞傚鐞�
@@ -106,12 +109,43 @@
     }
 
     @Override
+    public int removeByIds(Long[] ids) {
+        if (ids == null || ids.length == 0) {
+            return 0;
+        }
+        return serviceDonorchargeorganMapper.removeByIds(ids);
+    }
+
+    @Override
     public List<ServiceDonorchargeorgan> queryListBypaymentidIsNull(ServiceDonorchargeorgan serviceDonorchargeorgan) {
         List<ServiceDonorchargeorgan> serviceDonorchargeorgans = serviceDonorchargeorganMapper.queryListBypaymentidIsNull(serviceDonorchargeorgan);
         return serviceDonorchargeorgans;
     }
 
     @Override
+    public Map<String, Object> organfeeSummary(ServiceDonorchargeorgan serviceDonorchargeorgan) {
+        List<ServiceDonorchargeorgan> list = Boolean.TRUE.equals(serviceDonorchargeorgan.getPaymentidIsNotNull())
+                ? queryList(serviceDonorchargeorgan)
+                : queryListBypaymentidIsNull(serviceDonorchargeorgan);
+        BigDecimal organchargeTotal = BigDecimal.ZERO;
+        BigDecimal amountTotal = BigDecimal.ZERO;
+        for (ServiceDonorchargeorgan item : list) {
+            if (item.getOrgancharge() != null) {
+                organchargeTotal = organchargeTotal.add(item.getOrgancharge());
+            }
+            if (item.getAmount() != null) {
+                amountTotal = amountTotal.add(item.getAmount());
+            }
+        }
+        Map<String, Object> summary = new HashMap<>(4);
+        summary.put("organchargeTotal", organchargeTotal);
+        summary.put("amountTotal", amountTotal);
+        summary.put("unreceivedTotal", organchargeTotal.subtract(amountTotal));
+        summary.put("rowCount", list.size());
+        return summary;
+    }
+
+    @Override
     public List<SpStatChange> getListBySpStatChange(SpStatChangeReq spStatChangeReq) {
         return serviceDonorchargeorganMapper.getListBySpStatChange(
                 spStatChangeReq.getPabegtime(),

--
Gitblit v1.9.3