From 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 19 七月 2022 21:49:55 +0800
Subject: [PATCH] 优化添加设备 功能

---
 java110-db/src/main/resources/mapper/report/ReportOweFeeServiceDaoImplMapper.xml |  841 ++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 660 insertions(+), 181 deletions(-)

diff --git a/java110-db/src/main/resources/mapper/report/ReportOweFeeServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/report/ReportOweFeeServiceDaoImplMapper.xml
index 7559d91..151e860 100644
--- a/java110-db/src/main/resources/mapper/report/ReportOweFeeServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/report/ReportOweFeeServiceDaoImplMapper.xml
@@ -1,205 +1,684 @@
 <?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="reportOweFeeServiceDaoImpl">
-
-
-
-
 
     <!-- 淇濆瓨娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
     <insert id="saveReportOweFeeInfo" parameterType="Map">
         insert into report_owe_fee(
-config_name,deadline_time,owner_tel,update_time,owe_id,owner_id,fee_id,amount_owed,payer_obj_name,owner_name,config_id,fee_name,end_time,community_id,payer_obj_type,payer_obj_id
-) values (
-#{configName},#{deadlineTime},#{ownerTel},#{updateTime},#{oweId},#{ownerId},#{feeId},#{amountOwed},#{payerObjName},#{ownerName},#{configId},#{feeName},#{endTime},#{communityId},#{payerObjType},#{payerObjId}
-)
+        config_name,deadline_time,owner_tel,update_time,owe_id,owner_id,fee_id,amount_owed,payer_obj_name,owner_name,config_id,fee_name,end_time,community_id,payer_obj_type,payer_obj_id
+        ) values (
+        #{configName},#{deadlineTime},#{ownerTel},#{updateTime},#{oweId},#{ownerId},#{feeId},#{amountOwed},#{payerObjName},#{ownerName},#{configId},#{feeName},#{endTime},#{communityId},#{payerObjType},#{payerObjId}
+        )
     </insert>
-
 
 
     <!-- 鏌ヨ娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
     <select id="getReportOweFeeInfo" parameterType="Map" resultType="Map">
-        select  t.config_name,t.config_name configName,t.deadline_time,t.deadline_time deadlineTime,t.owner_tel,t.owner_tel ownerTel,t.update_time,t.update_time updateTime,t.status_cd,t.status_cd statusCd,t.owe_id,t.owe_id oweId,t.owner_id,t.owner_id ownerId,t.fee_id,t.fee_id feeId,t.amount_owed,t.amount_owed amountOwed,t.payer_obj_name,t.payer_obj_name payerObjName,t.owner_name,t.owner_name ownerName,t.config_id,t.config_id configId,t.fee_name,t.fee_name feeName,t.end_time,t.end_time endTime,t.community_id,t.community_id communityId,t.payer_obj_type,t.payer_obj_type payerObjType,t.payer_obj_id,t.payer_obj_id payerObjId 
-from report_owe_fee t 
-where 1 =1 
-<if test="configName !=null and configName != ''">
-   and t.config_name= #{configName}
-</if> 
-<if test="deadlineTime !=null and deadlineTime != ''">
-   and t.deadline_time= #{deadlineTime}
-</if> 
-<if test="ownerTel !=null and ownerTel != ''">
-   and t.owner_tel= #{ownerTel}
-</if> 
-<if test="updateTime !=null and updateTime != ''">
-   and t.update_time= #{updateTime}
-</if> 
-<if test="statusCd !=null and statusCd != ''">
-   and t.status_cd= #{statusCd}
-</if> 
-<if test="oweId !=null and oweId != ''">
-   and t.owe_id= #{oweId}
-</if> 
-<if test="ownerId !=null and ownerId != ''">
-   and t.owner_id= #{ownerId}
-</if> 
-<if test="feeId !=null and feeId != ''">
-   and t.fee_id= #{feeId}
-</if> 
-<if test="amountOwed !=null and amountOwed != ''">
-   and t.amount_owed= #{amountOwed}
-</if> 
-<if test="payerObjName !=null and payerObjName != ''">
-   and t.payer_obj_name= #{payerObjName}
-</if> 
-<if test="ownerName !=null and ownerName != ''">
-   and t.owner_name= #{ownerName}
-</if> 
-<if test="configId !=null and configId != ''">
-   and t.config_id= #{configId}
-</if> 
-<if test="feeName !=null and feeName != ''">
-   and t.fee_name= #{feeName}
-</if> 
-<if test="endTime !=null and endTime != ''">
-   and t.end_time= #{endTime}
-</if> 
-<if test="communityId !=null and communityId != ''">
-   and t.community_id= #{communityId}
-</if> 
-<if test="payerObjType !=null and payerObjType != ''">
-   and t.payer_obj_type= #{payerObjType}
-</if> 
-<if test="payerObjId !=null and payerObjId != ''">
-   and t.payer_obj_id= #{payerObjId}
-</if> 
-order by t.create_time desc
-<if test="page != -1 and page != null ">
-   limit #{page}, #{row}
-</if> 
-
+        select distinct(t.payer_obj_id) payerObjId
+        from report_owe_fee t
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        LEFT JOIN building_room br on pf.payer_obj_id = br.room_id and br.status_cd = '0'
+        LEFT JOIN building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="roomSubType !=null and roomSubType != ''">
+            and br.room_sub_type = #{roomSubType}
+        </if>
+        <if test="roomNum !=null and roomNum != ''">
+            and br.room_num = #{roomNum}
+        </if>
+        <if test="floorId !=null and floorId != ''">
+            and bu.floor_id = #{floorId}
+        </if>
+        <if test="unitId !=null and unitId != ''">
+            and bu.unit_id = #{unitId}
+        </if>
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and t.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and t.owner_name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+        order by t.payer_obj_name
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
     </select>
-
-
 
 
     <!-- 淇敼娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
     <update id="updateReportOweFeeInfo" parameterType="Map">
-        update  report_owe_fee t set t.status_cd = #{statusCd}
-<if test="newBId != null and newBId != ''">
-,t.b_id = #{newBId}
-</if> 
-<if test="configName !=null and configName != ''">
-, t.config_name= #{configName}
-</if> 
-<if test="deadlineTime !=null and deadlineTime != ''">
-, t.deadline_time= #{deadlineTime}
-</if> 
-<if test="ownerTel !=null and ownerTel != ''">
-, t.owner_tel= #{ownerTel}
-</if> 
-<if test="updateTime !=null and updateTime != ''">
-, t.update_time= #{updateTime}
-</if> 
-<if test="ownerId !=null and ownerId != ''">
-, t.owner_id= #{ownerId}
-</if> 
-<if test="feeId !=null and feeId != ''">
-, t.fee_id= #{feeId}
-</if> 
-<if test="amountOwed !=null and amountOwed != ''">
-, t.amount_owed= #{amountOwed}
-</if> 
-<if test="payerObjName !=null and payerObjName != ''">
-, t.payer_obj_name= #{payerObjName}
-</if> 
-<if test="ownerName !=null and ownerName != ''">
-, t.owner_name= #{ownerName}
-</if> 
-<if test="configId !=null and configId != ''">
-, t.config_id= #{configId}
-</if> 
-<if test="feeName !=null and feeName != ''">
-, t.fee_name= #{feeName}
-</if> 
-<if test="endTime !=null and endTime != ''">
-, t.end_time= #{endTime}
-</if> 
-<if test="communityId !=null and communityId != ''">
-, t.community_id= #{communityId}
-</if> 
-<if test="payerObjType !=null and payerObjType != ''">
-, t.payer_obj_type= #{payerObjType}
-</if> 
-<if test="payerObjId !=null and payerObjId != ''">
-, t.payer_obj_id= #{payerObjId}
-</if> 
- where 1=1 <if test="oweId !=null and oweId != ''">
-and t.owe_id= #{oweId}
-</if> 
-
+        update report_owe_fee t
+        <set>
+            <if test="configName !=null and configName != ''">
+                t.config_name= #{configName},
+            </if>
+            <if test="deadlineTime !=null and deadlineTime != ''">
+                t.deadline_time= #{deadlineTime},
+            </if>
+            <if test="ownerTel !=null and ownerTel != ''">
+                t.owner_tel= #{ownerTel},
+            </if>
+            <if test="updateTime !=null and updateTime != ''">
+                t.update_time= #{updateTime},
+            </if>
+            <if test="ownerId !=null and ownerId != ''">
+                t.owner_id= #{ownerId},
+            </if>
+            <if test="feeId !=null and feeId != ''">
+                t.fee_id= #{feeId},
+            </if>
+            <if test="amountOwed !=null and amountOwed != ''">
+                t.amount_owed= #{amountOwed},
+            </if>
+            <if test="payerObjName !=null and payerObjName != ''">
+                t.payer_obj_name= #{payerObjName},
+            </if>
+            <if test="ownerName !=null and ownerName != ''">
+                t.owner_name= #{ownerName},
+            </if>
+            <if test="configId !=null and configId != ''">
+                t.config_id= #{configId},
+            </if>
+            <if test="feeName !=null and feeName != ''">
+                t.fee_name= #{feeName},
+            </if>
+            <if test="endTime !=null and endTime != ''">
+                t.end_time= #{endTime},
+            </if>
+            <if test="communityId !=null and communityId != ''">
+                t.community_id= #{communityId},
+            </if>
+            <if test="payerObjType !=null and payerObjType != ''">
+                t.payer_obj_type= #{payerObjType},
+            </if>
+            <if test="payerObjId !=null and payerObjId != ''">
+                t.payer_obj_id= #{payerObjId}
+            </if>
+        </set>
+        where 1=1
+        and t.owe_id= #{oweId}
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
     </update>
 
+
+    <!-- 淇敼娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
+    <update id="deleteReportOweFeeInfo" parameterType="Map">
+        delete from report_owe_fee
+        where 1=1
+        <if test="oweId !=null and oweId != ''">
+            and owe_id= #{oweId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and fee_id = #{feeId}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and community_id= #{communityId}
+        </if>
+    </update>
+
+
     <!-- 鏌ヨ娆犺垂缁熻鏁伴噺 add by wuxw 2018-07-03 -->
-     <select id="queryReportOweFeesCount" parameterType="Map" resultType="Map">
-        select  count(1) count 
-from report_owe_fee t 
-where 1 =1 
-<if test="configName !=null and configName != ''">
-   and t.config_name= #{configName}
-</if> 
-<if test="deadlineTime !=null and deadlineTime != ''">
-   and t.deadline_time= #{deadlineTime}
-</if> 
-<if test="ownerTel !=null and ownerTel != ''">
-   and t.owner_tel= #{ownerTel}
-</if> 
-<if test="updateTime !=null and updateTime != ''">
-   and t.update_time= #{updateTime}
-</if> 
-<if test="statusCd !=null and statusCd != ''">
-   and t.status_cd= #{statusCd}
-</if> 
-<if test="oweId !=null and oweId != ''">
-   and t.owe_id= #{oweId}
-</if> 
-<if test="ownerId !=null and ownerId != ''">
-   and t.owner_id= #{ownerId}
-</if> 
-<if test="feeId !=null and feeId != ''">
-   and t.fee_id= #{feeId}
-</if> 
-<if test="amountOwed !=null and amountOwed != ''">
-   and t.amount_owed= #{amountOwed}
-</if> 
-<if test="payerObjName !=null and payerObjName != ''">
-   and t.payer_obj_name= #{payerObjName}
-</if> 
-<if test="ownerName !=null and ownerName != ''">
-   and t.owner_name= #{ownerName}
-</if> 
-<if test="configId !=null and configId != ''">
-   and t.config_id= #{configId}
-</if> 
-<if test="feeName !=null and feeName != ''">
-   and t.fee_name= #{feeName}
-</if> 
-<if test="endTime !=null and endTime != ''">
-   and t.end_time= #{endTime}
-</if> 
-<if test="communityId !=null and communityId != ''">
-   and t.community_id= #{communityId}
-</if> 
-<if test="payerObjType !=null and payerObjType != ''">
-   and t.payer_obj_type= #{payerObjType}
-</if> 
-<if test="payerObjId !=null and payerObjId != ''">
-   and t.payer_obj_id= #{payerObjId}
-</if> 
+    <select id="queryReportOweFeesCount" parameterType="Map" resultType="Map">
+        select count(distinct(t.payer_obj_id)) count
+        from report_owe_fee t
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        LEFT JOIN building_room br on pf.payer_obj_id = br.room_id and br.status_cd = '0'
+        LEFT JOIN building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="roomSubType !=null and roomSubType != ''">
+            and br.room_sub_type = #{roomSubType}
+        </if>
+        <if test="roomNum !=null and roomNum != ''">
+            and br.room_num = #{roomNum}
+        </if>
+        <if test="floorId !=null and floorId != ''">
+            and bu.floor_id = #{floorId}
+        </if>
+        <if test="unitId !=null and unitId != ''">
+            and bu.unit_id = #{unitId}
+        </if>
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and t.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and t.owner_name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+    </select>
+
+    <!-- 鏌ヨ娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
+    <select id="queryReportAllOweFees" parameterType="Map" resultType="Map">
+        select t.config_name,t.config_name configName,t.deadline_time,t.deadline_time
+        deadlineTime,t.owner_tel,t.owner_tel ownerTel,t.update_time,t.update_time updateTime,t.owe_id,t.owe_id
+        oweId,t.fee_id,t.fee_id feeId,t.amount_owed,t.amount_owed amountOwed,t.payer_obj_name,t.payer_obj_name
+        payerObjName,t.config_id,t.config_id configId,t.fee_name,t.fee_name
+        feeName,t.end_time,t.end_time endTime,t.community_id,t.community_id
+        communityId,t.payer_obj_type,t.payer_obj_type payerObjType,t.payer_obj_id,t.payer_obj_id payerObjId,
+        t.owner_id,t.owner_id ownerId,t.owner_name,t.owner_name ownerName
+        from report_owe_fee t
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and t.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and t.owner_name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+        <if test="payerObjIds !=null">
+            and t.payer_obj_id in
+            <foreach collection="payerObjIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        order by t.payer_obj_name
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
+    </select>
+
+    <!-- 鏌ヨ娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
+    <select id="queryReportAllOweFeesByRoom" parameterType="Map" resultType="Map">
+        select t.config_name,t.config_name configName,t.deadline_time,t.deadline_time
+        deadlineTime,t.owner_tel,t.owner_tel ownerTel,t.update_time,t.update_time updateTime,t.owe_id,t.owe_id
+        oweId,t.fee_id,t.fee_id feeId,t.amount_owed,t.amount_owed amountOwed,t.payer_obj_name,t.payer_obj_name
+        payerObjName,t.config_id,t.config_id configId,t.fee_name,t.fee_name
+        feeName,t.end_time,t.end_time endTime,t.community_id,t.community_id
+        communityId,t.payer_obj_type,t.payer_obj_type payerObjType,t.payer_obj_id,t.payer_obj_id payerObjId,
+        bo.owner_id ownerId,bo.name ownerName,bo.link ownerTel
+        from report_owe_fee t
+        left join building_owner_room_rel borr on borr.room_id = t.payer_obj_id and borr.status_cd = '0'
+        left join building_owner bo on borr.owner_id = bo.owner_id and bo.owner_type_cd = '1001' and bo.status_cd = '0'
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and bo.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and bo.name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+        <if test="payerObjIds !=null">
+            and t.payer_obj_id in
+            <foreach collection="payerObjIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        order by t.create_time desc
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
+    </select>
+
+    <!-- 鏌ヨ娆犺垂缁熻淇℃伅 add by wuxw 2018-07-03 -->
+    <select id="queryReportAllOweFeesByCar" parameterType="Map" resultType="Map">
+        select t.config_name,t.config_name configName,t.deadline_time,t.deadline_time
+        deadlineTime,t.owner_tel,t.owner_tel ownerTel,t.update_time,t.update_time updateTime,t.owe_id,t.owe_id
+        oweId,t.fee_id,t.fee_id feeId,t.amount_owed,t.amount_owed amountOwed,t.payer_obj_name,t.payer_obj_name
+        payerObjName,t.config_id,t.config_id configId,t.fee_name,t.fee_name
+        feeName,t.end_time,t.end_time endTime,t.community_id,t.community_id
+        communityId,t.payer_obj_type,t.payer_obj_type payerObjType,t.payer_obj_id,t.payer_obj_id payerObjId,
+        bo.owner_id ownerId,bo.name ownerName,bo.link ownerTel
+        from report_owe_fee t
+        left join owner_car oc on oc.car_id = t.payer_obj_id and oc.status_cd = '0'
+        left join building_owner bo on oc.owner_id = bo.owner_id and bo.owner_type_cd = '1001' and bo.status_cd = '0'
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and bo.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and bo.name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+        <if test="payerObjIds !=null">
+            and t.payer_obj_id in
+            <foreach collection="payerObjIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        order by t.create_time desc
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
+    </select>
 
 
-     </select>
+    <select id="computeReportOweFeeTotalAmount" parameterType="Map" resultType="Map">
+        select sum(t.amount_owed) total
+        from report_owe_fee t
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        LEFT JOIN building_room br on pf.payer_obj_id = br.room_id and br.status_cd = '0'
+        LEFT JOIN building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="roomSubType !=null and roomSubType != ''">
+            and br.room_sub_type = #{roomSubType}
+        </if>
+        <if test="roomNum !=null and roomNum != ''">
+            and br.room_num = #{roomNum}
+        </if>
+        <if test="floorId !=null and floorId != ''">
+            and bu.floor_id = #{floorId}
+        </if>
+        <if test="unitId !=null and unitId != ''">
+            and bu.unit_id = #{unitId}
+        </if>
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and t.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and t.owner_name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+    </select>
+    <select id="computeReportOweFeeItemAmount" parameterType="Map" resultType="Map">
+        select t.config_name configName,sum(t.amount_owed) totalOweAmount
+        from report_owe_fee t
+        LEFT JOIN pay_fee pf on t.fee_id = pf.fee_id
+        LEFT JOIN building_room br on pf.payer_obj_id = br.room_id and br.status_cd = '0'
+        LEFT JOIN building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+        where 1 =1
+        and pf.status_cd = '0'
+        <if test="roomSubType !=null and roomSubType != ''">
+            and br.room_sub_type = #{roomSubType}
+        </if>
+        <if test="roomNum !=null and roomNum != ''">
+            and br.room_num = #{roomNum}
+        </if>
+        <if test="floorId !=null and floorId != ''">
+            and bu.floor_id = #{floorId}
+        </if>
+        <if test="unitId !=null and unitId != ''">
+            and bu.unit_id = #{unitId}
+        </if>
+        <if test="configName !=null and configName != ''">
+            and t.config_name= #{configName}
+        </if>
+        <if test="deadlineTime !=null and deadlineTime != ''">
+            and t.deadline_time= #{deadlineTime}
+        </if>
+        <if test="ownerTel !=null and ownerTel != ''">
+            and t.owner_tel= #{ownerTel}
+        </if>
+        <if test="updateTime !=null and updateTime != ''">
+            and t.update_time= #{updateTime}
+        </if>
+        <if test="oweId !=null and oweId != ''">
+            and t.owe_id= #{oweId}
+        </if>
+        <if test="ownerId !=null and ownerId != ''">
+            and t.owner_id= #{ownerId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id= #{feeId}
+        </if>
+        <if test="amountOwed !=null and amountOwed != ''">
+            and t.amount_owed= #{amountOwed}
+        </if>
+        <if test='hasOweFee !=null and hasOweFee == "Y"'>
+            and t.amount_owed &gt; 0
+        </if>
+        <if test="payerObjName !=null and payerObjName != ''">
+            and t.payer_obj_name= #{payerObjName}
+        </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and t.owner_name= #{ownerName}
+        </if>
+        <if test="configId !=null and configId != ''">
+            and t.config_id= #{configId}
+        </if>
+        <if test="configIds !=null">
+            and t.config_id in
+            <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="feeName !=null and feeName != ''">
+            and t.fee_name= #{feeName}
+        </if>
+        <if test="endTime !=null and endTime != ''">
+            and t.end_time= #{endTime}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
+        <if test="payerObjType !=null and payerObjType != ''">
+            and t.payer_obj_type= #{payerObjType}
+        </if>
+        <if test="payerObjId !=null and payerObjId != ''">
+            and t.payer_obj_id= #{payerObjId}
+        </if>
+        GROUP BY t.config_id,t.config_name
+    </select>
+
+
+    <!-- 鏌ヨ鏃犳晥璐圭敤 add by wuxw 2018-07-03 -->
+    <select id="queryInvalidOweFee" parameterType="Map" resultType="Map">
+        select t.fee_id feeId from pay_fee t
+        inner join pay_fee_config pfc on t.config_id = pfc.config_id
+        inner join report_owe_fee rof on t.fee_id = rof.fee_id
+        where (t.status_cd = '1' or pfc.status_cd = '1')
+        and t.community_id= #{communityId}
+    </select>
+
+
+    <update id="deleteInvalidFee" parameterType="Map">
+        delete from report_owe_fee where fee_id in
+        <foreach collection="feeIds" item="item" open="(" close=")" separator=",">
+            #{item}
+        </foreach>
+        and community_id = #{communityId}
+    </update>
 
 </mapper>

--
Gitblit v1.8.0