From 9e22e9abd4a3c606ec51d491abf94d7a465356b9 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期五, 30 六月 2023 00:35:56 +0800
Subject: [PATCH] 优化商户

---
 service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeDetailOwnerCmd.java |   43 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 39 insertions(+), 4 deletions(-)

diff --git a/service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeDetailOwnerCmd.java b/service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeDetailOwnerCmd.java
index f85b5ff..ed43137 100644
--- a/service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeDetailOwnerCmd.java
+++ b/service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeDetailOwnerCmd.java
@@ -12,6 +12,7 @@
 import com.java110.report.statistics.IFeeStatistics;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -104,27 +105,61 @@
             return datas;
         }
 
-        BigDecimal oweFee = new BigDecimal(0.00);
-        BigDecimal receivedFee = new BigDecimal(0.00);
+        BigDecimal oweFee = null;
+        BigDecimal receivedFee = null;
         for (int dataIndex = 0; dataIndex < datas.size(); dataIndex++) {
             data = datas.getJSONObject(dataIndex);
+            oweFee = new BigDecimal(0.00);
+            receivedFee = new BigDecimal(0.00);
             for (Map info : infos) {
                 if (!data.get("ownerId").toString().equals(info.get("ownerId"))) {
                     continue;
                 }
 
                 oweFee = oweFee.add(new BigDecimal(info.get("oweFee").toString()));
-                receivedFee = oweFee.add(new BigDecimal(info.get("receivedFee").toString()));
+                receivedFee = receivedFee.add(new BigDecimal(info.get("receivedFee").toString()));
                 data.put("oweFee" + info.get("feeTypeCd").toString(), info.get("oweFee"));
                 data.put("receivedFee" + info.get("feeTypeCd").toString(), info.get("receivedFee"));
-                data.put("objName",info.get("objName"));
+                data.put("objName", info.get("objName"));
             }
             data.put("oweFee", oweFee.doubleValue());
             data.put("receivedFee", receivedFee.doubleValue());
+            // todo 澶勭悊 鏀惰垂瀵硅薄閲嶅闂
+            delRepeatObjName(data);
         }
 
+
         return datas;
     }
 
+    /**
+     * 鍘婚櫎 閲嶅鐨刼bjName
+     * @param data
+     */
+    private void delRepeatObjName(JSONObject data) {
+
+        String objName = data.getString("objName");
+        if (StringUtil.isEmpty(objName)) {
+            return;
+        }
+
+        String[] objNames = objName.split(",");
+        List<String> oNames = new ArrayList<>();
+        for (String oName : objNames) {
+            if (!oNames.contains(oName)) {
+                oNames.add(oName);
+            }
+        }
+        objName = "";
+        for (String oName : oNames) {
+            objName += (oName + ",");
+        }
+        if (objName.endsWith(",")) {
+            objName = objName.substring(0, objName.length() - 1);
+        }
+
+        data.put("objName", objName);
+    }
+
 
 }

--
Gitblit v1.8.0