From ab75e76d9beae65138423e6f8206915e964e32e0 Mon Sep 17 00:00:00 2001
From: xiaogang <905166056@qq.com>
Date: 星期四, 04 二月 2021 17:33:00 +0800
Subject: [PATCH] 1、新增报修报表2、优化业主手机号登陆 查询业主未传入用户类型问题

---
 service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java |  106 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 100 insertions(+), 6 deletions(-)

diff --git a/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java b/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java
index b54fca5..a08e801 100644
--- a/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java
+++ b/service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.fee.FeeDto;
+import com.java110.dto.repair.RepairUserDto;
 import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto;
 import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsTotalDto;
 import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO;
@@ -279,7 +280,7 @@
                     totalPreferentialAmount = totalPreferentialAmount + discountPrice;
                     //浼樻儬閲戦
                     reportFeeMonthStatistics.setPreferentialAmount(reportFeeMonthStatistics.getDiscountPrice());
-                }else{
+                } else {
                     reportFeeMonthStatistics.setPreferentialAmount("0");
 
                 }
@@ -290,17 +291,17 @@
                     totalDeductionAmount = totalDeductionAmount + discountPrice;
                     //鍑忓厤閲戦
                     reportFeeMonthStatistics.setDeductionAmount(reportFeeMonthStatistics.getDiscountPrice());
-                }else{
+                } else {
                     reportFeeMonthStatistics.setDeductionAmount("0");
                 }
                 //婊炵撼閲�
                 if (!StringUtil.isEmpty(reportFeeMonthStatistics.getDiscountSmallType()) && reportFeeMonthStatistics.getDiscountSmallType().equals("3")) {
                     //鑾峰彇婊炵撼閲戦噾棰�
-                    Double discountPrice = (Double.valueOf(reportFeeMonthStatistics.getDiscountPrice()))*(-1);
+                    Double discountPrice = (Double.valueOf(reportFeeMonthStatistics.getDiscountPrice())) * (-1);
                     totalLateFee = totalLateFee + discountPrice;
                     //婊炵撼閲�
                     reportFeeMonthStatistics.setLateFee(reportFeeMonthStatistics.getDiscountPrice());
-                }else{
+                } else {
                     reportFeeMonthStatistics.setLateFee("0");
                 }
                 //绌虹疆鎴挎墦鎶�
@@ -310,7 +311,7 @@
                     totalVacantHousingDiscount = totalVacantHousingDiscount + discountPrice;
                     //绌虹疆鎴挎墦鎶�
                     reportFeeMonthStatistics.setVacantHousingDiscount(reportFeeMonthStatistics.getDiscountPrice());
-                }else{
+                } else {
                     reportFeeMonthStatistics.setVacantHousingDiscount("0");
                 }
                 //绌虹疆鎴垮噺鍏�
@@ -320,7 +321,7 @@
                     totalVacantHousingReduction = totalVacantHousingReduction + discountPrice;
                     //绌虹疆鎴垮噺鍏�
                     reportFeeMonthStatistics.setVacantHousingReduction(reportFeeMonthStatistics.getDiscountPrice());
-                }else{
+                } else {
                     reportFeeMonthStatistics.setVacantHousingReduction("0");
                 }
 
@@ -461,6 +462,99 @@
         return responseEntity;
     }
 
+    /**
+     * 鏌ヨ鎶ヤ慨淇℃伅
+     *
+     * @param repairUserDto
+     * @return
+     */
+    @Override
+    public ResponseEntity<String> queryRepair(RepairUserDto repairUserDto) {
+        //鏌ヨ鍛樺伐鎶ヤ慨琛ㄥ憳宸ヤ俊鎭�
+        List<RepairUserDto> repairUsers = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairForStaff(repairUserDto);
+        int count = repairUsers.size();
+        //鑾峰彇鍛樺伐id鍜屽鍚嶉泦鍚�
+        List<RepairUserDto> staffs;
+        if (StringUtil.isEmpty(repairUserDto.getStaffId())) {
+            staffs = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairForStaff(repairUserDto);
+        } else {
+            repairUserDto.setStaffId(null);
+            staffs = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairForStaff(repairUserDto);
+        }
+        List<RepairUserDto> repairUserList = new ArrayList<>();
+        if (count > 0) {
+            for (RepairUserDto repairUser : repairUsers) {
+                RepairUserDto repairUserInfo = new RepairUserDto();
+                //鍛樺伐id
+                repairUserDto.setStaffId(repairUser.getStaffId());
+                List<RepairUserDto> repairUserDtoList = reportFeeMonthStatisticsInnerServiceSMOImpl.queryRepairWithOutPage(repairUserDto);
+                if (repairUserDtoList != null && repairUserDtoList.size() > 0) {
+                    //澶勭悊涓暟閲�
+                    int dealAmount = 0;
+                    //缁撳崟鏁伴噺
+                    int statementAmount = 0;
+                    //閫�鍗曟暟閲�
+                    int chargebackAmount = 0;
+                    //杞崟鏁伴噺
+                    int transferOrderAmount = 0;
+                    //娲惧崟鏁伴噺
+                    int dispatchAmount = 0;
+                    for (RepairUserDto repair : repairUserDtoList) {
+                        //澶勭悊涓姸鎬�
+                        if (repair.getState().equals("10001")) {
+                            //鑾峰彇鏁伴噺
+                            int amount = Integer.parseInt(repair.getAmount());
+                            dealAmount = dealAmount + amount;
+                        } else if (repair.getState().equals("10002")) {  //缁撳崟鐘舵��
+                            //鑾峰彇鏁伴噺
+                            int amount = Integer.parseInt(repair.getAmount());
+                            statementAmount = statementAmount + amount;
+                        } else if (repair.getState().equals("10003")) {  //閫�鍗曠姸鎬�
+                            //鑾峰彇鏁伴噺
+                            int amount = Integer.parseInt(repair.getAmount());
+                            chargebackAmount = chargebackAmount + amount;
+                        } else if (repair.getState().equals("10004")) {  //杞崟鐘舵��
+                            //鑾峰彇鏁伴噺
+                            int amount = Integer.parseInt(repair.getAmount());
+                            transferOrderAmount = transferOrderAmount + amount;
+                        } else if (repair.getState().equals("10006")) {  //娲惧崟鐘舵��
+                            int amount = Integer.parseInt(repair.getAmount());
+                            dispatchAmount = dispatchAmount + amount;
+                        }
+                    }
+                    //鍛樺伐id
+                    repairUserInfo.setStaffId(repairUser.getStaffId());
+                    //鍛樺伐濮撳悕
+                    repairUserInfo.setStaffName(repairUser.getStaffName());
+                    //澶勭悊涓姤淇暟閲�
+                    repairUserInfo.setDealAmount(Integer.toString(dealAmount));
+                    //缁撳崟鎶ヤ慨鏁伴噺
+                    repairUserInfo.setStatementAmount(Integer.toString(statementAmount));
+                    //閫�鍗曟姤淇暟閲�
+                    repairUserInfo.setChargebackAmount(Integer.toString(chargebackAmount));
+                    //杞崟鎶ヤ慨鏁伴噺
+                    repairUserInfo.setTransferOrderAmount(Integer.toString(transferOrderAmount));
+                    //娲惧崟鎶ヤ慨鏁伴噺
+                    repairUserInfo.setDispatchAmount(Integer.toString(dispatchAmount));
+                    //鍛樺伐id鍜屽鍚嶄俊鎭泦鍚�
+                    repairUserInfo.setRepairList(staffs);
+                    repairUserList.add(repairUserInfo);
+                } else {
+                    continue;
+                }
+            }
+        } else {
+            repairUserList = new ArrayList<>();
+        }
+
+        int size = repairUserList.size();
+        ResultVo resultVo = new ResultVo((int) Math.ceil((double) size / (double) repairUserDto.getRow()), size, repairUserList, staffs);
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+        return responseEntity;
+    }
+
     @Override
     public ResponseEntity<String> queryPrePayment(ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
 

--
Gitblit v1.8.0