| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="reportFeeStatisticsServiceDaoImpl">
- <!-- 查询历史欠费 -->
- <select id="getHisMonthOweFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.receivable_amount),0.0) hisOweFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.detail_id = '-1'
- and t.community_id= #{communityId}
- and t.cur_month_time < #{startDate}
- </select>
- <!-- 查询单月欠费 -->
- <select id="getCurMonthOweFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.receivable_amount),0.0) curOweFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.detail_id = '-1'
- and t.community_id= #{communityId}
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- </select>
- <select id="getOweFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.receivable_amount),0.0) oweFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.detail_id = '-1'
- and t.community_id= #{communityId}
- and t.cur_month_time < #{endDate}
- </select>
- <!-- 查询当月应收 -->
- <select id="getCurReceivableFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.receivable_amount),0.0) curReceivableFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- </select>
- <!-- 查询欠费追回 -->
- <select id="getHisReceivedFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.received_amount),0.0) hisReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.pay_fee_time > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time < #{startDate}
- </select>
- <!-- 查询 预交费用 -->
- <select id="getPreReceivedFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.received_amount),0.0) preReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.pay_fee_time > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time >= #{endDate}
- </select>
- <!-- 查询实收费用 -->
- <select id="getReceivedFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.received_amount),0.0) receivedFee
- from pay_fee_detail t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- left join pay_fee_attrs pfa on pf.fee_id = pfa.fee_id and pfa.status_cd = '0' and pfa.spec_cd = '390008'
- left join pay_fee_attrs pfa1 on pf.fee_id = pfa1.fee_id and pfa1.status_cd = '0' and pfa1.spec_cd = '390009'
- left join pay_fee_attrs pfa2 on pf.fee_id = pfa2.fee_id and pfa2.status_cd = '0' and pfa2.spec_cd = '390012'
- <if test="floorId != null and floorId != ''">
- 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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and pfa2.value like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and pfa.value like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and pfa1.value = #{link}
- </if>
- <if test="configIds !=null ">
- and pf.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 查询欠费户数 -->
- <select id="getOweRoomCount" parameterType="Map" resultType="Map">
- select count(1) oweRoomCount
- from (
- select t.payer_obj_id
- from report_owe_fee t
- inner join building_room br on t.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'
- <if test="feeTypeCd != null and feeTypeCd != ''">
- left join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
- </if>
- where
- 1=1
- and t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time < #{endDate}
- and t.amount_owed != 0
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.payer_obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.owner_tel = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pfc.fee_type_cd = #{feeTypeCd}
- </if>
- group by t.payer_obj_id
- ) a
- </select>
- <!-- 查询收费户数 -->
- <select id="getFeeRoomCount" parameterType="Map" resultType="Map">
- select count(1) feeRoomCount
- from (
- select t.payer_obj_id
- from report_owe_fee t
- inner join building_room br on t.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'
- <if test="feeTypeCd != null and feeTypeCd != ''">
- left join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
- </if>
- where
- 1=1
- and t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time < #{endDate}
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="configId != null and configId != ''">
- and t.config_id = #{configId}
- </if>
- <if test="objName != null and objName != ''">
- and t.payer_obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.owner_tel = #{link}
- </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="feeTypeCd != null and feeTypeCd != ''">
- and pfc.fee_type_cd = #{feeTypeCd}
- </if>
- group by t.payer_obj_id
- ) a
- </select>
- <select id="getFloorFeeSummary" parameterType="Map" resultType="Map">
- select a.floor_id floorId,a.floor_num floorNum,a.name floorName,
- (
- select count(1) from (
- select bu.floor_id,t.payer_obj_id
- from report_owe_fee t
- inner join building_room br on t.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'
- <if test="feeTypeCd != null and feeTypeCd != ''">
- left join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
- </if>
- where
- 1=1
- and t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time <= #{endDate}
- and t.amount_owed != 0
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pfc.fee_type_cd = #{feeTypeCd}
- </if>
- group by bu.floor_id,t.payer_obj_id
- ) b
- where b.floor_id = a.floor_id
- ) oweRoomCount,
- (
- select count(1) from (
- select bu.floor_id,t.payer_obj_id
- from report_owe_fee t
- inner join pay_fee pf on pf.fee_id = t.fee_id and pf.status_cd = '0' and pf.state = '2008001'
- inner join building_room br on t.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 t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time <= #{endDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- group by bu.floor_id,t.payer_obj_id
- ) b
- where b.floor_id = a.floor_id
- ) feeRoomCount,
- (
- select ifnull(sum(t.received_amount),0.0) receivedFee
- from pay_fee_detail t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- 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 = a.floor_id
- and t.status_cd = '0'
- and t.community_id= a.community_id
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- <if test="configIds !=null ">
- and pf.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- ) receivedFee,
- (
- select ifnull(sum(t.received_amount),0.0) preReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- LEFT JOIN building_room br on t.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= a.community_id
- and t.pay_fee_time > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time >= #{endDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- ) preReceivedFee,
- (
- select ifnull(sum(t.receivable_amount),0.0) hisOweFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- LEFT JOIN building_room br on t.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= a.community_id
- and t.detail_id = '-1'
- and t.cur_month_time < #{startDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- ) hisOweFee,
- (
- select ifnull(sum(t.receivable_amount),0.0) curReceivableFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- LEFT JOIN building_room br on t.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= a.community_id
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- ) curReceivableFee,
- (
- select ifnull(sum(t.receivable_amount),0.0) curReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- LEFT JOIN building_room br on t.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= a.community_id
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id != '-1'
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- ) curReceivedFee,
- (
- select ifnull(sum(t.received_amount),0.0) hisReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- LEFT JOIN building_room br on t.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= a.community_id
- and t.pay_fee_time > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time < #{startDate}
- and t.detail_id != '-1'
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- ) hisReceivedFee
- from f_floor a
- where 1=1
- and a.status_cd = '0'
- and a.community_id = #{communityId}
- order by a.seq
- </select>
- <select id="getConfigFeeSummary" parameterType="Map" resultType="Map">
- select a.name,
- (
- select count(1) from (
- select pfc.fee_type_cd,t.payer_obj_id
- from report_owe_fee t
- inner join building_room br on t.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'
- left join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
- where
- 1=1
- and t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time <= #{endDate}
- and t.amount_owed != 0
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pfc.fee_type_cd = #{feeTypeCd}
- </if>
- group by pfc.fee_type_cd,t.payer_obj_id
- ) b
- where b.fee_type_cd = a.status_cd
- ) oweRoomCount,
- (
- select count(1) from (
- select pf.fee_type_cd,t.payer_obj_id
- from report_owe_fee t
- inner join pay_fee pf on pf.fee_id = t.fee_id and pf.status_cd = '0' and pf.state = '2008001'
- inner join building_room br on t.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 t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time <= #{endDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- group by pf.fee_type_cd,t.payer_obj_id
- ) b
- where b.fee_type_cd = a.status_cd
- ) feeRoomCount,
- (
- select ifnull(sum(t.received_amount),0.0) receivedFee
- from pay_fee_detail t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- 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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- <if test="configIds !=null ">
- and pf.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- and pf.fee_type_cd = a.status_cd
- ) receivedFee,
- (
- select ifnull(sum(t.received_amount),0.0) preReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.pay_fee_time > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time >= #{endDate}
- and t.detail_id != '-1'
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- and pf.fee_type_cd = a.status_cd
- ) preReceivedFee,
- (
- select ifnull(sum(t.receivable_amount),0.0) hisOweFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.detail_id = '-1'
- and t.cur_month_time < #{startDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- and pf.fee_type_cd = a.status_cd
- ) hisOweFee,
- (
- select ifnull(sum(t.receivable_amount),0.0) curReceivableFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- and pf.fee_type_cd = a.status_cd
- ) curReceivableFee,
- (
- select ifnull(sum(t.receivable_amount),0.0) curReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id != '-1'
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- and pf.fee_type_cd = a.status_cd
- ) curReceivedFee,
- (
- select ifnull(sum(t.received_amount),0.0) hisReceivedFee
- from pay_fee_detail_month t
- INNER JOIN pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
- <if test="floorId != null and floorId != ''">
- LEFT JOIN building_room br on t.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'
- </if>
- where
- 1=1
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- and t.status_cd = '0'
- and t.community_id= #{communityId}
- and t.pay_fee_time > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time < #{startDate}
- and t.detail_id != '-1'
- <if test="configIds !=null ">
- and t.config_id in
- <foreach collection="configIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- and pf.fee_type_cd = a.status_cd
- ) hisReceivedFee
- from t_dict a
- where 1=1
- and a.table_name = 'pay_fee_config'
- and a.table_columns = 'fee_type_cd'
- </select>
- <select id="getObjFeeSummaryCount" parameterType="Map" resultType="Map">
- select count(1) feeRoomCount
- from
- (
- select t.payer_ob_id
- from report_owe_fee t
- inner join pay_fee pf on pf.fee_id = t.fee_id and pf.status_cd = '0' and pf.state = '2008001'
- inner join building_room br on t.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 t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- group by a.payer_ob_id
- ) b
- </select>
- <!-- 查询房屋费用明细表-->
- <select id="getObjFeeSummary" parameterType="Map" resultType="Map">
- select
- a.obj_id objId,pfc.fee_type_cd feeTypeCd,
- (
- select ifnull(sum(t.receivable_amount),0.0) hisOweFee
- from pay_fee_detail_month 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
- and t.status_cd = '0'
- and t.detail_id = '-1'
- and t.community_id= a.community_id
- and t.obj_id = a.obj_id
- and pfc1.fee_type_cd = pfc.fee_type_cd
- and t.cur_month_time < #{endDate}
- ) oweFee,
- (
- select ifnull(sum(t.received_amount),0.0) receivedFee
- 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 = 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.create_time > #{startDate}
- and t.create_time < #{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'
- where a.obj_id in
- <foreach collection="objIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- group by a.obj_id,pfc.fee_type_cd,a.community_id
- </select>
- <!-- 查询业主费用明细表 -->
- <select id="getOwnerFeeSummary" parameterType="Map" resultType="Map">
- select
- a.owner_id ownerId,GROUP_CONCAT(a.obj_name) objName,pfc.fee_type_cd feeTypeCd,
- (
- select ifnull(sum(t.receivable_amount),0.0) hisOweFee
- from pay_fee_detail_month 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 1=1
- and t.status_cd = '0'
- and t.detail_id = '-1'
- and t.community_id= a.community_id
- and t.owner_id = a.owner_id
- and pfc1.fee_type_cd = pfc.fee_type_cd
- and t.cur_month_time < #{endDate}
- ) oweFee,
- (
- select ifnull(sum(t.received_amount),0.0) receivedFee
- from pay_fee_detail_month 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.owner_id = a.owner_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 > #{startDate}
- and t.pay_fee_time < #{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'
- where a.owner_id in
- <foreach collection="ownerIds" item="item" index="index" open="(" close=")" separator=",">
- #{item}
- </foreach>
- group by a.owner_id,pfc.fee_type_cd,a.community_id
- </select>
- <!-- 优惠费用-->
- <select id="getDiscountFee" parameterType="Map" resultType="Map">
- select ifnull(SUM(t.discount_amount),0.0) discountFee
- from pay_fee_detail_month t
- where 1=1
- and t.status_cd = '0'
- and t.detail_id != '-1'
- and t.discount_amount > 0
- and t.community_id= #{communityId}
- and t.cur_month_time > #{startDate}
- and t.cur_month_time < #{endDate}
- </select>
- <!-- 滞纳金费用-->
- <select id="getLateFee" parameterType="Map" resultType="Map">
- select ifnull(SUM(t.discount_amount),0.0) lateFee
- from pay_fee_detail_month t
- where 1=1
- and t.status_cd = '0'
- and t.detail_id != '-1'
- and t.discount_amount < 0
- and t.community_id= #{communityId}
- and t.cur_month_time > #{startDate}
- and t.cur_month_time < #{endDate}
- </select>
- <!-- 查询预存账户-->
- <select id="getPrestoreAccount" parameterType="Map" resultType="Map">
- select ifnull(SUM(t.amount),0.0) prestoreAccount
- from account_detail t
- INNER JOIN account ac on t.acct_id = ac.acct_id and ac.status_cd = '0'
- where 1=1
- and t.obj_type = '6006'
- and ac.acct_type = '2003'
- and t.detail_type = '1001'
- and ac.part_id= #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 查询账户扣款-->
- <select id="getWithholdAccount" parameterType="Map" resultType="Map">
- select ifnull(SUM(t.amount),0.0) withholdAccount
- from account_detail t
- INNER JOIN account ac on t.acct_id = ac.acct_id and ac.status_cd = '0'
- where 1=1
- and t.obj_type = '6006'
- and ac.acct_type = '2003'
- and t.detail_type = '2002'
- and ac.part_id= #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 查询临时车费 -->
- <select id="getTempCarFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.pay_charge),0.0) tempCarFee
- from car_inout_payment t
- where 1=1
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- and t.status_cd = '0'
- </select>
- <!-- 押金退款金额 -->
- <select id="geRefundDeposit" parameterType="Map" resultType="Map">
- select ifnull(sum(t.received_amount),0.0) refundDeposit from return_pay_fee t
- where t.fee_type_cd = '888800010006'
- and t.status_cd = '0'
- and t.state = '1001'
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 退款订单数 -->
- <select id="geRefundOrderCount" parameterType="Map" resultType="Map">
- select count(1) refundOrderCount from return_pay_fee t
- where t.status_cd = '0'
- and t.state = '1001'
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 退款金额 -->
- <select id="geRefundFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.received_amount),0.0) refundFee from return_pay_fee t
- where t.status_cd = '0'
- and t.state = '1001'
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 查询充电费用-->
- <select id="getChargeFee" parameterType="Map" resultType="Map">
- select ifnull(sum(t.amount),0.0) chargeFee
- from charge_machine_order t
- where t.status_cd = '0'
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- </select>
- <!-- 查询楼栋实收-->
- <select id="getReceivedFeeByFloor" parameterType="Map" resultType="Map">
- select a.floor_id floorId,a.floor_num floorNum,a.name floorName,td.status_cd feeTypeCd,
- (
- select count(1)
- from building_room br
- left join building_unit bu on bu.unit_id = br.unit_id and bu.status_cd = '0'
- where
- 1=1
- and a.status_cd = '0'
- and br.status_cd = '0'
- and bu.floor_id = a.floor_id
- ) roomCount,
- (
- select count(1) from (
- select bu.floor_id,br.room_id
- from pay_fee_detail t
- INNER JOIN pay_fee pf1 on t.fee_id = pf1.fee_id and pf1.payer_obj_type='3333' and pf1.status_cd = '0'
- inner 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 t.status_cd = '0'
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- group by bu.floor_id,br.room_id
- ) b
- where b.floor_id = a.floor_id
- ) feeRoomCount,
- (
- select ifnull(sum(t.received_amount),0.0) receivedFee
- from pay_fee_detail t
- INNER JOIN pay_fee pf1 on t.fee_id = pf1.fee_id and pf1.payer_obj_type='3333' 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.create_time > #{startDate}
- and t.create_time < #{endDate}
- and pf1.fee_type_cd = td.status_cd
- ) receivedFee
- from f_floor a
- left join t_dict td on td.table_name='pay_fee_config' and td.table_columns = 'fee_type_cd_show'
- where 1=1
- and a.status_cd = '0'
- and a.community_id = #{communityId}
- order by a.seq
- </select>
- <!-- 按缴费方式统计 -->
- <select id="getReceivedFeeByPrimeRate" parameterType="Map" resultType="Map">
- select td.`name`,td.status_cd primeRate,ifnull(SUM(t.received_amount),0) receivedAmount
- from t_dict td
- left join pay_fee_detail t on td.status_cd = t.prime_rate and t.status_cd = '0'
- where
- 1=1
- and td.table_name = 'pay_fee_detail'
- and td.table_columns = 'prime_rate'
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{endDate}
- group by td.status_cd,td.`name`
- </select>
- <!-- 按楼栋统计欠费 -->
- <select id="getOweFeeByFloor" parameterType="Map" resultType="Map">
- select a.floor_id floorId,a.floor_num floorNum,a.name floorName,td.status_cd feeTypeCd,
- (
- select count(1)
- from building_room br
- left join building_unit bu on bu.unit_id = br.unit_id and bu.status_cd = '0'
- where
- 1=1
- and a.status_cd = '0'
- and br.status_cd = '0'
- and bu.floor_id = a.floor_id
- ) roomCount,
- (
- select count(1) from (
- select bu.floor_id,br.room_id
- from report_owe_fee t
- inner join pay_fee pf on pf.fee_id = t.fee_id and pf.status_cd = '0' and pf.state = '2008001'
- inner join building_room br on t.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 t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time < #{endDate}
- group by bu.floor_id,br.room_id
- ) b
- where b.floor_id = a.floor_id
- ) feeRoomCount,
- (
- select count(1) from (
- select bu.floor_id,br.room_id
- from report_owe_fee t
- inner join building_room br on t.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'
- left join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
- where
- 1=1
- and t.payer_obj_type = '3333'
- and t.community_id= #{communityId}
- and t.end_time < #{endDate}
- and t.amount_owed != 0
- group by bu.floor_id,br.room_id
- ) b
- where b.floor_id = a.floor_id
- ) oweRoomCount,
- (
- 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.community_id = #{communityId}
- and t.amount_owed > 0
- and pf1.fee_type_cd = td.status_cd
- ) oweFee
- from f_floor a
- left join t_dict td on td.table_name='pay_fee_config' and td.table_columns = 'fee_type_cd_show'
- where 1=1
- and a.status_cd = '0'
- and a.community_id = #{communityId}
- order by a.seq
- </select>
- <!-- 对象欠费 -->
- <select id="getObjOweFee" parameterType="Map" resultType="Map">
- 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
- and t.payer_obj_type = '3333'
- and t.community_id = #{communityId}
- and t.payer_obj_id in
- <foreach collection="objIds" item="item" index="index" open="(" close=")" separator=",">
- #{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 > #{startDate}
- and t.create_time < #{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
- 1=1
- and bu.floor_id = #{floorId}
- and t.community_id = #{communityId}
- and t.create_time > #{startDate}
- and t.create_time < #{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 > #{startDate}
- and t.create_time < #{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 > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time < #{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 > #{startDate}
- and t.pay_fee_time < #{endDate}
- and t.cur_month_time < #{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="getMonthReceivedDetailCount" parameterType="Map" resultType="Map">
- select count(1) 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 pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0'
- left join building_room br on t.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'
- left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
- left join pay_fee_detail_month pfdm on t.fee_id = pfdm.fee_id and t.detail_year = pfdm.detail_year and t.detail_month = pfdm.detail_month and pfdm.detail_id = '-1'
- where 1=1
- and pfdm.month_id is null
- and t.status_cd = '0'
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id != '-1'
- and t.community_id = #{communityId}
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </if>
- </select>
- <!-- 月实收 查询-->
- <select id="getMonthReceivedDetailInfo" parameterType="Map" resultType="Map">
- select concat(f.floor_num,'-',bu.unit_num,'-',br.room_num) objName,t.owner_name ownerName,t.link,t.fee_name feeName, pfd.start_time startTime,pfd.end_time endTime,
- pfd.pay_order_id payOrderId,pfd.cashier_name cashierName,
- t.receivable_amount receivableAmount,t.received_amount receivedAmount,pfd.create_time createTime,concat(t.detail_year,'-',t.detail_month) curYearMonth
- 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 pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0'
- left join building_room br on t.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'
- left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
- left join pay_fee_detail_month pfdm on t.fee_id = pfdm.fee_id and t.detail_year = pfdm.detail_year and t.detail_month = pfdm.detail_month and pfdm.detail_id = '-1'
- where 1=1
- and pfdm.month_id is null
- and t.status_cd = '0'
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id != '-1'
- and t.community_id = #{communityId}
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </if>
- order by t.obj_name,t.fee_name,t.detail_year,t.detail_month
- <if test="page != -1 and page != null ">
- limit #{page}, #{row}
- </if>
- </select>
- <!-- 月实收总金额 查询-->
- <select id="getMonthReceivedDetailAmount" parameterType="Map" resultType="Map">
- select ifnull(sum(t.received_amount),0.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 pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0'
- left join building_room br on t.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'
- left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
- where 1=1
- and t.status_cd = '0'
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id != '-1'
- and t.community_id = #{communityId}
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </if>
- </select>
- <!-- 查询月欠费数据 -->
- <select id="getMonthOweDetailCount" parameterType="Map" resultType="Map">
- select count(1) 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 pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0'
- left join building_room br on t.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'
- left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
- where 1=1
- and t.status_cd = '0'
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id = '-1'
- and t.community_id = #{communityId}
- and t.receivable_amount > 0
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </if>
- </select>
- <!-- 月实收 查询-->
- <select id="getMonthOweDetailInfo" parameterType="Map" resultType="Map">
- select concat(f.floor_num,'-',bu.unit_num,'-',br.room_num) objName,t.owner_name ownerName,t.link,t.fee_name feeName, pf.end_time startTime,t.deadline_time endTime,
- t.receivable_amount receivableAmount,t.received_amount receivedAmount,concat(t.detail_year,'-',t.detail_month) curYearMonth
- 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 pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0'
- left join building_room br on t.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'
- left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
- where 1=1
- and t.status_cd = '0'
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id = '-1'
- and t.receivable_amount > 0
- and t.community_id = #{communityId}
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </if>
- order by t.obj_name,t.fee_name,t.detail_year,t.detail_month
- <if test="page != -1 and page != null ">
- limit #{page}, #{row}
- </if>
- </select>
- <!-- 月欠费总金额 查询-->
- <select id="getMonthOweDetailAmount" parameterType="Map" resultType="Map">
- select ifnull(sum(t.receivable_amount),0.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 pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0'
- left join building_room br on t.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'
- left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0'
- where 1=1
- and t.status_cd = '0'
- and t.cur_month_time >= #{startDate}
- and t.cur_month_time < #{endDate}
- and t.detail_id = '-1'
- and t.community_id = #{communityId}
- and t.receivable_amount > 0
- <if test="feeTypeCd != null and feeTypeCd != ''">
- and pf.fee_type_cd = #{feeTypeCd}
- </if>
- <if test="floorId != null and floorId != ''">
- and bu.floor_id = #{floorId}
- </if>
- <if test="objName != null and objName != ''">
- and t.obj_name like concat('%',#{objName},'%')
- </if>
- <if test="ownerName != null and ownerName != ''">
- and t.owner_name like concat('%',#{ownerName},'%')
- </if>
- <if test="link != null and link != ''">
- and t.link = #{link}
- </if>
- </select>
- </mapper>
|