java110
2023-06-29 b173d31976fc4731b7c247d4038de92134eba317
java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml
@@ -337,7 +337,7 @@
        and pf.payer_obj_type = '3333'
        and t.community_id= #{communityId}
        and t.cur_month_time < #{endDate}
        and (t.receivable_amount - t.received_amount - t.discount_amount) > 0
        and t.detail_id = '-1'
        group by a.room_id
        ) a
    </select>
@@ -735,15 +735,15 @@
        ) oweFee,
        (
        select ifnull(sum(t.received_amount),0.0) receivedFee
        from pay_fee_detail_month t
        from pay_fee_detail t
        INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
        inner join pay_fee_config pfc1 on pfc1.config_id = t.config_id and pfc1.status_cd = '0'
        where t.obj_id = a.obj_id
        inner join pay_fee_config pfc1 on pfc1.config_id = pf.config_id and pfc1.status_cd = '0'
        where pf.payer_obj_id = a.obj_id
        and t.status_cd = '0'
        and t.community_id= a.community_id
        and pfc1.fee_type_cd = pfc.fee_type_cd
        and t.pay_fee_time &gt; #{startDate}
        and t.pay_fee_time &lt; #{endDate}
        and t.create_time &gt; #{startDate}
        and t.create_time &lt; #{endDate}
        ) receivedFee
        from pay_fee_detail_month a
        inner join pay_fee_config pfc on a.config_id = pfc.config_id and pfc.status_cd = '0'
@@ -1009,18 +1009,16 @@
        where b.floor_id = a.floor_id
        ) oweRoomCount,
        (
        select ifnull(sum(t.received_amount),0.0) oweFee
        from pay_fee_detail_month t
        INNER JOIN pay_fee pf1 on t.fee_id = pf1.fee_id and pf1.payer_obj_type='3333' and pf1.status_cd = '0'
        select ifnull(sum(t.amount_owed),0.0) oweFee
        from report_owe_fee t
        left join pay_fee pf1 on t.fee_id = pf1.fee_id and pf1.status_cd = '0'
        LEFT JOIN building_room br on pf1.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 bu.floor_id = a.floor_id
        and t.status_cd = '0'
        and t.community_id = #{communityId}
        and t.detail_id = '-1'
        and t.cur_month_time &lt; #{endDate}
        and t.amount_owed > 0
        and pf1.fee_type_cd = td.status_cd
        ) oweFee
        from f_floor a
@@ -1033,7 +1031,8 @@
    <!-- 对象欠费 -->
    <select id="getObjOweFee" parameterType="Map" resultType="Map">
        select t.payer_obj_id payerObjId, pf.fee_type_cd feeTypeCd,t.fee_name feeName,t.end_time endTime,t.deadline_time deadlineTime,t.amount_owed amountOwed
        select t.payer_obj_id payerObjId, pf.fee_type_cd feeTypeCd,t.fee_name feeName,
        DATE_FORMAT(t.end_time,'%Y-%m-%d') endTime,DATE_FORMAT(t.deadline_time,'%Y-%m-%d') deadlineTime,t.amount_owed amountOwed
        from report_owe_fee t
        left join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
        where t.amount_owed > 0
@@ -1044,4 +1043,91 @@
            #{item}
        </foreach>
    </select>
    <!-- 对象实收 -->
    <select id="getObjReceivedFee" parameterType="Map" resultType="Map">
        select pf.payer_obj_id payerObjId, pf.fee_type_cd feeTypeCd,pfc.fee_name feeName,
        DATE_FORMAT(t.start_time,'%Y-%m-%d') startTime,DATE_FORMAT(t.end_time,'%Y-%m-%d') endTime,t.received_amount receivedAmount
        from pay_fee_detail t
        left join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
        left join pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.status_cd = '0'
        where 1=1
        and pf.payer_obj_type = '3333'
        and t.community_id = #{communityId}
        and t.create_time &gt; #{startDate}
        and t.create_time &lt; #{endDate}
        and pf.payer_obj_id in
        <foreach collection="objIds" item="item" index="index" open="(" close=")" separator=",">
            #{item}
        </foreach>
    </select>
    <!-- 已收房屋数 -->
    <select id="getReceivedRoomCount" parameterType="Map" resultType="Map">
        select count(DISTINCT pf.payer_obj_id) count from pay_fee_detail t
        inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333'
        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
        bu.floor_id = #{floorId}
        and t.community_id = #{communityId}
        and t.create_time &gt; #{startDate}
        and t.create_time &lt; #{endDate}
        <if test="feeTypeCd != null and feeTypeCd != ''">
            and pf.fee_type_cd = #{feeTypeCd}
        </if>
    </select>
    <!-- 已收房屋金额 -->
    <select id="getReceivedRoomAmount" parameterType="Map" resultType="Map">
        select ifnull(sum(t.received_amount),0) amount from pay_fee_detail t
        inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333'
        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
        bu.floor_id = #{floorId}
        and t.community_id = #{communityId}
        and t.create_time &gt; #{startDate}
        and t.create_time &lt; #{endDate}
        <if test="feeTypeCd != null and feeTypeCd != ''">
            and pf.fee_type_cd = #{feeTypeCd}
        </if>
    </select>
    <!-- 欠费清缴户 -->
    <select id="getHisOweReceivedRoomCount" parameterType="Map" resultType="Map">
        select count(DISTINCT t.obj_id) count
        from pay_fee_detail_month t
        inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333'
        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 bu.floor_id = #{floorId}
        and t.community_id =  #{communityId}
        and t.pay_fee_time &gt; #{startDate}
        and t.pay_fee_time &lt;  #{endDate}
        and t.cur_month_time &lt; #{hisDate}
        <if test="feeTypeCd != null and feeTypeCd != ''">
            and pf.fee_type_cd = #{feeTypeCd}
        </if>
        and t.detail_id != '-1'
        and t.status_cd = '0'
    </select>
    <!-- 欠费清缴金额 -->
    <select id="getHisOweReceivedRoomAmount" parameterType="Map" resultType="Map">
        select ifnull(sum(t.received_amount),0) amount
        from pay_fee_detail_month t
        inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333'
        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 bu.floor_id = #{floorId}
        and t.community_id =  #{communityId}
        and t.pay_fee_time &gt; #{startDate}
        and t.pay_fee_time &lt;  #{endDate}
        and t.cur_month_time &lt; #{hisDate}
        <if test="feeTypeCd != null and feeTypeCd != ''">
            and pf.fee_type_cd = #{feeTypeCd}
        </if>
        and t.detail_id != '-1'
        and t.status_cd = '0'
    </select>
</mapper>