From b4de49622a64e15d673f2716f126734e339e5977 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期三, 20 八月 2025 14:23:46 +0800
Subject: [PATCH] 暂存0820
---
service-fee/src/main/java/com/java110/fee/cmd/fee/ReportFeeCmd.java | 189 +++++++++++++++++++++++++++++++----------------
1 files changed, 125 insertions(+), 64 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 a1c4c89..7deda69 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
@@ -55,7 +55,6 @@
int endYear = feeQueryParams.getEndYear();
List<Map> result = reportFeeInnerServiceSMOImpl.repostPaidInFee(feeQueryParams);
- List<Map> resultTwo = reportFeeInnerServiceSMOImpl.repostPaidInFeeTwo(feeQueryParams);
DictDto dictDto = new DictDto();
dictDto.setTableName("pay_fee_config");
dictDto.setTableColumns("fee_type_cd");
@@ -67,77 +66,139 @@
reportFeeDtoLists.add(new LinkedList<FeeDto>());
reportFeeDtoLists.add(new LinkedList<FeeDto>());
int ind = 1;
- for (DictDto dictDto1 : dictDtos) {//绫诲瀷
- List<FeeDto> reportFeeDtos = new LinkedList<>();
- FeeDto feeDto = new FeeDto();
- LinkedList<FeeDto> feeDtos = new LinkedList<>();
- reportFeeDtoLists.add(feeDtos);
- for (int i = startYear; i <= endYear; i++) {//骞翠唤
- double[] doubles = new double[doYear+12+1+5];
- feeDto = new FeeDto();
- //0~5
- if(resultTwo != null){
- for (Map map : resultTwo) {
- if(map.isEmpty()){
- break;
- }
- else if (map.get("缁熻鍛ㄦ湡")!=null&&map.get("缁熻鍛ㄦ湡").equals(i)&&map.get("璐圭敤绫诲瀷缂栫爜").equals(dictDto1.getStatusCd())){
- feeDto.setCurYear((i)+"");
- feeDto.setFeeTypeCdName(map.get("璐圭敤绫诲瀷")+"");
- doubles[0] = map.get("褰撳勾搴旂即鎬婚噾棰�") == null ? 0 : (double) map.get("褰撳勾搴旂即鎬婚噾棰�");
- doubles[1] = map.get("姣忔湀璐圭敤锛堝悎璁�/鏈堜唤鏁帮級") == null ? 0 : (double) map.get("姣忔湀璐圭敤锛堝悎璁�/鏈堜唤鏁帮級");
- doubles[2] = map.get("姣忔湀璐圭敤鏈堜唤鏁�") == null ? 0 : ((Long) map.get("姣忔湀璐圭敤鏈堜唤鏁�")).intValue();
- }
- }
- }
- if(result != null){
- for (Map map : result) {//绫诲瀷+骞翠唤
- if(map.isEmpty()){
- break;
- }
- //5 ~ 25
- else if (map.get("缁熻鍛ㄦ湡")!=null&&map.get("缁熻鍛ㄦ湡").equals(i)&&map.get("璐圭敤绫诲瀷缂栫爜").equals(dictDto1.getStatusCd())){
-
- for (int j = startYear ; j <= endYear ; j++) {// 5~(endYear - startYear + 5) = 5 ~ 13
- if(map.get((j)+"骞存敹璐归噾棰�(鍏�)")!=null){
- feeDto.setCurYear((i)+"");
- feeDto.setFeeTypeCdName(map.get("璐圭敤绫诲瀷鍚嶇О") == null ? null : map.get("璐圭敤绫诲瀷鍚嶇О")+"");
- doubles[j-startYear+5] = ((BigDecimal)map.get((j)+"骞存敹璐归噾棰�(鍏�)")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- }
- for (int x = 1 ;x <= 12 ;x++ ){// (endYear - startYear + 6) ~ (endYear - startYear + 6 + 12) = 13 ~ 25
- if (map.get((currentYear)+"骞�"+x+"鏈堟敹璐归噾棰�(鍏�)")!=null){
- feeDto.setCurYear((i)+"");
- feeDto.setFeeTypeCdName(map.get("璐圭敤绫诲瀷鍚嶇О") == null ? null : map.get("璐圭敤绫诲瀷鍚嶇О")+"");
- doubles[endYear - startYear + x +5] = ((BigDecimal)map.get((currentYear)+"骞�"+x+"鏈堟敹璐归噾棰�(鍏�)")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- }
- }
- }
- }
- }
- }
- if(feeDto.getCurYear() != null){
- feeDto.setReport(doubles);
- reportFeeDtos.add(feeDto);
- }
- }
- if (ind == 3 || ind == 7){
- reportFeeDtoLists.add(new LinkedList<>());
- }
- reportFeeDtoLists.add(reportFeeDtos);
- if(ind == 1 || ind == 2){
- reportFeeDtoLists.add(new LinkedList<>());
- }
- ind ++;
- }
int[] arr = new int[endYear - startYear + 1];
for (int i = startYear; i <= endYear; i++) {
arr[i-startYear] = i;
}
+
+ for (DictDto dictDto1 : dictDtos) {//绫诲瀷
+ List<FeeDto> reportFeeDtos = new LinkedList<>();//璇ョ被鍨嬬殑鏁扮粍
+ FeeDto feeDto = new FeeDto();
+ LinkedList<FeeDto> feeDtos = new LinkedList<>();//鎬荤殑
+ int kg = 0;
+ for (Map map : result){
+ if(map.get("璐圭敤鎵�灞炲勾浠�").equals("绫诲瀷鎬昏") && map.get("fee_type_cd").equals(dictDto1.getStatusCd())){
+ double[] doubles = new double[doYear - 1 + 20];
+ doubles[0] = ((BigDecimal) map.get("璇ュ勾搴旂即鎬婚")).doubleValue();
+ doubles[1] = ((BigDecimal) map.get("姣忔湀璐圭敤")).doubleValue();
+ doubles[2] = ((Long) map.get("搴旀敹鏈堜唤鏁�")).doubleValue();
+ doubles[3] = ((BigDecimal) map.get("褰撳勾鏀剁即鐜�(%)")).doubleValue();
+ doubles[4] = ((BigDecimal) map.get("鎶樻墸閲戦")).doubleValue();
+ int inde = 0;
+ for (int i : arr){
+ if(i < currentYear){
+ inde++;
+ doubles[i - startYear + 5] = ((BigDecimal) map.get(i + "骞村疄缂�")).doubleValue();
+ }
+ }
+ doubles[inde + 5] =((BigDecimal) map.get("褰撳勾棰勭畻")).doubleValue();
+ doubles[inde + 6] =((BigDecimal) map.get(currentYear + "骞村疄缂�")).doubleValue();
+ doubles[inde + 7] =((BigDecimal) map.get("褰撳勾鎶樻墸鎬婚")).doubleValue();
+ doubles[inde + 8] =((BigDecimal) map.get("褰撳勾娆犳")).doubleValue();
+
+ for (int i = 1 ; i <= 12 ; i++){
+ doubles[inde + 8 + i] =((BigDecimal) map.get("褰撳勾"+i+"鏈堝疄缂�")).doubleValue();
+ }
+ feeDto.setCurYear(dictDto1.getName()+"鎬昏");
+ feeDto.setReport(doubles);
+ feeDto.setCount(ind);
+
+ }
+ }
+ if (feeDto.getCurYear() == null){
+ feeDto.setCurYear("绫诲瀷鎬昏");
+ }
+ if (feeDto.getReport() == null){
+ feeDto.setReport(new double[doYear - 1 + 20]);
+ }
+ if(feeDto.getFeeTypeCdName() == null) {
+ feeDto.setFeeTypeCdName(dictDto1.getName());
+ }
+ LinkedList<FeeDto> feeDtos1 = new LinkedList<>();
+ feeDtos1.add(feeDto);
+ reportFeeDtoLists.add(feeDtos1);//娣诲姞鎬婚噾棰濈殑
+ feeDtos1 = new LinkedList<>();
+ feeDto = new FeeDto();
+ LinkedList<FeeDto> feeDtos2 = new LinkedList<>();
+ for (int i = startYear; i <= endYear; i++) {//骞翠唤
+ kg = 0;
+ for (Map map : result){
+ if(map.get("璐圭敤鎵�灞炲勾浠�").equals(i+"") && map.get("fee_type_cd").equals(dictDto1.getStatusCd())){
+ double[] doubles = new double[doYear - 1 + 20];
+ doubles[0] = ((BigDecimal) map.get("璇ュ勾搴旂即鎬婚")).doubleValue();
+ doubles[1] = ((BigDecimal) map.get("姣忔湀璐圭敤")).doubleValue();
+ doubles[2] = ((Long) map.get("搴旀敹鏈堜唤鏁�")).doubleValue();
+ doubles[3] = ((BigDecimal) map.get("褰撳勾鏀剁即鐜�(%)")).doubleValue();
+ doubles[4] = ((BigDecimal) map.get("鎶樻墸閲戦")).doubleValue();
+ int inde = 0;
+ for (int in : arr){
+ if(in < currentYear){
+ inde++;
+ doubles[in - startYear + 5] = ((BigDecimal) map.get(i + "骞村疄缂�")).doubleValue();
+ }
+ }
+ doubles[inde + 5] =((BigDecimal) map.get("褰撳勾棰勭畻")).doubleValue();
+ doubles[inde + 6] =((BigDecimal) map.get(currentYear + "骞村疄缂�")).doubleValue();
+ doubles[inde + 7] =((BigDecimal) map.get("褰撳勾鎶樻墸鎬婚")).doubleValue();
+ doubles[inde + 8] =((BigDecimal) map.get("褰撳勾娆犳")).doubleValue();
+
+ for (int in = 1 ; in <= 12 ; in++){
+ doubles[inde + 8 + in] =((BigDecimal) map.get("褰撳勾"+in+"鏈堝疄缂�")).doubleValue();
+ }
+ feeDto = new FeeDto();
+ feeDto.setFeeTypeCdName(dictDto1.getName());
+ feeDto.setCurYear(String.valueOf(i));
+ feeDto.setReport(doubles);
+ feeDto.setCount(ind);
+ feeDtos2.add(feeDto);
+ kg = 1;
+ }
+ }
+ if(kg == 0){
+ feeDto = new FeeDto();
+ feeDto.setFeeTypeCdName(dictDto1.getName());
+ feeDto.setCurYear(String.valueOf(i));
+ feeDto.setReport(new double[doYear - 1 + 20]);
+ feeDto.setCount(ind);
+ feeDtos2.add(feeDto);
+ }
+ }
+ reportFeeDtoLists.add(feeDtos2);
+ if (ind == 1){
+ LinkedList linkedList = new LinkedList();
+ FeeDto feeDto1 = new FeeDto();
+ feeDto1.setCurYear("浣忓畢鐗╀笟璐逛唬鏀跺悎璁�");
+ linkedList.add(feeDto1);
+ reportFeeDtoLists.add(linkedList);
+ }
+ if (ind == 2){
+ LinkedList linkedList = new LinkedList();
+ FeeDto feeDto1 = new FeeDto();
+ feeDto1.setCurYear("鍟嗛摵鐗╀笟璐逛唬鏀跺悎璁�");
+ linkedList.add(feeDto1);
+ reportFeeDtoLists.add(linkedList);
+ }
+ if (ind == 3){
+ LinkedList linkedList = new LinkedList();
+ FeeDto feeDto1 = new FeeDto();
+ feeDto1.setCurYear("鍋滆溅璐瑰悎璁★紙3+...+7锛�");
+ linkedList.add(feeDto1);
+ reportFeeDtoLists.add(linkedList);
+ }
+ if (ind == 8){
+ LinkedList linkedList = new LinkedList();
+ FeeDto feeDto1 = new FeeDto();
+ feeDto1.setCurYear("鍏朵粬绫诲悎璁★紙8+...+22锛�");
+ linkedList.add(feeDto1);
+ reportFeeDtoLists.add(linkedList);
+ }
+ ind ++;
+ }
FeeDto feeDto = new FeeDto();
feeDto.setRepostList(reportFeeDtoLists);
feeDto.setYearArr(arr);
-
+ feeDto.setLength(String.valueOf(doYear+12+1+5+4));
ResultVo resultVo = new ResultVo(feeDto);
--
Gitblit v1.8.0