java110
2022-03-12 db689e5e2cb730b2cf08796fa224084f00758a71
java110-db/src/main/resources/mapper/fee/FeeDetailServiceDaoImplMapper.xml
old mode 100644 new mode 100755
@@ -5,214 +5,315 @@
<mapper namespace="feeDetailServiceDaoImpl">
    <!-- 保存费用明细信息 add by wuxw 2018-07-03 -->
       <insert id="saveBusinessFeeDetailInfo" parameterType="Map">
           insert into business_pay_fee_detail(
operate,prime_rate,detail_id,receivable_amount,cycles,remark,received_amount,community_id,b_id,fee_id
) values (
#{operate},#{primeRate},#{detailId},#{receivableAmount},#{cycles},#{remark},#{receivedAmount},#{communityId},#{bId},#{feeId}
)
       </insert>
       <!-- 查询费用明细信息(Business) add by wuxw 2018-07-03 -->
       <select id="getBusinessFeeDetailInfo" parameterType="Map" resultType="Map">
           select  t.operate,t.prime_rate,t.prime_rate primeRate,t.detail_id,t.detail_id detailId,t.receivable_amount,t.receivable_amount receivableAmount,t.cycles,t.remark,t.received_amount,t.received_amount receivedAmount,t.community_id,t.community_id communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId
from business_pay_fee_detail t
where 1 =1
<if test="operate !=null and operate != ''">
   and t.operate= #{operate}
</if>
<if test="primeRate !=null and primeRate != ''">
   and t.prime_rate= #{primeRate}
</if>
<if test="detailId !=null and detailId != ''">
   and t.detail_id= #{detailId}
</if>
<if test="receivableAmount !=null and receivableAmount != ''">
   and t.receivable_amount= #{receivableAmount}
</if>
<if test="cycles !=null and cycles != ''">
   and t.cycles= #{cycles}
</if>
<if test="remark !=null and remark != ''">
   and t.remark= #{remark}
</if>
<if test="receivedAmount !=null and receivedAmount != ''">
   and t.received_amount= #{receivedAmount}
</if>
<if test="communityId !=null and communityId != ''">
   and t.community_id= #{communityId}
</if>
<if test="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
       </select>
    <!-- 保存费用明细信息至 instance表中 add by wuxw 2018-07-03 -->
    <insert id="saveFeeDetailInfoInstance" parameterType="Map">
        insert into pay_fee_detail(
prime_rate,detail_id,receivable_amount,cycles,remark,status_cd,received_amount,community_id,b_id,fee_id
) select t.prime_rate,t.detail_id,t.receivable_amount,t.cycles,t.remark,'0',t.received_amount,t.community_id,t.b_id,t.fee_id from business_pay_fee_detail t where 1=1
   and t.operate= 'ADD'
<if test="primeRate !=null and primeRate != ''">
   and t.prime_rate= #{primeRate}
</if>
<if test="detailId !=null and detailId != ''">
   and t.detail_id= #{detailId}
</if>
<if test="receivableAmount !=null and receivableAmount != ''">
   and t.receivable_amount= #{receivableAmount}
</if>
<if test="cycles !=null and cycles != ''">
   and t.cycles= #{cycles}
</if>
<if test="remark !=null and remark != ''">
   and t.remark= #{remark}
</if>
<if test="receivedAmount !=null and receivedAmount != ''">
   and t.received_amount= #{receivedAmount}
</if>
<if test="communityId !=null and communityId != ''">
   and t.community_id= #{communityId}
</if>
<if test="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
    <insert id="saveBusinessFeeDetailInfo" parameterType="Map">
        insert into
        business_pay_fee_detail(
        operate,prime_rate,detail_id,
        receivable_amount,cycles,remark,
        received_amount,community_id,b_id,fee_id,state,start_time,end_time
        <if test="createTime != null">
            ,create_time
        </if>
        ) values (
        #{operate},#{primeRate},#{detailId},#{receivableAmount},
        #{cycles},#{remark},#{receivedAmount},#{communityId},#{bId},#{feeId},#{state},#{startTime},#{endTime}
        <if test="createTime != null">
            ,#{createTime}
        </if>
        )
    </insert>
    <!-- 查询费用明细信息 add by wuxw 2018-07-03 -->
    <select id="getFeeDetailInfo" parameterType="Map" resultType="Map">
        select  t.prime_rate,t.prime_rate primeRate,t.detail_id,t.detail_id detailId,t.receivable_amount,t.receivable_amount receivableAmount,
        t.cycles,t.remark,t.status_cd,t.status_cd statusCd,t.received_amount,t.received_amount receivedAmount,t.community_id,
        t.community_id communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId ,t.create_time createTime
from pay_fee_detail t
where 1 =1
<if test="primeRate !=null and primeRate != ''">
   and t.prime_rate= #{primeRate}
</if>
<if test="detailId !=null and detailId != ''">
   and t.detail_id= #{detailId}
</if>
<if test="receivableAmount !=null and receivableAmount != ''">
   and t.receivable_amount= #{receivableAmount}
</if>
<if test="cycles !=null and cycles != ''">
   and t.cycles= #{cycles}
</if>
<if test="remark !=null and remark != ''">
   and t.remark= #{remark}
</if>
<if test="statusCd !=null and statusCd != ''">
   and t.status_cd= #{statusCd}
</if>
<if test="receivedAmount !=null and receivedAmount != ''">
   and t.received_amount= #{receivedAmount}
</if>
<if test="communityId !=null and communityId != ''">
   and t.community_id= #{communityId}
</if>
<if test="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
<if test="page != -1 and page != null ">
   limit #{page}, #{row}
</if>
    <!-- 查询费用明细信息(Business) add by wuxw 2018-07-03 -->
    <select id="getBusinessFeeDetailInfo" parameterType="Map" resultType="Map">
        select
        t.operate,t.prime_rate,t.prime_rate primeRate,t.detail_id,
        t.detail_id detailId,t.receivable_amount,
        t.receivable_amount receivableAmount,t.cycles,
        t.remark,t.received_amount,t.received_amount receivedAmount,
        t.community_id,t.community_id communityId,t.b_id,t.b_id bId,
        t.fee_id,t.fee_id feeId,t.state,t.start_time,t.end_time,t.start_time startTime,t.end_time endTime
        from business_pay_fee_detail t
        where 1 =1
        <if test="operate !=null and operate != ''">
            and t.operate= #{operate}
        </if>
        <if test="primeRate !=null and primeRate != ''">
            and t.prime_rate= #{primeRate}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="receivableAmount !=null and receivableAmount != ''">
            and t.receivable_amount= #{receivableAmount}
        </if>
        <if test="cycles !=null and cycles != ''">
            and t.cycles= #{cycles}
        </if>
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="receivedAmount !=null and receivedAmount != ''">
            and t.received_amount= #{receivedAmount}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
    </select>
    <!-- 保存费用明细信息至 instance表中 add by wuxw 2018-07-03 -->
    <insert id="saveFeeDetailInfoInstance" parameterType="Map">
        insert into
        pay_fee_detail(
        prime_rate,detail_id,receivable_amount,cycles,remark,status_cd,received_amount,community_id,b_id,fee_id,state,start_time,end_time,create_time)
        select
        t.prime_rate,t.detail_id,t.receivable_amount,t.cycles,t.remark,'0',t.received_amount,t.community_id,t.b_id,t.fee_id,state,t.start_time,t.end_time,t.create_time
        from business_pay_fee_detail t where 1=1
        and t.operate= 'ADD'
        <if test="primeRate !=null and primeRate != ''">
            and t.prime_rate= #{primeRate}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="receivableAmount !=null and receivableAmount != ''">
            and t.receivable_amount= #{receivableAmount}
        </if>
        <if test="cycles !=null and cycles != ''">
            and t.cycles= #{cycles}
        </if>
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="receivedAmount !=null and receivedAmount != ''">
            and t.received_amount= #{receivedAmount}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
    </insert>
    <!-- 查询费用明细信息 add by wuxw 2018-07-03 -->
    <select id="getFeeDetailInfo" parameterType="Map" resultType="Map">
        select
        t.prime_rate,t.prime_rate primeRate,
        t.detail_id,t.detail_id detailId,
        t.receivable_amount,t.receivable_amount receivableAmount,
        t.cycles,t.remark,t.status_cd,t.status_cd statusCd,t.received_amount,t.received_amount receivedAmount,
        t.community_id,t.community_id communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId ,t.create_time createTime,
        t.state,d.name stateName,t.start_time,t.end_time,t.start_time startTime,t.end_time endTime,pfa.`value` importFeeName,pfc.fee_name feeName,
        mw.cur_degrees curDegrees,mw.pre_degrees  preDegrees, mw.pre_reading_time preReadingTime,mw.cur_reading_time curReadingTime
        from pay_fee_detail t
        left join pay_fee_attrs pfa on t.fee_id = pfa.fee_id and pfa.spec_cd = '390002'
        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'
        LEFT JOIN meter_water mw on t.fee_id = mw.fee_id and mw.status_cd = '0' and mw.community_id = t.community_id
        <if test="ownerId != null and ownerId != ''">
            left join pay_fee_attrs pfao on pfao.fee_id = t.fee_id and pfao.spec_cd = '390007' and pfao.status_cd = '0'
        </if>
        left join t_dict d on t.state = d.status_cd and d.table_name = 'pay_fee_detail' and d.table_columns = 'state'
        where 1 =1
        <if test="configId != null and configId != ''">
            and pf.config_id = #{configId}
            and pf.payer_obj_id = #{payerObjId}
        </if>
        <if test="ownerId != null and ownerId != ''">
           and pfao.value = #{ownerId}
        </if>
        <if test="primeRate !=null and primeRate != ''">
            and t.prime_rate= #{primeRate}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="receivableAmount !=null and receivableAmount != ''">
            and t.receivable_amount= #{receivableAmount}
        </if>
        <if test="cycles !=null and cycles != ''">
            and t.cycles= #{cycles}
        </if>
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="receivedAmount !=null and receivedAmount != ''">
            and t.received_amount= #{receivedAmount}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
        <if test="startTime !=null ">
            and t.create_time &gt;= #{startTime}
        </if>
        <if test="endTime !=null ">
            and t.create_time &lt;= #{endTime}
        </if>
        <if test="curYear != null and curYear != ''">
            and DATE_FORMAT(DATE_SUB(t.end_time,INTERVAL 1 DAY),'%Y') = #{curYear}
        </if>
        <if test="states != null">
            and t.state in
            <foreach collection="states" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </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 -->
    <update id="updateFeeDetailInfoInstance" parameterType="Map">
        update  pay_fee_detail t set t.status_cd = #{statusCd}
<if test="newBId != null and newBId != ''">
,t.b_id = #{newBId}
</if>
<if test="primeRate !=null and primeRate != ''">
, t.prime_rate= #{primeRate}
</if>
<if test="receivableAmount !=null and receivableAmount != ''">
, t.receivable_amount= #{receivableAmount}
</if>
<if test="cycles !=null and cycles != ''">
, t.cycles= #{cycles}
</if>
<if test="remark !=null and remark != ''">
, t.remark= #{remark}
</if>
<if test="receivedAmount !=null and receivedAmount != ''">
, t.received_amount= #{receivedAmount}
</if>
<if test="communityId !=null and communityId != ''">
, t.community_id= #{communityId}
</if>
<if test="feeId !=null and feeId != ''">
, t.fee_id= #{feeId}
</if>
 where 1=1 <if test="detailId !=null and detailId != ''">
and t.detail_id= #{detailId}
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
</if>
        update pay_fee_detail t set t.status_cd = #{statusCd}
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>
        <if test="primeRate !=null and primeRate != ''">
            , t.prime_rate= #{primeRate}
        </if>
        <if test="receivableAmount !=null and receivableAmount != ''">
            , t.receivable_amount= #{receivableAmount}
        </if>
        <if test="cycles !=null and cycles != ''">
            , t.cycles= #{cycles}
        </if>
        <if test="remark !=null and remark != ''">
            , t.remark= #{remark}
        </if>
        <if test="receivedAmount !=null and receivedAmount != ''">
            , t.received_amount= #{receivedAmount}
        </if>
        <if test="communityId !=null and communityId != ''">
            , t.community_id= #{communityId}
        </if>
        <if test="state !=null and state != ''">
            , t.state= #{state}
        </if>
        <if test="feeId !=null and feeId != ''">
            , t.fee_id= #{feeId}
        </if>
        where 1=1
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
    </update>
    <!-- 查询费用明细数量 add by wuxw 2018-07-03 -->
     <select id="queryFeeDetailsCount" parameterType="Map" resultType="Map">
        select  count(1) count
from pay_fee_detail t
where 1 =1
<if test="primeRate !=null and primeRate != ''">
   and t.prime_rate= #{primeRate}
</if>
<if test="detailId !=null and detailId != ''">
   and t.detail_id= #{detailId}
</if>
<if test="receivableAmount !=null and receivableAmount != ''">
   and t.receivable_amount= #{receivableAmount}
</if>
<if test="cycles !=null and cycles != ''">
   and t.cycles= #{cycles}
</if>
<if test="remark !=null and remark != ''">
   and t.remark= #{remark}
</if>
<if test="statusCd !=null and statusCd != ''">
   and t.status_cd= #{statusCd}
</if>
<if test="receivedAmount !=null and receivedAmount != ''">
   and t.received_amount= #{receivedAmount}
</if>
<if test="communityId !=null and communityId != ''">
   and t.community_id= #{communityId}
</if>
<if test="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
    <select id="queryFeeDetailsCount" parameterType="Map" resultType="Map">
        select count(1) count
        from pay_fee_detail t
        <if test="configId != null and configId != ''">
            inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
        </if>
        <if test="ownerId != null and ownerId != ''">
            left join pay_fee_attrs pfa on pfa.fee_id = t.fee_id and pfa.spec_cd = '390007' and pfa.status_cd = '0'
        </if>
        where 1 =1
        <if test="configId != null and configId != ''">
            and pf.config_id = #{configId}
            and pf.payer_obj_id = #{payerObjId}
        </if>
        <if test="ownerId != null and ownerId != ''">
           and pfa.value = #{ownerId}
        </if>
        <if test="primeRate !=null and primeRate != ''">
            and t.prime_rate= #{primeRate}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="receivableAmount !=null and receivableAmount != ''">
            and t.receivable_amount= #{receivableAmount}
        </if>
        <if test="cycles !=null and cycles != ''">
            and t.cycles= #{cycles}
        </if>
        <if test="remark !=null and remark != ''">
            and t.remark= #{remark}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="receivedAmount !=null and receivedAmount != ''">
            and t.received_amount= #{receivedAmount}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="startTime !=null ">
            and t.create_time &gt;= #{startTime}
        </if>
        <if test="endTime !=null ">
            and t.create_time &lt;= #{endTime}
        </if>
        <if test="curYear != null and curYear != ''">
            and DATE_FORMAT(DATE_SUB(t.end_time,INTERVAL 1 DAY),'%Y') = #{curYear}
        </if>
     </select>
    </select>
    <!-- 保存费用明细信息至 instance表中 add by wuxw 2018-07-03 -->
    <insert id="saveFeeDetail" parameterType="Map">
        insert into
        pay_fee_detail(
        prime_rate,detail_id,receivable_amount,cycles,remark,status_cd,received_amount,community_id,b_id,fee_id,state,start_time,end_time
        <if test="createTime != null and createTime != ''">
            ,create_time
        </if>
        )
        values(#{primeRate},#{detailId},#{receivableAmount},#{cycles},#{remark},'0',#{receivedAmount},#{communityId},'-1',#{feeId},#{state},
        #{startTime},#{endTime}
        <if test="createTime != null and createTime != ''">
            ,#{createTime}
        </if>
        )
    </insert>
</mapper>