java110
2020-05-18 3f4948a093237990407b4deaa77506c720dbb859
java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml
@@ -5,227 +5,350 @@
<mapper namespace="feeServiceDaoImpl">
    <!-- 保存费用信息 add by wuxw 2018-07-03 -->
       <insert id="saveBusinessFeeInfo" parameterType="Map">
           insert into business_pay_fee(
amount,operate,income_obj_id,fee_type_cd,start_time,end_time,community_id,b_id,fee_id,user_id,payer_obj_id
) values (
#{amount},#{operate},#{incomeObjId},#{feeTypeCd},#{startTime},#{endTime},#{communityId},#{bId},#{feeId},#{userId},#{payerObjId}
)
       </insert>
    <insert id="saveBusinessFeeInfo" parameterType="Map">
        insert into business_pay_fee(
        amount,operate,income_obj_id,fee_type_cd,start_time,end_time,community_id,b_id,fee_id,user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type
        ) values (
        #{amount},#{operate},#{incomeObjId},#{feeTypeCd},#{startTime},#{endTime},#{communityId},#{bId},#{feeId},#{userId},#{payerObjId},
        #{feeFlag},#{state},#{configId},#{payerObjType}
        )
    </insert>
       <!-- 查询费用信息(Business) add by wuxw 2018-07-03 -->
       <select id="getBusinessFeeInfo" parameterType="Map" resultType="Map">
           select  t.amount,t.operate,t.income_obj_id,t.income_obj_id incomeObjId,t.fee_type_cd,t.fee_type_cd feeTypeCd,t.start_time,t.start_time startTime,t.end_time,t.end_time endTime,t.community_id,t.community_id communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId,t.user_id,t.user_id userId,t.payer_obj_id,t.payer_obj_id payerObjId
from business_pay_fee t
where 1 =1
<if test="amount !=null and amount != ''">
   and t.amount= #{amount}
</if>
<if test="operate !=null and operate != ''">
   and t.operate= #{operate}
</if>
<if test="incomeObjId !=null and incomeObjId != ''">
   and t.income_obj_id= #{incomeObjId}
</if>
<if test="feeTypeCd !=null and feeTypeCd != ''">
   and t.fee_type_cd= #{feeTypeCd}
</if>
<if test="startTime !=null and startTime != ''">
   and t.start_time= #{startTime}
</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="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
<if test="userId !=null and userId != ''">
   and t.user_id= #{userId}
</if>
<if test="payerObjId !=null and payerObjId != ''">
   and t.payer_obj_id= #{payerObjId}
</if>
    <!-- 查询费用信息(Business) add by wuxw 2018-07-03 -->
    <select id="getBusinessFeeInfo" parameterType="Map" resultType="Map">
        select t.amount,t.operate,t.income_obj_id,t.income_obj_id incomeObjId,t.fee_type_cd,t.fee_type_cd
        feeTypeCd,t.start_time,t.start_time startTime,t.end_time,t.end_time endTime,t.community_id,t.community_id
        communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId,t.user_id,t.user_id userId,t.payer_obj_id,t.payer_obj_id
        payerObjId,t.fee_flag,t.fee_flag feeFlag,t.state,t.config_id,t.config_id configId,t.payer_obj_type,t.payer_obj_type payerObjType
        from business_pay_fee t
        where 1 =1
        <if test="amount !=null and amount != ''">
            and t.amount= #{amount}
        </if>
        <if test="operate !=null and operate != ''">
            and t.operate= #{operate}
        </if>
        <if test="incomeObjId !=null and incomeObjId != ''">
            and t.income_obj_id= #{incomeObjId}
        </if>
        <if test="feeTypeCd !=null and feeTypeCd != ''">
            and t.fee_type_cd= #{feeTypeCd}
        </if>
        <if test="startTime !=null ">
            and t.start_time= #{startTime}
        </if>
        <if test="endTime !=null ">
            and t.end_time= #{endTime}
        </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="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="payerObjId !=null and payerObjId != ''">
            and t.payer_obj_id= #{payerObjId}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="feeFlag !=null and feeFlag != ''">
            and t.fee_flag= #{feeFlag}
        </if>
        <if test="configId !=null and configId != ''">
            and t.config_id= #{configId}
        </if>
        <if test="payerObjType !=null and payerObjType != ''">
            and t.payer_obj_type = #{payerObjType}
        </if>
       </select>
    </select>
    <!-- 保存费用信息至 instance表中 add by wuxw 2018-07-03 -->
    <insert id="saveFeeInfoInstance" parameterType="Map">
        insert into pay_fee(
amount,income_obj_id,fee_type_cd,start_time,status_cd,end_time,community_id,b_id,fee_id,user_id,payer_obj_id
) select t.amount,t.income_obj_id,t.fee_type_cd,t.start_time,'0',t.end_time,t.community_id,t.b_id,t.fee_id,t.user_id,t.payer_obj_id from business_pay_fee t where 1=1
<if test="amount !=null and amount != ''">
   and t.amount= #{amount}
</if>
   and t.operate= 'ADD'
<if test="incomeObjId !=null and incomeObjId != ''">
   and t.income_obj_id= #{incomeObjId}
</if>
<if test="feeTypeCd !=null and feeTypeCd != ''">
   and t.fee_type_cd= #{feeTypeCd}
</if>
<if test="startTime !=null and startTime != ''">
   and t.start_time= #{startTime}
</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="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
<if test="userId !=null and userId != ''">
   and t.user_id= #{userId}
</if>
<if test="payerObjId !=null and payerObjId != ''">
   and t.payer_obj_id= #{payerObjId}
</if>
        amount,income_obj_id,fee_type_cd,start_time,status_cd,end_time,community_id,b_id,fee_id,user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type
        ) select
        t.amount,t.income_obj_id,t.fee_type_cd,t.start_time,'0',t.end_time,t.community_id,t.b_id,t.fee_id,t.user_id,t.payer_obj_id
        ,t.fee_flag,t.state,t.config_id,t.payer_obj_type
        from business_pay_fee t where 1=1
        <if test="amount !=null and amount != ''">
            and t.amount= #{amount}
        </if>
        and t.operate= 'ADD'
        <if test="incomeObjId !=null and incomeObjId != ''">
            and t.income_obj_id= #{incomeObjId}
        </if>
        <if test="feeTypeCd !=null and feeTypeCd != ''">
            and t.fee_type_cd= #{feeTypeCd}
        </if>
        <if test="startTime !=null ">
            and t.start_time= #{startTime}
        </if>
        <if test="endTime !=null ">
            and t.end_time= #{endTime}
        </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="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="payerObjId !=null and payerObjId != ''">
            and t.payer_obj_id= #{payerObjId}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="feeFlag !=null and feeFlag != ''">
            and t.fee_flag= #{feeFlag}
        </if>
        <if test="configId !=null and configId != ''">
            and t.config_id= #{configId}
        </if>
        <if test="payerObjType !=null and payerObjType != ''">
            and t.payer_obj_type = #{payerObjType}
        </if>
    </insert>
    <!-- 查询费用信息 add by wuxw 2018-07-03 -->
    <select id="getFeeInfo" parameterType="Map" resultType="Map">
        select  t.amount,t.income_obj_id,t.income_obj_id incomeObjId,t.fee_type_cd,t.fee_type_cd feeTypeCd,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.b_id,t.b_id bId,t.fee_id,t.fee_id feeId,t.user_id,t.user_id userId,t.payer_obj_id,t.payer_obj_id payerObjId
from pay_fee t
where 1 =1
<if test="amount !=null and amount != ''">
   and t.amount= #{amount}
</if>
<if test="incomeObjId !=null and incomeObjId != ''">
   and t.income_obj_id= #{incomeObjId}
</if>
<if test="feeTypeCd !=null and feeTypeCd != ''">
   and t.fee_type_cd= #{feeTypeCd}
</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="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
<if test="userId !=null and userId != ''">
   and t.user_id= #{userId}
</if>
<if test="payerObjId !=null and payerObjId != ''">
   and t.payer_obj_id= #{payerObjId}
</if>
<if test="page != -1 and page != null ">
   limit #{page}, #{row}
</if>
        select t.amount,t.income_obj_id,t.income_obj_id incomeObjId,t.fee_type_cd,t.fee_type_cd
        feeTypeCd,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.b_id,t.b_id bId,t.fee_id,t.fee_id feeId,t.user_id,t.user_id
        userId,t.payer_obj_id,t.payer_obj_id payerObjId,pfc.square_price squarePrice,pfc.additional_amount
        additionalAmount,t.fee_flag,t.fee_flag feeFlag,t.state,t.config_id,t.config_id configId,
        pfc.fee_name feeName,td1.name feeTypeCdName,td2.name stateName,td3.name feeFlagName,pfc.computing_formula computingFormula,
        t.payer_obj_type,t.payer_obj_type payerObjType,pfc.is_default isDefault,pfc.start_time configStartTime,pfc.end_time configEndTime
        from pay_fee t,pay_fee_config pfc,t_dict td1,t_dict td2,t_dict td3
        where 1 =1
        and t.fee_type_cd = pfc.fee_type_cd
        and t.config_id = pfc.config_id
        and pfc.status_cd = '0'
        and pfc.fee_type_cd = td1.status_cd
        and td1.table_name = 'pay_fee_config'
        and td1.table_columns = 'fee_type_cd'
        and t.state = td2.status_cd
        and td2.table_name = 'pay_fee'
        and td2.table_columns = 'state'
        and t.fee_flag = td3.status_cd
        and td3.table_name = 'pay_fee'
        and td3.table_columns = 'fee_flag'
        <if test="amount !=null and amount != ''">
            and t.amount= #{amount}
        </if>
        <if test="incomeObjId !=null and incomeObjId != ''">
            and t.income_obj_id= #{incomeObjId}
        </if>
        <if test="feeTypeCd !=null and feeTypeCd != ''">
            and t.fee_type_cd= #{feeTypeCd}
        </if>
        <if test="feeTypeCds != null ">
            and t.fee_type_cd in
            <foreach collection="feeTypeCds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="startTime !=null ">
            and t.start_time= #{startTime}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="endTime !=null ">
            and t.end_time= #{endTime}
        </if>
        <if test="arrearsEndTime != null">
            and t.end_time &lt; #{arrearsEndTime}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
            and pfc.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="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </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" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="feeFlag !=null and feeFlag != ''">
            and t.fee_flag= #{feeFlag}
        </if>
        <if test="configId !=null and configId != ''">
            and t.config_id= #{configId}
        </if>
        <if test="payerObjType !=null and payerObjType != ''">
            and t.payer_obj_type = #{payerObjType}
        </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="updateFeeInfoInstance" parameterType="Map">
        update  pay_fee t set t.status_cd = #{statusCd}
<if test="newBId != null and newBId != ''">
,t.b_id = #{newBId}
</if>
<if test="amount !=null and amount != ''">
, t.amount= #{amount}
</if>
<if test="incomeObjId !=null and incomeObjId != ''">
, t.income_obj_id= #{incomeObjId}
</if>
<if test="feeTypeCd !=null and feeTypeCd != ''">
, t.fee_type_cd= #{feeTypeCd}
</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="communityId !=null and communityId != ''">
, t.community_id= #{communityId}
</if>
<if test="userId !=null and userId != ''">
, t.user_id= #{userId}
</if>
<if test="payerObjId !=null and payerObjId != ''">
, t.payer_obj_id= #{payerObjId}
</if>
 where 1=1 <if test="bId !=null and bId != ''">
and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
and t.fee_id= #{feeId}
</if>
        update pay_fee t set t.status_cd = #{statusCd}
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>
        <if test="amount !=null and amount != ''">
            , t.amount= #{amount}
        </if>
        <if test="incomeObjId !=null and incomeObjId != ''">
            , t.income_obj_id= #{incomeObjId}
        </if>
        <if test="feeTypeCd !=null and feeTypeCd != ''">
            , t.fee_type_cd= #{feeTypeCd}
        </if>
        <if test="startTime !=null ">
            , t.start_time= #{startTime}
        </if>
        <if test="endTime !=null">
            , t.end_time= #{endTime}
        </if>
        <if test="communityId !=null and communityId != ''">
            , t.community_id= #{communityId}
        </if>
        <if test="userId !=null and userId != ''">
            , t.user_id= #{userId}
        </if>
        <if test="payerObjId !=null and payerObjId != ''">
            , t.payer_obj_id= #{payerObjId}
        </if>
        <if test="state !=null and state != ''">
            , t.state= #{state}
        </if>
        <if test="feeFlag !=null and feeFlag != ''">
            , t.fee_flag= #{feeFlag}
        </if>
        where 1=1
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="feeId !=null and feeId != ''">
            and t.fee_id= #{feeId}
        </if>
    </update>
    <!-- 查询费用数量 add by wuxw 2018-07-03 -->
     <select id="queryFeesCount" parameterType="Map" resultType="Map">
        select  count(1) count
from pay_fee t
where 1 =1
<if test="amount !=null and amount != ''">
   and t.amount= #{amount}
</if>
<if test="incomeObjId !=null and incomeObjId != ''">
   and t.income_obj_id= #{incomeObjId}
</if>
<if test="feeTypeCd !=null and feeTypeCd != ''">
   and t.fee_type_cd= #{feeTypeCd}
</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="bId !=null and bId != ''">
   and t.b_id= #{bId}
</if>
<if test="feeId !=null and feeId != ''">
   and t.fee_id= #{feeId}
</if>
<if test="userId !=null and userId != ''">
   and t.user_id= #{userId}
</if>
<if test="payerObjId !=null and payerObjId != ''">
   and t.payer_obj_id= #{payerObjId}
</if>
    <select id="queryFeesCount" parameterType="Map" resultType="Map">
        select count(1) count
        from pay_fee t,pay_fee_config pfc,t_dict td1,t_dict td2,t_dict td3
        where 1 =1
        and t.fee_type_cd = pfc.fee_type_cd
        and t.config_id = pfc.config_id
        and pfc.status_cd = '0'
        and pfc.fee_type_cd = td1.status_cd
        and td1.table_name = 'pay_fee_config'
        and td1.table_columns = 'fee_type_cd'
        and t.state = td2.status_cd
        and td2.table_name = 'pay_fee'
        and td2.table_columns = 'state'
        and t.fee_flag = td3.status_cd
        and td3.table_name = 'pay_fee'
        and td3.table_columns = 'fee_flag'
        <if test="amount !=null and amount != ''">
            and t.amount= #{amount}
        </if>
        <if test="incomeObjId !=null and incomeObjId != ''">
            and t.income_obj_id= #{incomeObjId}
        </if>
        <if test="feeTypeCd !=null and feeTypeCd != ''">
            and t.fee_type_cd= #{feeTypeCd}
        </if>
        <if test="feeTypeCds != null ">
            and t.fee_type_cd in
            <foreach collection="feeTypeCds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="startTime !=null">
            and t.start_time= #{startTime}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="endTime !=null ">
            and t.end_time= #{endTime}
        </if>
        <if test="arrearsEndTime != null">
            and t.end_time &lt; #{arrearsEndTime}
        </if>
        <if test="noArrearsEndTime != null">
            and t.end_time &gt;  #{noArrearsEndTime}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
            and pfc.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="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </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" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="feeFlag !=null and feeFlag != ''">
            and t.fee_flag= #{feeFlag}
        </if>
        <if test="configId !=null and configId != ''">
            and t.config_id= #{configId}
        </if>
        <if test="payerObjType !=null and payerObjType != ''">
            and t.payer_obj_type = #{payerObjType}
        </if>
     </select>
    </select>
</mapper>