FeeReceiptDetailServiceDaoImplMapper.xml 7.78 KB
<?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="feeReceiptDetailServiceDaoImpl">


    <!-- 保存收据明细信息 add by wuxw 2018-07-03 -->
    <insert id="saveFeeReceiptDetailInfo" parameterType="Map">
        insert into fee_receipt_detail(
        area,amount,fee_name,detail_id,start_time,end_time,community_id,receipt_id,fee_id,cycle,square_price
        <if test="createTime != null">
            ,create_time
        </if>
        ) values (
        #{area},#{amount},#{feeName},#{detailId},#{startTime},#{endTime},#{communityId},#{receiptId},#{feeId},#{cycle},#{squarePrice}
        <if test="createTime != null">
            ,#{createTime}
        </if>
        )
    </insert>


    <!-- 批量插入费用 -->
    <insert id="saveFeeReceiptDetails" parameterType="Map">
        insert into fee_receipt_detail(
        area,amount,fee_name,detail_id,start_time,end_time,community_id,receipt_id,fee_id,cycle,square_price )
        VALUES
        <foreach collection="feeReceiptDetailPos" item="item" separator=",">
            (#{item.area},#{item.amount},#{item.feeName},#{item.detailId},#{item.startTime},#{item.endTime},
            #{item.communityId},#{item.receiptId},#{item.feeId},#{item.cycle},#{item.squarePrice})
        </foreach>
    </insert>


    <!-- 查询收据明细信息 add by wuxw 2018-07-03 -->
    <select id="getFeeReceiptDetailInfo" parameterType="Map" resultType="Map">
        select t.area,t.amount,t.fee_name,t.fee_name feeName,t.detail_id,t.detail_id detailId,t.start_time,t.start_time
        startTime,t.status_cd,t.status_cd statusCd,t.end_time,t.end_time endTime,t.community_id,t.community_id
        communityId,t.receipt_id,t.receipt_id receiptId,t.fee_id,t.fee_id feeId,t.cycle,t.square_price squarePrice,
        pfd.remark,pf.fee_flag feeFlag,mw.pre_degrees preDegrees,mw.cur_degrees curDegrees,d.name primeRate,
        pfc.units,pfd.pay_order_id payOrderId,pf.payer_obj_id payerObjId,pfd.acct_amount acctAmount,pfd.receivable_amount receivableAmount
        from fee_receipt_detail t
        left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' and t.community_id =
        pfd.community_id
        left join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and t.community_id = pf.community_id
        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 t.community_id = mw.community_id
        left join t_dict d on pfd.prime_rate = d.status_cd and d.table_name="pay_fee_detail" and  d.table_columns='prime_rate'
        where 1 =1
        <if test="area !=null and area != ''">
            and t.area= #{area}
        </if>
        <if test="amount !=null and amount != ''">
            and t.amount= #{amount}
        </if>
        <if test="feeName !=null and feeName != ''">
            and t.fee_name= #{feeName}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="detailIds !=null ">
            and t.detail_id in
            <foreach collection="detailIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="startTime !=null and startTime != ''">
            and t.start_time= #{startTime}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </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="receiptId !=null and receiptId != ''">
            and t.receipt_id= #{receiptId}
        </if>
        <if test="receiptIds !=null">
            and t.receipt_id in
            <foreach collection="receiptIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
        <if test="cycle !=null and cycle != ''">
            and t.cycle= #{cycle}
        </if>
        <if test="orderBy !=null and orderBy != ''">
            order by t.fee_name, t.${orderBy}
        </if>
        <if test="orderBy ==null or orderBy == ''">
            order by t.create_time desc
        </if>

        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>


    </select>


    <!-- 修改收据明细信息 add by wuxw 2018-07-03 -->
    <update id="updateFeeReceiptDetailInfo" parameterType="Map">
        update fee_receipt_detail t set t.status_cd = #{statusCd}
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>
        <if test="area !=null and area != ''">
            , t.area= #{area}
        </if>
        <if test="amount !=null and amount != ''">
            , t.amount= #{amount}
        </if>
        <if test="feeName !=null and feeName != ''">
            , t.fee_name= #{feeName}
        </if>
        <if test="startTime !=null and startTime != ''">
            , t.start_time= #{startTime}
        </if>
        <if test="endTime !=null and endTime != ''">
            , t.end_time= #{endTime}
        </if>
        <if test="feeId !=null and feeId != ''">
            , t.fee_id= #{feeId}
        </if>
        <if test="cycle !=null and cycle != ''">
            , t.cycle= #{cycle}
        </if>
        where 1=1
        <if test="receiptId !=null and receiptId != ''">
            and t.receipt_id= #{receiptId}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>

    </update>

    <!-- 查询收据明细数量 add by wuxw 2018-07-03 -->
    <select id="queryFeeReceiptDetailsCount" parameterType="Map" resultType="Map">
        select count(1) count
        from fee_receipt_detail t
        where 1 =1
        <if test="area !=null and area != ''">
            and t.area= #{area}
        </if>
        <if test="amount !=null and amount != ''">
            and t.amount= #{amount}
        </if>
        <if test="feeName !=null and feeName != ''">
            and t.fee_name= #{feeName}
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="startTime !=null and startTime != ''">
            and t.start_time= #{startTime}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </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="receiptId !=null and receiptId != ''">
            and t.receipt_id= #{receiptId}
        </if>
        <if test="receiptIds !=null">
            and t.receipt_id in
            <foreach collection="receiptIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="detailIds !=null">
            and t.detail_id in
            <foreach collection="detailIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
        <if test="cycle !=null and cycle != ''">
            and t.cycle= #{cycle}
        </if>


    </select>

</mapper>