From 5bfe05fa33b82fb055806125c7bacaac688241f8 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期五, 22 八月 2025 09:54:03 +0800
Subject: [PATCH] 暂存0822

---
 service-fee/src/main/java/com/java110/fee/cmd/fee/ReportFeeCmd.java |  100 +++++++++++++++++++++++++-------------------------
 1 files changed, 50 insertions(+), 50 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/ReportFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/ReportFeeCmd.java
index 2f17d2f..00f2fd6 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/ReportFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/ReportFeeCmd.java
@@ -127,13 +127,13 @@
         int doYear = endYear - startYear;
         LinkedList<FeeDto> col1 = new LinkedList<>();
         FeeDto col = new FeeDto();
-        BigDecimal[] col1Fee = new BigDecimal[doYear - 1 + 20];
+        double[] col1Fee = new double[doYear - 1 + 20];
         col.setReport(col1Fee);
         col.setCurYear("鏀跺叆鍚堣锛堢櫧鍗曟祦姘达級");
         col1.add(col);
 
         LinkedList<FeeDto> col2 = new LinkedList<>();
-        BigDecimal[] col2Fee = new BigDecimal[doYear - 1 + 20];
+        double[] col2Fee = new double[doYear - 1 + 20];
         col = new FeeDto();
         col.setReport(col2Fee);
         col.setCurYear("鐗╀笟璐�+浠f敹鍚堣");
@@ -147,13 +147,13 @@
 
         LinkedList<FeeDto> col4 = new LinkedList<>();
         col = new FeeDto();
-        col.setReport(new BigDecimal[doYear - 1 + 20]);
+        col.setReport(new double[doYear - 1 + 20]);
         col.setCurYear("鐗╀笟璐逛唬鏀跺悎璁�");
         col3.add(col);
 
-        BigDecimal[] col4Fee = new BigDecimal[doYear - 1 + 20];
-        BigDecimal[] colByCar = new BigDecimal[doYear - 1 + 20];
-        BigDecimal[] colByOther = new BigDecimal[doYear - 1 + 20];
+        double[] col4Fee = new double[doYear - 1 + 20];
+        double[] colByCar = new double[doYear - 1 + 20];
+        double[] colByOther = new double[doYear - 1 + 20];
         reportFeeDtoLists.add(col1);
         reportFeeDtoLists.add(col2);
         reportFeeDtoLists.add(col2);
@@ -175,64 +175,64 @@
             LinkedList<FeeDto> feeDtos = new LinkedList<>();//鎬荤殑
             int kg = 0;
             for (Map map : result){
-                if(map.get("璐圭敤鎵�灞炲勾浠�").equals("绫诲瀷鎬昏") && map.get("fee_type_cd").equals(dictDto1.getStatusCd())){
-                    BigDecimal[] doubles = new BigDecimal[doYear - 1 + 20];
-                    doubles[0] = (BigDecimal) map.get("璇ュ勾搴旂即鎬婚");
-                    doubles[1] = (BigDecimal) map.get("姣忔湀璐圭敤");
-                    doubles[2] = (BigDecimal) map.get("搴旀敹鏈堜唤鏁�");
-                    doubles[3] = (BigDecimal) map.get("褰撳勾鏀剁即鐜�");
-                    doubles[4] = (BigDecimal) map.get("鎶樻墸閲戦");
+                if(map.get("璐圭敤鎵�灞炲勾浠�").equals("绫诲瀷鎬昏") && map.containsKey("fee_type_cd") && map.get("fee_type_cd").equals(dictDto1.getStatusCd())){
+                    double[] doubles = new double[doYear - 1 + 20];
+                    doubles[0] = doubleUse(((BigDecimal) map.get("璇ュ勾搴旂即鎬婚")).doubleValue());
+                    doubles[1] = doubleUse(((BigDecimal) map.get("姣忔湀璐圭敤")).doubleValue());
+                    doubles[2] = doubleUse(((Long) map.get("搴旀敹鏈堜唤鏁�")).doubleValue());
+                    doubles[3] = doubleUse(((BigDecimal) map.get("褰撳勾鏀剁即鐜�")).doubleValue());
+                    doubles[4] = doubleUse(((BigDecimal) map.get("鎶樻墸閲戦")).doubleValue());
                     int inde = 0;
                     for (int i : arr){
                         if(i < currentYear){
                             inde++;
-                            doubles[i - startYear + 5] = (BigDecimal) map.get(i + "骞村疄缂�");
+                            doubles[i - startYear + 5] = doubleUse(((BigDecimal) map.get(i + "骞村疄缂�")).doubleValue());
                         }
                     }
-                    doubles[inde + 5] =(BigDecimal) map.get("褰撳勾棰勭畻");
-                    doubles[inde + 6] =(BigDecimal) map.get(currentYear + "骞村疄缂�");
-                    doubles[inde + 7] =(BigDecimal) map.get("褰撳勾鎶樻墸鎬婚");
-                    doubles[inde + 8] =(BigDecimal) map.get("褰撳勾娆犳");
+                    doubles[inde + 5] =doubleUse(((BigDecimal) map.get("褰撳勾棰勭畻")).doubleValue());
+                    doubles[inde + 6] =doubleUse(((BigDecimal) map.get(currentYear + "骞村疄缂�")).doubleValue());
+                    doubles[inde + 7] =doubleUse(((BigDecimal) map.get("褰撳勾鎶樻墸鎬婚")).doubleValue());
+                    doubles[inde + 8] =doubleUse(((BigDecimal) map.get("褰撳勾娆犳")).doubleValue());
 
                     for (int i = 1 ; i <= 12 ; i++){
-                        doubles[inde + 8 + i] =(BigDecimal) map.get("褰撳勾"+(i < 10 ? "0"+i : i) +"鏈堝疄缂�");
+                        doubles[inde + 8 + i] =doubleUse(((BigDecimal) map.get("褰撳勾"+(i < 10 ? "0"+i : i) +"鏈堝疄缂�")).doubleValue());
                     }
                     feeDto.setCurYear(dictDto1.getName()+"鎬昏");
                     if(Integer.parseInt(dictDto1.getStatusCd())%630000000 < 3){
                         for(int i = 0 ; i < doubles.length ; i++){
                             if(i == 3){
-                                if (doubles[i].intValue() != 0){
-                                    col1Fee[i] = BigDecimal.valueOf((doubles[i].add(col1Fee[i])).doubleValue()/2);
-                                    col2Fee[i] = BigDecimal.valueOf((doubles[i].add(col1Fee[i])).doubleValue()/2);
+                                if (doubles[i] != 0){
+                                    col1Fee[i] = (doubles[i]+col1Fee[i])/2;
+                                    col2Fee[i] = (doubles[i]+col2Fee[i])/2;
                                 }
                             }else{
-                                col1Fee[i].add(doubleUse(doubles[i]));
-                                col2Fee[i].add(doubleUse(doubles[i]));
+                                col1Fee[i] += doubleUse(doubles[i]);
+                                col2Fee[i] += doubleUse(doubles[i]);
                             }
                         }
                     }
                     else if(Integer.parseInt(dictDto1.getStatusCd())%630000000 < 8){
                         for(int i = 0 ; i < doubles.length ; i++){
                             if(i == 3){
-                                if (doubles[i].intValue() != 0){
-                                    col1Fee[i] = BigDecimal.valueOf((doubles[i].add(col1Fee[i])).doubleValue()/2);
-                                    col2Fee[i] = BigDecimal.valueOf((doubles[i].add(col1Fee[i])).doubleValue()/2);
+                                if (doubles[i] != 0){
+                                    col1Fee[i] = (doubles[i]+col1Fee[i])/2;
+                                    col2Fee[i] = (doubles[i]+col2Fee[i])/2;
                                 }
                             }else{
-                                col1Fee[i].add(doubleUse(doubles[i]));
-                                col2Fee[i].add(doubleUse(doubles[i]));
+                                col1Fee[i] += doubleUse(doubles[i]);
+                                col2Fee[i] += doubleUse(doubles[i]);
                             }
                         }
                     }else{
                         for(int i = 0 ; i < doubles.length ; i++){
                             if(i == 3){
-                                if (doubles[i].intValue() != 0){
-                                    col1Fee[i] = BigDecimal.valueOf((doubles[i].add(col1Fee[i])).doubleValue()/2);
-                                    col2Fee[i] = BigDecimal.valueOf((doubles[i].add(col1Fee[i])).doubleValue()/2);
+                                if (doubles[i] != 0){
+                                    col1Fee[i] = (doubles[i]+col1Fee[i])/2;
+                                    col2Fee[i] = (doubles[i]+col2Fee[i])/2;
                                 }
                             }else{
-                                col1Fee[i].add(doubleUse(doubles[i]));
-                                col2Fee[i].add(doubleUse(doubles[i]));
+                                col1Fee[i] += doubleUse(doubles[i]);
+                                col2Fee[i] += doubleUse(doubles[i]);
                             }
                         }
                     }
@@ -245,7 +245,7 @@
                 feeDto.setCurYear("绫诲瀷鎬昏");
             }
             if (feeDto.getReport() == null){
-                feeDto.setReport(new BigDecimal[doYear - 1 + 20]);
+                feeDto.setReport(new double[doYear - 1 + 20]);
             }
             if(feeDto.getFeeTypeCdName() == null) {
                 feeDto.setFeeTypeCdName(dictDto1.getName());
@@ -260,26 +260,26 @@
                 kg = 0;
                 for (Map map : result){
                     if(map.get("璐圭敤鎵�灞炲勾浠�").equals(i+"") && map.get("fee_type_cd").equals(dictDto1.getStatusCd())){
-                        BigDecimal[] doubles = new BigDecimal[doYear - 1 + 20];
-                        doubles[0] = (BigDecimal) map.get("璇ュ勾搴旂即鎬婚");
-                        doubles[1] = (BigDecimal) map.get("姣忔湀璐圭敤");
-                        doubles[2] = (BigDecimal) map.get("搴旀敹鏈堜唤鏁�");
-                        doubles[3] = (BigDecimal) map.get("褰撳勾鏀剁即鐜�");
-                        doubles[4] = (BigDecimal) map.get("鎶樻墸閲戦");
+                        double[] doubles = new double[doYear - 1 + 20];
+                        doubles[0] = doubleUse(((BigDecimal) map.get("璇ュ勾搴旂即鎬婚")).doubleValue());
+                        doubles[1] = doubleUse(((BigDecimal) map.get("姣忔湀璐圭敤")).doubleValue());
+                        doubles[2] = doubleUse(((Long) map.get("搴旀敹鏈堜唤鏁�")).doubleValue());
+                        doubles[3] = doubleUse(((BigDecimal) map.get("褰撳勾鏀剁即鐜�")).doubleValue());
+                        doubles[4] = doubleUse(((BigDecimal) map.get("鎶樻墸閲戦")).doubleValue());
                         int inde = 0;
                         for (int in : arr){
                             if(in < currentYear){
                                 inde++;
-                                doubles[in - startYear + 5] = (BigDecimal) map.get(i + "骞村疄缂�");
+                                doubles[in - startYear + 5] = doubleUse(((BigDecimal) map.get(i + "骞村疄缂�")).doubleValue());
                             }
                         }
-                        doubles[inde + 5] =(BigDecimal) map.get("褰撳勾棰勭畻");
-                        doubles[inde + 6] =(BigDecimal) map.get(currentYear + "骞村疄缂�");
-                        doubles[inde + 7] =(BigDecimal) map.get("褰撳勾鎶樻墸鎬婚");
-                        doubles[inde + 8] =(BigDecimal) map.get("褰撳勾娆犳");
+                        doubles[inde + 5] =doubleUse(((BigDecimal) map.get("褰撳勾棰勭畻")).doubleValue());
+                        doubles[inde + 6] =doubleUse(((BigDecimal) map.get(currentYear + "骞村疄缂�")).doubleValue());
+                        doubles[inde + 7] =doubleUse(((BigDecimal) map.get("褰撳勾鎶樻墸鎬婚")).doubleValue());
+                        doubles[inde + 8] =doubleUse(((BigDecimal) map.get("褰撳勾娆犳")).doubleValue());
 
                         for (int in = 1 ; in <= 12 ; in++){
-                            doubles[inde + 8 + in] =(BigDecimal) map.get("褰撳勾"+(in < 10 ? "0"+in : in) +"鏈堝疄缂�");
+                            doubles[inde + 8 + in] =doubleUse(((BigDecimal) map.get("褰撳勾"+(in < 10 ? "0"+in : in) +"鏈堝疄缂�")).doubleValue());
                         }
                         feeDto = new FeeDto();
                         feeDto.setFeeTypeCdName(dictDto1.getName());
@@ -294,7 +294,7 @@
                     feeDto = new FeeDto();
                     feeDto.setFeeTypeCdName(dictDto1.getName());
                     feeDto.setCurYear(String.valueOf(i));
-                    feeDto.setReport(new BigDecimal[doYear - 1 + 20]);
+                    feeDto.setReport(new double[doYear - 1 + 20]);
                     feeDto.setCount(ind);
                     feeDtos2.add(feeDto);
                 }
@@ -333,7 +333,7 @@
             ind ++;
         }
     }
-    public BigDecimal doubleUse(BigDecimal num){
-        return  num;
+    public double doubleUse(double num){
+        return  (int)(num * 100) / 100.0;
     }
 }

--
Gitblit v1.8.0