From d8bc08083504bc5d8ba61513ac21ec0f26ba5c8d Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 30 十二月 2020 23:51:23 +0800
Subject: [PATCH] 优化代码

---
 service-front/src/main/java/com/java110/front/smo/assetExport/impl/ExportReportFeeSMOImpl.java |   82 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 73 insertions(+), 9 deletions(-)

diff --git a/service-front/src/main/java/com/java110/front/smo/assetExport/impl/ExportReportFeeSMOImpl.java b/service-front/src/main/java/com/java110/front/smo/assetExport/impl/ExportReportFeeSMOImpl.java
index 4a3eee8..32267e7 100644
--- a/service-front/src/main/java/com/java110/front/smo/assetExport/impl/ExportReportFeeSMOImpl.java
+++ b/service-front/src/main/java/com/java110/front/smo/assetExport/impl/ExportReportFeeSMOImpl.java
@@ -45,6 +45,7 @@
     public static final String REPORT_FEE_BREAKDOWN = "reportFeeBreakdown";
     public static final String REPORT_FEE_DETAIL = "reportFeeDetail";
     public static final String REPORT_OWE_FEE_DETAIL = "reportOweFeeDetail";
+    public static final String REPORT_PAY_FEE_DETAIL = "reportPayFeeDetail";
 
     @Autowired
     private RestTemplate restTemplate;
@@ -80,7 +81,9 @@
             case REPORT_OWE_FEE_DETAIL:
                 reportOweFeeDetail(pd, result, workbook);
                 break;
-
+            case REPORT_PAY_FEE_DETAIL:
+                reportPayFeeDetail(pd, result, workbook);
+                break;
 
         }
 
@@ -106,6 +109,68 @@
         }
         // 淇濆瓨鏁版嵁
         return new ResponseEntity<Object>(context, headers, HttpStatus.OK);
+    }
+
+    private void reportPayFeeDetail(IPageData pd, ComponentValidateResult result, Workbook workbook) {
+        Sheet sheet = workbook.createSheet("缂磋垂鏄庣粏琛�");
+        Row row = sheet.createRow(0);
+        row.createCell(0).setCellValue("璐圭敤缂栧彿");
+        row.createCell(1).setCellValue("鎴垮彿");
+        row.createCell(2).setCellValue("璐圭敤椤�");
+        row.createCell(3).setCellValue("鏀粯鏂瑰紡");
+        row.createCell(4).setCellValue("缂磋垂寮�濮嬫椂闂�");
+        row.createCell(5).setCellValue("缂磋垂缁撴潫鏃堕棿");
+        row.createCell(6).setCellValue("缂磋垂鏃堕棿");
+        row.createCell(7).setCellValue("搴旀敹閲戦");
+        row.createCell(8).setCellValue("瀹炴敹閲戦");
+
+
+        //鏌ヨ妤兼爧淇℃伅
+        JSONArray rooms = this.getReportPayFeeDetail(pd, result);
+
+        if (rooms == null) {
+            return;
+        }
+        JSONObject dataObj = null;
+        for (int roomIndex = 0; roomIndex < rooms.size(); roomIndex++) {
+            row = sheet.createRow(roomIndex + 1);
+            dataObj = rooms.getJSONObject(roomIndex);
+
+            row.createCell(0).setCellValue(roomIndex + 1);
+            row.createCell(1).setCellValue(dataObj.getString("objName"));
+            row.createCell(2).setCellValue(dataObj.getString("feeName"));
+            row.createCell(3).setCellValue(dataObj.getString("primeRate"));
+            row.createCell(4).setCellValue(dataObj.getString("startTime"));
+            row.createCell(5).setCellValue(dataObj.getString("endTime"));
+            row.createCell(6).setCellValue(dataObj.getString("createTime"));
+            row.createCell(7).setCellValue(dataObj.getString("receivableAmount"));
+            row.createCell(8).setCellValue(dataObj.getString("receivedAmount"));
+
+        }
+    }
+
+    private JSONArray getReportPayFeeDetail(IPageData pd, ComponentValidateResult result) {
+        String apiUrl = "";
+        ResponseEntity<String> responseEntity = null;
+        JSONObject reqJson = JSONObject.parseObject(pd.getReqData());
+        reqJson.put("page", 1);
+        reqJson.put("row", 10000);
+        apiUrl = ServiceConstant.SERVICE_API_URL + "/api/reportFeeMonthStatistics/queryPayFeeDetail" + mapToUrlParam(reqJson);
+        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
+
+        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
+            return null;
+        }
+
+        JSONObject savedRoomInfoResults = JSONObject.parseObject(responseEntity.getBody(), Feature.OrderedField);
+
+
+        if (!savedRoomInfoResults.containsKey("data")) {
+            return null;
+        }
+
+
+        return savedRoomInfoResults.getJSONArray("data");
     }
 
     private void reportOweFeeDetail(IPageData pd, ComponentValidateResult result, Workbook workbook) {
@@ -159,7 +224,7 @@
             row.createCell(1).setCellValue(dataObj.getString("objName"));
             row.createCell(2).setCellValue(dataObj.getString("feeName"));
             row.createCell(3).setCellValue(dataObj.getString("feeCreateTime"));
-            row.createCell(4).setCellValue("-");
+            row.createCell(4).setCellValue(dataObj.getString("deadlineTime"));
             row.createCell(5).setCellValue(dataObj.getString("receivableAmount"));
             row.createCell(6).setCellValue(dataObj.getString("receivedAmount"));
 
@@ -227,9 +292,9 @@
             dataObj = rooms.getJSONObject(roomIndex);
 
             row.createCell(0).setCellValue(roomIndex + 1);
-            row.createCell(2).setCellValue(dataObj.getString("feeName"));
-            row.createCell(3).setCellValue(dataObj.getString("feeCreateTime"));
-            row.createCell(1).setCellValue(dataObj.getString("receivableAmount"));
+            row.createCell(1).setCellValue(dataObj.getString("feeName"));
+            row.createCell(2).setCellValue(dataObj.getString("feeCreateTime"));
+            row.createCell(3).setCellValue(dataObj.getString("receivableAmount"));
             row.createCell(4).setCellValue(dataObj.getString("receivedAmount"));
             row.createCell(5).setCellValue(dataObj.getString("oweAmount"));
 
@@ -275,11 +340,10 @@
         for (int roomIndex = 0; roomIndex < rooms.size(); roomIndex++) {
             row = sheet.createRow(roomIndex + 1);
             dataObj = rooms.getJSONObject(roomIndex);
-
             row.createCell(0).setCellValue(dataObj.getString("feeYear") + "骞�" + dataObj.getString("feeMonth") + "鏈�");
-            row.createCell(1).setCellValue(dataObj.getString("receivableAmount"));
-            row.createCell(2).setCellValue(dataObj.getString("floorNum") + "鍙锋ゼ");
-            row.createCell(3).setCellValue(dataObj.getString("unitNum") + "鍗曞厓");
+            row.createCell(1).setCellValue(dataObj.getString("floorNum") + "鍙锋ゼ");
+            row.createCell(2).setCellValue(dataObj.getString("unitNum") + "鍗曞厓");
+            row.createCell(3).setCellValue(dataObj.getString("receivableAmount"));
             row.createCell(4).setCellValue(dataObj.getString("receivedAmount"));
             row.createCell(5).setCellValue(dataObj.getString("oweAmount"));
 

--
Gitblit v1.8.0