Просмотр исходного кода

1、费用明细报表新增大计和小计2、费用明细报表新增查询费用项信息sql语句3、车辆收费sql业主名称查询改为模糊查询

xiaogang лет назад: 5
Родитель
Сommit
7619c42bb8

+ 53 - 0
java110-bean/src/main/java/com/java110/dto/reportFeeMonthStatistics/ReportFeeMonthStatisticsDto.java

@@ -1,9 +1,11 @@
 package com.java110.dto.reportFeeMonthStatistics;
 
 import com.java110.dto.PageDto;
+import com.java110.dto.fee.FeeConfigDto;
 
 import java.io.Serializable;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @ClassName FloorDto
@@ -55,8 +57,19 @@ public class ReportFeeMonthStatisticsDto extends PageDto implements Serializable
 
     private String importFeeName;
 
+    //应收总金额(小计)
+    private String totalReceivableAmount;
 
+    //实收总金额(小计)
+    private String totalReceivedAmount;
 
+    //应收总金额(大计)
+    private String allReceivableAmount;
+
+    //实收总金额(大计)
+    private String allReceivedAmount;
+
+    private List<FeeConfigDto> FeeConfigDtos;
 
     public String getReceivableAmount() {
         return receivableAmount;
@@ -322,4 +335,44 @@ public class ReportFeeMonthStatisticsDto extends PageDto implements Serializable
     public void setNormalCount(String normalCount) {
         this.normalCount = normalCount;
     }
+
+    public String getTotalReceivableAmount() {
+        return totalReceivableAmount;
+    }
+
+    public void setTotalReceivableAmount(String totalReceivableAmount) {
+        this.totalReceivableAmount = totalReceivableAmount;
+    }
+
+    public String getTotalReceivedAmount() {
+        return totalReceivedAmount;
+    }
+
+    public void setTotalReceivedAmount(String totalReceivedAmount) {
+        this.totalReceivedAmount = totalReceivedAmount;
+    }
+
+    public String getAllReceivableAmount() {
+        return allReceivableAmount;
+    }
+
+    public void setAllReceivableAmount(String allReceivableAmount) {
+        this.allReceivableAmount = allReceivableAmount;
+    }
+
+    public String getAllReceivedAmount() {
+        return allReceivedAmount;
+    }
+
+    public void setAllReceivedAmount(String allReceivedAmount) {
+        this.allReceivedAmount = allReceivedAmount;
+    }
+
+    public List<FeeConfigDto> getFeeConfigDtos() {
+        return FeeConfigDtos;
+    }
+
+    public void setFeeConfigDtos(List<FeeConfigDto> feeConfigDtoS) {
+        FeeConfigDtos = feeConfigDtoS;
+    }
 }

+ 137 - 15
java110-db/src/main/resources/mapper/report/ReportFeeMonthStatisticsServiceDaoImplMapper.xml

@@ -4,7 +4,6 @@
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="reportFeeMonthStatisticsServiceDaoImpl">
 
-
     <!-- 保存费用月统计信息 add by wuxw 2018-07-03 -->
     <insert id="saveReportFeeMonthStatisticsInfo" parameterType="Map">
         insert into report_fee_month_statistics(
@@ -16,7 +15,6 @@
         )
     </insert>
 
-
     <!-- 查询费用月统计信息 add by wuxw 2018-07-03 -->
     <select id="getReportFeeMonthStatisticsInfo" parameterType="Map" resultType="Map">
         select t.receivable_amount,t.receivable_amount receivableAmount,t.statistics_id,t.statistics_id
@@ -83,10 +81,8 @@
         <if test="page != -1 and page != null ">
             limit #{page}, #{row}
         </if>
-
     </select>
 
-
     <!-- 修改费用月统计信息 add by wuxw 2018-07-03 -->
     <update id="updateReportFeeMonthStatisticsOwe" parameterType="Map">
         update report_fee_month_statistics t set
@@ -104,10 +100,8 @@
         <if test="feeId !=null and feeId != ''">
             and t.fee_id= #{feeId}
         </if>
-
     </update>
 
-
     <!-- 修改费用月统计信息 add by wuxw 2018-07-03 -->
     <update id="updateReportFeeMonthStatisticsInfo" parameterType="Map">
         update report_fee_month_statistics t set t.status_cd = #{statusCd}
@@ -166,7 +160,6 @@
         <if test="statisticsId !=null and statisticsId != ''">
             and t.statistics_id= #{statisticsId}
         </if>
-
     </update>
 
     <!-- 查询费用月统计数量 add by wuxw 2018-07-03 -->
@@ -225,11 +218,8 @@
         <if test="objType !=null and objType != ''">
             and t.obj_type= #{objType}
         </if>
-
-
     </select>
 
-
     <!-- 查询费用月统计数量 add by wuxw 2018-07-03 -->
     <select id="queryReportFeeSummaryCount" parameterType="Map" resultType="Map">
         select count(1) count
@@ -283,7 +273,6 @@
         ) t
     </select>
 
-
     <!-- 查询费用月统计信息 add by wuxw 2018-07-03 -->
     <select id="queryReportFeeSummary" parameterType="Map" resultType="Map">
         select t.fee_year feeYear,t.fee_month feeMonth,SUM(t.receivable_amount) receivableAmount,SUM(t.received_amount)
@@ -551,6 +540,7 @@
             limit #{page}, #{row}
         </if>
     </select>
+
     <select id="queryFeeDetailCount" parameterType="Map" resultType="Map">
         select count(1) count
         from (
@@ -607,8 +597,8 @@
     <!-- 查询费用月统计信息 add by wuxw 2018-07-03 -->
     <select id="queryFeeDetail" parameterType="Map" resultType="Map">
         select t.obj_name objName,t.fee_name feeName,t.fee_create_time feeCreateTime,t.deadline_time
-        deadlineTime,SUM(t.receivable_amount)
-        receivableAmount,SUM(t.received_amount) receivedAmount,SUM(t.owe_amount) oweAmount
+        deadlineTime,SUM(t.receivable_amount) receivableAmount,SUM(t.received_amount) receivedAmount,
+        SUM(t.owe_amount) oweAmount
         from report_fee_month_statistics t
         inner join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
         left join building_room br on t.obj_id = br.room_id and t.obj_type = '3333' and br.status_cd = '0'
@@ -659,6 +649,57 @@
             limit #{page}, #{row}
         </if>
     </select>
+
+    <!-- 查询费用月统计信息 add by wuxw 2018-07-03 -->
+    <select id="queryAllFeeDetail" parameterType="Map" resultType="Map">
+        select SUM(t.receivable_amount) allReceivableAmount,SUM(t.received_amount) allReceivedAmount,
+        SUM(t.owe_amount) allOweAmount from report_fee_month_statistics t
+        inner join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
+        left join building_room br on t.obj_id = br.room_id and t.obj_type = '3333' and br.status_cd = '0'
+        left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+        left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
+        where t.status_cd = '0'
+        <if test="roomNum !=null and roomNum != ''">
+            and br.room_num= #{roomNum}
+        </if>
+        <if test="unitId !=null and unitId != ''">
+            and bu.unit_id= #{unitId}
+        </if>
+        <if test="floorId !=null and floorId != ''">
+            and f.floor_id = #{floorId}
+        </if>
+        <if test="objName !=null and objName != ''">
+            and t.obj_name= #{objName}
+        </if>
+        <if test="feeYear !=null and feeYear != ''">
+            and t.fee_year= #{feeYear}
+        </if>
+        <if test="feeMonth !=null and feeMonth != ''">
+            and t.fee_month= #{feeMonth}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test="objId !=null and objId != ''">
+            and t.obj_id= #{objId}
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="startTime !=null">
+            and t.create_time &gt;= #{startTime}
+        </if>
+        <if test="endTime !=null">
+            and t.create_time &lt;= #{endTime}
+        </if>
+    </select>
+
     <select id="queryOweFeeDetailCount" parameterType="Map" resultType="Map">
         select count(1) count
         from (
@@ -768,6 +809,7 @@
             limit #{page}, #{row}
         </if>
     </select>
+
     <select id="queryPayFeeDetailCount" parameterType="Map" resultType="Map">
         select count(1) count,SUM(receivedAmount) totalReceivedAmount,SUM(receivableAmount) totalReceivableAmount
         from (
@@ -885,6 +927,7 @@
             limit #{page}, #{row}
         </if>
     </select>
+
     <select id="queryDeadlineFeeCount" parameterType="Map" resultType="Map">
         select count(1) count
         from (
@@ -1078,7 +1121,6 @@
         order by objCount desc
     </select>
 
-
     <select id="queryOwePaymentCount" parameterType="Map" resultType="Map">
         select t.fee_name feeName,count(t.obj_id) objCount
         from report_fee_month_statistics t
@@ -1087,6 +1129,7 @@
         group by t.config_id,t.fee_name
         order by objCount desc
     </select>
+
     <select id="queryAllPaymentCount" parameterType="Map" resultType="Map">
         select t.fee_name feeName,count(t.obj_id) objCount
         from report_fee_month_statistics t
@@ -1095,7 +1138,6 @@
         order by objCount desc
     </select>
 
-
     <select id="queryFinishOweFee" parameterType="Map" resultType="Map">
         select t.config_id configId, t.fee_id feeId,t.statistics_id statisticsId,t.fee_year feeYear,fee_month feeMonth
         from report_fee_month_statistics t
@@ -1107,5 +1149,85 @@
         limit 100
     </select>
 
+    <!-- 查询费用配置信息 add by wuxw 2018-07-03 -->
+    <select id="getFeeConfigInfo" parameterType="Map" resultType="Map">
+        select t.fee_type_cd,t.fee_type_cd feeTypeCd,t.computing_formula,t.computing_formula
+        computingFormula,t.additional_amount,t.additional_amount additionalAmount,t.status_cd,t.status_cd
+        statusCd,t.square_price,t.square_price squarePrice,t.is_default,t.is_default isDefault,t.config_id,t.config_id
+        configId,t.fee_flag,t.fee_flag feeFlag,t.fee_name,t.fee_name feeName,t.start_time,t.start_time
+        startTime,t.end_time,t.end_time endTime,t.community_id,t.community_id communityId,t.b_id,t.b_id bId,
+        td1.name feeTypeCdName,td2.name feeFlagName,t.bill_type billType,t.bill_type,td3.name billTypeName,
+        t.payment_cd,t.payment_cycle,t.payment_cd paymentCd,t.payment_cycle paymentCycle
+        from pay_fee_config t,t_dict td1,t_dict td2,t_dict td3
+        where 1 =1
+        and t.fee_type_cd = td1.status_cd
+        and td1.table_name = 'pay_fee_config'
+        and td1.table_columns = 'fee_type_cd'
+        and t.fee_flag = td2.status_cd
+        and td2.table_name = 'pay_fee_config'
+        and td2.table_columns = 'fee_flag'
+        and t.bill_type = td3.status_cd
+        and td3.table_name = 'pay_fee_config'
+        and td3.table_columns = 'bill_type'
+        <if test="feeTypeCd !=null and feeTypeCd != ''">
+            and t.fee_type_cd= #{feeTypeCd}
+        </if>
+        <if test="computingFormula !=null and computingFormula != ''">
+            and t.computing_formula= #{computingFormula}
+        </if>
+        <if test="additionalAmount !=null and additionalAmount != ''">
+            and t.additional_amount= #{additionalAmount}
+        </if>
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd= #{statusCd}
+        </if>
+        <if test="squarePrice !=null and squarePrice != ''">
+            and t.square_price= #{squarePrice}
+        </if>
+        <if test="isDefault !=null and isDefault != ''">
+            and t.is_default= #{isDefault}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test="feeFlag !=null and feeFlag != ''">
+            and t.fee_flag= #{feeFlag}
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name like '%${feeName}%'
+        </if>
+        <if test="startTime !=null ">
+            and t.start_time= #{startTime}
+        </if>
+        <if test="endTime !=null ">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="valid !=null and valid == 1">
+            and t.end_time &gt; now()
+        </if>
+        <if test="curTime !=null ">
+            and t.end_time &gt; #{curTime}
+            and t.start_time &lt; #{curTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+        <if test="paymentCd !=null and paymentCd != ''">
+            and t.payment_cd= #{paymentCd}
+        </if>
+        <if test="paymentCycle !=null and paymentCycle != ''">
+            and t.payment_cycle= #{paymentCycle}
+        </if>
+        <if test="billType !=null and billType != ''">
+            and t.bill_type= #{billType}
+        </if>
+        order by t.create_time desc
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
+    </select>
 
 </mapper>

+ 6 - 5
java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml

@@ -123,7 +123,7 @@
         t.community_id
         where 1=1
         <if test="statusCd !=null and statusCd != ''">
-            and  t.status_cd = #{statusCd}
+            and t.status_cd = #{statusCd}
         </if>
         <if test="carColor !=null and carColor != ''">
             and t.car_color= #{carColor}
@@ -162,7 +162,7 @@
             and t.owner_id= #{ownerId}
         </if>
         <if test="ownerName !=null and ownerName != ''">
-            and bow.name= #{ownerName}
+            and bow.name like '%${ownerName}%'
         </if>
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
@@ -251,10 +251,11 @@
         from owner_car t
         left join t_dict t1 on t.car_type=t1.status_cd and t1.table_name='owner_car' and t1.table_columns = 'car_type'
         left join t_dict t2 on t.state=t2.status_cd and t2.table_name='owner_car' and t2.table_columns = 'state'
-        left join building_owner bow on t.owner_id = bow.member_id and bow.status_cd = '0' and bow.community_id = t.community_id
+        left join building_owner bow on t.owner_id = bow.member_id and bow.status_cd = '0' and bow.community_id =
+        t.community_id
         where 1=1
         <if test="statusCd !=null and statusCd != ''">
-            and  t.status_cd = #{statusCd}
+            and t.status_cd = #{statusCd}
         </if>
         <if test="carColor !=null and carColor != ''">
             and t.car_color= #{carColor}
@@ -287,7 +288,7 @@
             and t.owner_id= #{ownerId}
         </if>
         <if test="ownerName !=null and ownerName != ''">
-            and bow.name= #{ownerName}
+            and bow.name like '%${ownerName}%'
         </if>
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}

+ 25 - 0
java110-interface/src/main/java/com/java110/intf/report/IReportFeeMonthStatisticsInnerServiceSMO.java

@@ -2,6 +2,7 @@ package com.java110.intf.report;
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.config.feign.FeignConfiguration;
+import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto;
 import com.java110.po.reportFeeMonthStatistics.ReportFeeMonthStatisticsPo;
 import org.springframework.cloud.openfeign.FeignClient;
@@ -115,6 +116,15 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
     @RequestMapping(value = "/queryFeeDetailCount", method = RequestMethod.POST)
     int queryFeeDetailCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
 
+    /**
+     * 查询费用汇总表总费用
+     *
+     * @param reportFeeMonthStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/queryAllFeeDetail", method = RequestMethod.POST)
+    List<ReportFeeMonthStatisticsDto> queryAllFeeDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
+
     /**
      * 查询费用汇总表
      *
@@ -123,6 +133,7 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
      */
     @RequestMapping(value = "/queryFeeDetail", method = RequestMethod.POST)
     List<ReportFeeMonthStatisticsDto> queryFeeDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
+
     /**
      * 查询费用汇总表个数
      *
@@ -158,6 +169,7 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
      */
     @RequestMapping(value = "/queryOweFeeDetail", method = RequestMethod.POST)
     List<ReportFeeMonthStatisticsDto> queryOweFeeDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
+
     /**
      * 查询费用汇总表个数
      *
@@ -175,6 +187,7 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
      */
     @RequestMapping(value = "/queryPayFeeDetail", method = RequestMethod.POST)
     List<ReportFeeMonthStatisticsDto> queryPayFeeDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
+
     /**
      * 查询费用汇总表个数
      *
@@ -210,6 +223,7 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
      */
     @RequestMapping(value = "/queryDeadlinePaymentCount", method = RequestMethod.POST)
     List<ReportFeeMonthStatisticsDto> queryDeadlinePaymentCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
+
     /**
      * 查询预付费户数
      *
@@ -218,6 +232,7 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
      */
     @RequestMapping(value = "/queryOwePaymentCount", method = RequestMethod.POST)
     List<ReportFeeMonthStatisticsDto> queryOwePaymentCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
+
     /**
      * 查询预付费户数
      *
@@ -227,4 +242,14 @@ public interface IReportFeeMonthStatisticsInnerServiceSMO {
     @RequestMapping(value = "/queryAllPaymentCount", method = RequestMethod.POST)
     List<ReportFeeMonthStatisticsDto> queryAllPaymentCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto);
 
+    /**
+     * <p>查询小区楼信息</p>
+     *
+     *
+     * @param feeConfigDto 数据对象分享
+     * @return FeeConfigDto 对象数据
+     */
+    @RequestMapping(value = "/queryFeeConfigs", method = RequestMethod.POST)
+    List<FeeConfigDto> queryFeeConfigs(@RequestBody FeeConfigDto feeConfigDto);
+
 }

+ 6 - 0
service-report/src/main/java/com/java110/report/api/ReportFeeMonthStatisticsApi.java

@@ -230,6 +230,8 @@ public class ReportFeeMonthStatisticsApi {
                                                  @RequestParam(value = "roomNum", required = false) String roomNum,
                                                  @RequestParam(value = "startTime", required = false) String startTime,
                                                  @RequestParam(value = "endTime", required = false) String endTime,
+                                                 @RequestParam(value = "feeName", required = false) String feeName,
+                                                 @RequestParam(value = "configId",required = false) String configId,
                                                  @RequestParam(value = "page") int page,
                                                  @RequestParam(value = "row") int row) {
         ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto = new ReportFeeMonthStatisticsDto();
@@ -242,6 +244,8 @@ public class ReportFeeMonthStatisticsApi {
         reportFeeMonthStatisticsDto.setUnitNum(unitNum);
         reportFeeMonthStatisticsDto.setRoomId(roomId);
         reportFeeMonthStatisticsDto.setRoomNum(roomNum);
+        reportFeeMonthStatisticsDto.setFeeName(feeName);
+        reportFeeMonthStatisticsDto.setConfigId(configId);
         reportFeeMonthStatisticsDto.setStartTime(StringUtil.isEmpty(startTime) ? null : startTime + "-01");
         reportFeeMonthStatisticsDto.setEndTime(StringUtil.isEmpty(endTime) ? null : endTime + "-01");
         return getReportFeeMonthStatisticsBMOImpl.queryFeeDetail(reportFeeMonthStatisticsDto);
@@ -281,6 +285,7 @@ public class ReportFeeMonthStatisticsApi {
         reportFeeMonthStatisticsDto.setEndTime(StringUtil.isEmpty(endTime) ? null : endTime + "-01");
         return getReportFeeMonthStatisticsBMOImpl.queryOweFeeDetail(reportFeeMonthStatisticsDto);
     }
+
     /**
      * 缴费明细表
      *
@@ -370,6 +375,7 @@ public class ReportFeeMonthStatisticsApi {
         reportFeeMonthStatisticsDto.setEndTime(DateUtil.getFormatTimeString(calendar.getTime(), DateUtil.DATE_FORMATE_STRING_A));
         return getReportFeeMonthStatisticsBMOImpl.queryPrePaymentCount(reportFeeMonthStatisticsDto);
     }
+
     /**
      * 查询到期提醒
      *

+ 37 - 1
service-report/src/main/java/com/java110/report/bmo/reportFeeMonthStatistics/impl/GetReportFeeMonthStatisticsBMOImpl.java

@@ -1,6 +1,7 @@
 package com.java110.report.bmo.reportFeeMonthStatistics.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto;
 import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO;
@@ -111,13 +112,48 @@ public class GetReportFeeMonthStatisticsBMOImpl implements IGetReportFeeMonthSta
         int count = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeDetailCount(reportFeeMonthStatisticsDto);
 
         List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null;
+        //应收总金额(大计)
+        Double allReceivableAmount = 0.0;
+        //实收金额(大计)
+        Double allReceivedAmount = 0.0;
         if (count > 0) {
             reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeDetail(reportFeeMonthStatisticsDto);
+            List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsList = reportFeeMonthStatisticsInnerServiceSMOImpl.queryAllFeeDetail(reportFeeMonthStatisticsDto);
+            allReceivableAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivableAmount());
+            allReceivedAmount = Double.valueOf(reportFeeMonthStatisticsList.get(0).getAllReceivedAmount());
         } else {
             reportFeeMonthStatisticsDtos = new ArrayList<>();
         }
 
-        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos);
+        //应收总金额(小计)
+        Double totalReceivableAmount = 0.0;
+        //实收总金额(小计)
+        Double totalReceivedAmount = 0.0;
+        List<ReportFeeMonthStatisticsDto> reportList = new ArrayList<>();
+        for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
+            //应收金额
+            Double receivableAmount = Double.valueOf(reportFeeMonthStatistics.getReceivableAmount());
+            //实收金额
+            Double receivedAmount = Double.valueOf(reportFeeMonthStatistics.getReceivedAmount());
+            totalReceivableAmount = totalReceivableAmount + receivableAmount;
+            totalReceivedAmount = totalReceivedAmount + receivedAmount;
+        }
+
+        //查询该小区下的费用项目
+        FeeConfigDto feeConfigDto = new FeeConfigDto();
+        feeConfigDto.setCommunityId(reportFeeMonthStatisticsDto.getCommunityId());
+        List<FeeConfigDto> feeConfigDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+
+        for (ReportFeeMonthStatisticsDto reportFeeMonthStatistics : reportFeeMonthStatisticsDtos) {
+            reportFeeMonthStatistics.setTotalReceivableAmount(String.format("%.2f", totalReceivableAmount));
+            reportFeeMonthStatistics.setTotalReceivedAmount(String.format("%.2f", totalReceivedAmount));
+            reportFeeMonthStatistics.setAllReceivableAmount(String.format("%.2f", allReceivableAmount));
+            reportFeeMonthStatistics.setAllReceivedAmount(String.format("%.2f", allReceivedAmount));
+            reportFeeMonthStatistics.setFeeConfigDtos(feeConfigDtos);
+            reportList.add(reportFeeMonthStatistics);
+        }
+
+        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportList);
 
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
 

+ 24 - 0
service-report/src/main/java/com/java110/report/dao/IReportFeeMonthStatisticsServiceDao.java

@@ -147,8 +147,11 @@ public interface IReportFeeMonthStatisticsServiceDao {
      * @return 费用月统计数量
      */
     int queryOweFeeDetailCount(Map info);
+
     Map queryPayFeeDetailCount(Map info);
+
     int queryDeadlineFeeCount(Map info);
+
     /**
      * 查询费用月统计信息(instance过程)
      * 根据bId 查询费用月统计信息
@@ -178,7 +181,9 @@ public interface IReportFeeMonthStatisticsServiceDao {
      * @throws DAOException DAO异常
      */
     List<Map> queryOweFeeDetail(Map info) throws DAOException;
+
     List<Map> queryPayFeeDetail(Map info) throws DAOException;
+
     List<Map> queryDeadlineFee(Map info) throws DAOException;
 
     /**
@@ -190,7 +195,9 @@ public interface IReportFeeMonthStatisticsServiceDao {
      * @throws DAOException DAO异常
      */
     List<Map> queryPrePaymentCount(Map info) throws DAOException;
+
     List<Map> queryDeadlinePaymentCount(Map info) throws DAOException;
+
     /**
      * 查询预交费
      * 根据bId 查询费用月统计信息
@@ -214,4 +221,21 @@ public interface IReportFeeMonthStatisticsServiceDao {
 
 
     List<Map> queryAllPaymentCount(Map beanCovertMap);
+
+    /**
+     * 查询费用汇总表总金额
+     *
+     * @param beanCovertMap
+     * @return
+     */
+    List<Map> queryAllFeeDetail(Map beanCovertMap);
+
+    /**
+     * 查询费用配置信息(instance过程)
+     * 根据bId 查询费用配置信息
+     * @param info bId 信息
+     * @return 费用配置信息
+     * @throws DAOException DAO异常
+     */
+    List<Map> getFeeConfigInfo(Map info) throws DAOException;
 }

+ 23 - 1
service-report/src/main/java/com/java110/report/dao/impl/ReportFeeMonthStatisticsServiceDaoImpl.java

@@ -319,7 +319,29 @@ public class ReportFeeMonthStatisticsServiceDaoImpl extends BaseServiceDao imple
 
         List<Map> businessReportFeeMonthStatisticsInfos = sqlSessionTemplate.selectList("reportFeeMonthStatisticsServiceDaoImpl.queryAllPaymentCount", info);
 
-        return businessReportFeeMonthStatisticsInfos;    }
+        return businessReportFeeMonthStatisticsInfos;
+    }
+
+    @Override
+    public List<Map> queryAllFeeDetail(Map info) {
+        List<Map> businessReportFeeMonthStatisticsInfos = sqlSessionTemplate.selectList("reportFeeMonthStatisticsServiceDaoImpl.queryAllFeeDetail", info);
+        return businessReportFeeMonthStatisticsInfos;
+    }
+
+    /**
+     * 查询费用配置信息(instance)
+     *
+     * @param info bId 信息
+     * @return List<Map>
+     * @throws DAOException DAO异常
+     */
+    @Override
+    public List<Map> getFeeConfigInfo(Map info) throws DAOException {
+        logger.debug("查询费用配置信息 入参 info : {}", info);
 
+        List<Map> businessFeeConfigInfos = sqlSessionTemplate.selectList("reportFeeMonthStatisticsServiceDaoImpl.getFeeConfigInfo", info);
+
+        return businessFeeConfigInfos;
+    }
 
 }

+ 14 - 1
service-report/src/main/java/com/java110/report/smo/impl/ReportFeeMonthStatisticsInnerServiceSMOImpl.java

@@ -4,6 +4,7 @@ package com.java110.report.smo.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.dto.PageDto;
+import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto;
 import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO;
 import com.java110.po.reportFeeMonthStatistics.ReportFeeMonthStatisticsPo;
@@ -140,6 +141,12 @@ public class ReportFeeMonthStatisticsInnerServiceSMOImpl extends BaseServiceSMO
         return reportFeeMonthStatisticsServiceDaoImpl.queryFeeDetailCount(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsDto));
     }
 
+    @Override
+    public List<ReportFeeMonthStatisticsDto> queryAllFeeDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+        List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticss = BeanConvertUtil.covertBeanList(reportFeeMonthStatisticsServiceDaoImpl.queryAllFeeDetail(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsDto)), ReportFeeMonthStatisticsDto.class);
+        return reportFeeMonthStatisticss;
+    }
+
     @Override
     public List<ReportFeeMonthStatisticsDto> queryFeeDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
         //校验是否传了 分页信息
@@ -268,12 +275,18 @@ public class ReportFeeMonthStatisticsInnerServiceSMOImpl extends BaseServiceSMO
     }
 
     @Override
-    public List<ReportFeeMonthStatisticsDto> queryAllPaymentCount(@RequestBody  ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
+    public List<ReportFeeMonthStatisticsDto> queryAllPaymentCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) {
         List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticss = BeanConvertUtil.covertBeanList(reportFeeMonthStatisticsServiceDaoImpl.queryAllPaymentCount(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsDto)), ReportFeeMonthStatisticsDto.class);
 
         return reportFeeMonthStatisticss;
     }
 
+    @Override
+    public List<FeeConfigDto> queryFeeConfigs(FeeConfigDto feeConfigDto) {
+        List<FeeConfigDto> feeConfigs = BeanConvertUtil.covertBeanList(reportFeeMonthStatisticsServiceDaoImpl.getFeeConfigInfo(BeanConvertUtil.beanCovertMap(feeConfigDto)), FeeConfigDto.class);
+        return feeConfigs;
+    }
+
 
     public IReportFeeMonthStatisticsServiceDao getReportFeeMonthStatisticsServiceDaoImpl() {
         return reportFeeMonthStatisticsServiceDaoImpl;