From 1653bd25056096a6f5d434670f7988977774fc25 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期六, 01 六月 2024 15:00:17 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java
index a7038e2..15aa554 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java
@@ -276,6 +276,11 @@
         if (CollectionUtils.isEmpty(serviceFunddetails)) {
             throw new BaseException("绠楃◣鏉′欢涓虹┖锛岃妫�鏌ュ悗锛屽啀杩涜璁$畻");
         }
+        // 鐢ㄤ簬涓存椂淇濆瓨宸茬粡绠楀ソ鐨�"璐圭敤璇︽儏鏁版嵁"
+        List<ServiceFunddetail> temporarySave = new ArrayList<>();
+        // 鐢ㄤ簬璁板綍搴忓彿
+        Map<String, Long> xhMap = new HashMap<>();
+
         // 鍏堝serviceFunddetails鎺掑簭
         Comparator<ServiceFunddetail> customComparator = Comparator.comparing(obj -> {
             if (ObjectUtils.isEmpty(obj.getTaxTime())) {
@@ -291,13 +296,13 @@
         log.info("绠楃◣鐨刦undid鐨勫�间负锛歿}", fundid);
         ServiceFund serviceFund1 = serviceFundMapper.selectById(fundid);
         log.info("fund琛ㄧ殑fundtextime鍊间负锛歿}", serviceFund1.getFundtaxtime());
-
-//        //鐢ㄤ簬涓存椂淇濆瓨宸茬粡绠楀ソ鐨�"璐圭敤璇︽儏鏁版嵁"
-        List<ServiceFunddetail> temporarySave = new ArrayList<>();
         //淇濆瓨鎬荤◣鍓嶉噾棰濓紙鐢ㄤ簬鏇存柊fund琛ㄩ噷鐨勶級
         BigDecimal pretaxcost = BigDecimal.valueOf(0.00);
         BigDecimal taxedcost = BigDecimal.valueOf(0.00);
         for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
+            if (serviceFunddetail.getBeneficiaryname().equals("鍚村悍鏉�")) {
+                System.out.println(serviceFunddetail);
+            }
             if (StringUtils.isEmpty(serviceFunddetail.getIdcardno())) {
                 logger.info("serviceFunddetail鏁版嵁鍏ュ弬 锛� {}", serviceFunddetail);
                 //濡傛灉韬唤璇佸彿涓虹┖锛屽氨涓嶇敤鏌ヤ簡锛屽彲鑳芥槸鍖婚櫌鐨勮褰�
@@ -324,9 +329,17 @@
             taxMoneyByItemEO.setFirstDay(firstDay);
             taxMoneyByItemEO.setIDCard(serviceFunddetail.getIdcardno());
             taxMoneyByItemEO.setTaxTime(new Date());
+            //鏍规嵁鏉′欢鑾峰彇琛ㄤ腑璇ユ潯鏁版嵁鐨勨�濆簭鍙封�滄渶澶у��
             Long maxXH = serviceFunddetailMapper.getMaxXH(taxMoneyByItemEO);
             if (maxXH == null) {
-                maxXH = 0L;
+                maxXH = 1L;
+            } else {
+                maxXH = maxXH + 1;
+            }
+            //搴忓彿Map涓庢暟鎹簱琛ㄩ噷鐨剎h鍚屾椂涓嶄负绌猴紝閭e氨浠ap閲岀殑涓哄噯
+            if (ObjectUtils.isNotEmpty(xhMap)) {
+                Long xhValue = xhMap.get(serviceFunddetail.getIdcardno());
+                if (xhValue != null) maxXH = xhValue + 1;
             }
 
             TaxMoneyByItemEO taxMoneyVO = new TaxMoneyByItemEO();
@@ -341,7 +354,8 @@
             if (serviceFunddetail.getXh() != null) {
                 taxMoneyVO.setXh(serviceFunddetail.getXh());
             } else {
-                taxMoneyVO.setXh(maxXH + 1);
+                taxMoneyVO.setXh(maxXH);
+                xhMap.put(serviceFunddetail.getIdcardno(), maxXH);
             }
             //鏌ュ嚭绋庡墠銆佺◣銆佺◣鍚庣殑鎬婚锛堜笉鍖呭惈鏈锛�
             TaxMoneySumEO taxSum = serviceFunddetailMapper.getTaxSum(taxMoneyVO);
@@ -369,7 +383,7 @@
                 }
             }
             if (serviceFunddetail.getXh() == null) {
-                serviceFunddetail.setXh(maxXH + 1);
+                serviceFunddetail.setXh(maxXH);
             }
 
             if (StringUtils.isEmpty(serviceFunddetail.getServicesscopename()) || !serviceFunddetail.getServicesscopename().contains("绋庡悗")) {

--
Gitblit v1.9.3