CarInoutDetailV1ServiceDaoImplMapper.xml 7.89 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="carInoutDetailV1ServiceDaoImpl">


    <!-- 保存车辆进出明细信息 add by wuxw 2018-07-03 -->
    <insert id="saveCarInoutDetailInfo" parameterType="Map">
        insert into car_inout_detail(
        inout_id,machine_id,machine_code,car_inout,pa_id,detail_id,car_num,community_id,remark,state,car_type,car_type_name,photo_jpg
        ) values (
        #{inoutId},#{machineId},#{machineCode},#{carInout},#{paId},#{detailId},#{carNum},#{communityId},#{remark},#{state},#{carType},#{carTypeName},#{photoJpg}
        )
    </insert>


    <!-- 查询车辆进出明细信息 add by wuxw 2018-07-03 -->
    <select id="getCarInoutDetailInfo" parameterType="Map" resultType="Map">
        select t.inout_id,t.inout_id inoutId,t.machine_id,t.machine_id machineId,t.machine_code,t.machine_code
        machineCode,t.car_inout,t.car_inout carInout,t.pa_id,t.pa_id paId,t.detail_id,t.detail_id
        detailId,t.car_num,t.car_num carNum,t.status_cd,t.status_cd statusCd,t.community_id,t.community_id communityId,t.state,
        ci.in_time inTime,ci.out_time outTime,
        (select max(cip.real_charge) from car_inout_payment cip where cip.inout_id = ci.inout_id and cip.community_id = ci.community_id)  realCharge,
        ci.pa_id paId,td.name stateName,t.remark,t.car_type carType
        ,pa.num areaNum,tcfc.fee_name feeName,tcfc.config_id configId,t.car_type_name carTypeName,ci.state inState,t.photo_jpg photoJpg
        from car_inout_detail t
        left join car_inout ci on t.inout_id = ci.inout_id and ci.status_cd = '0' and t.community_id = ci.community_id
        left join car_inout_payment cip on cip.inout_id = ci.inout_id and cip.community_id = ci.community_id
        left join t_dict td on t.state = td.status_cd and td.table_columns='state' and td.table_name = 'car_inout'
        left join parking_area pa on ci.pa_id = pa.pa_id and pa.status_cd = '0'
        left join temp_car_fee_config tcfc on pa.pa_id = tcfc.pa_id and tcfc.status_cd = '0'
        where 1 =1

        <if test="inoutId !=null and inoutId != ''">
            and t.inout_id= #{inoutId}
        </if>
        <if test="machineId !=null and machineId != ''">
            and t.machine_id= #{machineId}
        </if>
        <if test="machineCode !=null and machineCode != ''">
            and t.machine_code= #{machineCode}
        </if>
        <if test="carInout !=null and carInout != ''">
            and t.car_inout= #{carInout}
        </if>
        <if test="paId !=null and paId != ''">
            and t.pa_id= #{paId}
        </if>
        <if test="paIds !=null ">
            and t.pa_id in
            <foreach collection="paIds" item="item" index="index" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="carNum !=null and carNum != ''">
            and t.car_num like concat('%',#{carNum},'%')
        </if>
        <if test="carType !=null and carType != ''">
            and t.car_type= #{carType}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="startTime !=null and startTime != ''">
            and t.create_time &gt; #{startTime}
        </if>
        <if test="endTime !=null and endTime != ''">
            and t.create_time &lt; #{endTime}
        </if>
<!--        group by t.inout_id,t.machine_id,t.machine_code,t.car_inout,t.pa_id,t.detail_id,t.car_num,t.status_cd,t.community_id,-->
<!--        ci.in_time ,ci.out_time ,ci.pa_id ,td.name,t.remark,pa.num ,tcfc.fee_name ,tcfc.config_id,t.create_time,t.car_type_name,td.name,t.state,t.car_type-->
        order by t.detail_id desc
        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>

    </select>


    <!-- 修改车辆进出明细信息 add by wuxw 2018-07-03 -->
    <update id="updateCarInoutDetailInfo" parameterType="Map">
        update car_inout_detail t set t.status_cd = #{statusCd}
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>

        <if test="machineId !=null and machineId != ''">
            , t.machine_id= #{machineId}
        </if>
        <if test="machineCode !=null and machineCode != ''">
            , t.machine_code= #{machineCode}
        </if>
        <if test="carInout !=null and carInout != ''">
            , t.car_inout= #{carInout}
        </if>
        <if test="paId !=null and paId != ''">
            , t.pa_id= #{paId}
        </if>
        <if test="carNum !=null and carNum != ''">
            , t.car_num= #{carNum}
        </if>
        <if test="carType !=null and carType != ''">
            , t.car_type= #{carType}
        </if>
        <if test="carTypeName !=null and carTypeName != ''">
            , t.car_type_name= #{carTypeName}
        </if>
        <if test="communityId !=null and communityId != ''">
            , t.community_id= #{communityId}
        </if>
        <if test="remark !=null and remark != ''">
            , t.remark= #{remark}
        </if>
        <if test="photoJpg !=null and photoJpg != ''">
            , t.photo_jpg= #{photoJpg}
        </if>
        where 1=1
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="inoutId !=null and inoutId != ''">
            and t.inout_id= #{inoutId}
        </if>

    </update>

    <!-- 查询车辆进出明细数量 add by wuxw 2018-07-03 -->
    <select id="queryCarInoutDetailsCount" parameterType="Map" resultType="Map">
        select count(1) count
        from car_inout_detail t
<!--        left join car_inout ci on t.inout_id = ci.inout_id and ci.status_cd = '0' and t.community_id = ci.community_id-->
<!--        left join car_inout_payment cip on cip.inout_id = ci.inout_id and cip.community_id = ci.community_id-->
        where 1 = 1
        <if test="inoutId !=null and inoutId != ''">
            and t.inout_id= #{inoutId}
        </if>
        <if test="machineId !=null and machineId != ''">
            and t.machine_id= #{machineId}
        </if>
        <if test="machineCode !=null and machineCode != ''">
            and t.machine_code= #{machineCode}
        </if>
        <if test="carInout !=null and carInout != ''">
            and t.car_inout= #{carInout}
        </if>
        <if test="paId !=null and paId != ''">
            and t.pa_id= #{paId}
        </if>
        <if test="paIds !=null ">
            and t.pa_id in
            <foreach collection="paIds" item="item" index="index" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="detailId !=null and detailId != ''">
            and t.detail_id= #{detailId}
        </if>
        <if test="carNum !=null and carNum != ''">
            and t.car_num like concat('%',#{carNum},'%')
        </if>
        <if test="carType !=null and carType != ''">
            and t.car_type= #{carType}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="startTime !=null and startTime != ''">
            and t.create_time &gt; #{startTime}
        </if>
        <if test="endTime !=null and endTime != ''">
            and t.create_time &lt; #{endTime}
        </if>


    </select>

</mapper>