CarInfoMapper.xml 23 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="com.trash.carInfo.mapper.CarInfoMapper">
    
    <resultMap type="CarInfo" id="CarInfoResult">
        <result property="id"    column="id"    />
        <result property="companyId"    column="company_id"    />
        <result property="carType"    column="car_type"    />
        <result property="carCode"    column="car_code"    />
        <result property="carBrank"    column="car_brank"    />
        <result property="emissionStandard"    column="emission_standard"    />
        <result property="roadTransportDate"    column="road_transport_date"    />
        <result property="drivingLicenseDate"    column="driving_license_date"    />
        <result property="enterDate"    column="enter_date"    />
        <result property="farmeNumber"    column="farme_number"    />
        <result property="carIdentification"    column="car_identification"    />
        <result property="containerVolume"    column="container_volume"    />
        <result property="lengthWidthHeight"    column="length_width_height"    />
        <result property="carColor"    column="car_color"    />
        <result property="carEquipment"    column="car_equipment"    />
        <result property="remark"    column="remark"    />
        <result property="roadTransport"    column="road_transport"    />
        <result property="drivingLicense"    column="driving_license"    />
        <result property="carFront"    column="car_front"    />
        <result property="carLeft"    column="car_left"    />
        <result property="carBehind"    column="car_behind"    />
        <result property="carRight"    column="car_right"    />
        <result property="drivers"    column="drivers"    />
        <result property="status"    column="status"    />
        <result property="createTime"    column="create_time"    />
        <result property="createBy"    column="create_by"    />
        <result property="updateTime"    column="update_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="creditStatus"    column="credit_status"    />
        <result property="qrCode"    column="qr_code"    />
        <result property="isDel"    column="is_del"    />
    </resultMap>

    <resultMap type="CarInfoVo" id="CarInfoVoResult">
        <result property="id"    column="id"    />
        <result property="companyId"    column="company_id"    />
        <result property="carType"    column="car_type"    />
        <result property="carCode"    column="car_code"    />
        <result property="carBrank"    column="car_brank"    />
        <result property="emissionStandard"    column="emission_standard"    />
        <result property="roadTransportDate"    column="road_transport_date"    />
        <result property="drivingLicenseDate"    column="driving_license_date"    />
        <result property="enterDate"    column="enter_date"    />
        <result property="farmeNumber"    column="farme_number"    />
        <result property="carIdentification"    column="car_identification"    />
        <result property="containerVolume"    column="container_volume"    />
        <result property="lengthWidthHeight"    column="length_width_height"    />
        <result property="carColor"    column="car_color"    />
        <result property="carEquipment"    column="car_equipment"    />
        <result property="remark"    column="remark"    />
        <result property="roadTransport"    column="road_transport"    />
        <result property="drivingLicense"    column="driving_license"    />
        <result property="carFront"    column="car_front"    />
        <result property="carLeft"    column="car_left"    />
        <result property="carBehind"    column="car_behind"    />
        <result property="carRight"    column="car_right"    />
        <result property="drivers"    column="drivers"    />
        <result property="status"    column="status"    />
        <result property="createTime"    column="create_time"    />
        <result property="createBy"    column="create_by"    />
        <result property="updateTime"    column="update_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="creditStatus"    column="credit_status"    />
        <result property="qrCode"    column="qr_code"    />
        <result property="companyName"    column="companyName"    />
        <result property="driversName"    column="driversName"    />
    </resultMap>

    <sql id="selectCarInfoVo">
        select id, company_id, car_type, car_code, car_brank, emission_standard, road_transport_date, driving_license_date, enter_date, farme_number, car_identification, container_volume, car_color, car_equipment, remark, road_transport, driving_license, car_front, car_left, car_behind, car_right, drivers, status, create_time, create_by, update_time, update_by, credit_status, qr_code,is_del,length_width_height from car_info
    </sql>

    <sql id="selectCarInfoForCompanyVo">
        select car.id,
               company_id,
               car_type,
               car_code,
               car_brank,
               emission_standard,
               road_transport_date,
               driving_license_date,
               car.enter_date,
               farme_number,
               car_identification,
               container_volume,
               length_width_height,
               car_color,
               car_equipment,
               car.remark,
               road_transport,
               driving_license,
               car_front,
               car_left,
               car_behind,
               car_right,
               drivers,
               car.status,
               car.create_time,
               car.create_by,
               car.update_time,
               car.update_by,
               car.credit_status,
               car.qr_code,
               c.name companyName,
               d.driversName
        from car_info car
                 left join transportation_enterprise c on car.company_id = c.id
                 left join (select cdr.car_id, GROUP_CONCAT(name) driversName
                            from car_driver_relation cdr
                                     left join driver d on d.id = cdr.driver_id
                            group by cdr.car_id) d on d.car_id = car.id
    </sql>

    <select id="selectCarInfoList" parameterType="CarInfoVo" resultMap="CarInfoVoResult">
        <include refid="selectCarInfoForCompanyVo"/>
        <where>
            <if test="companyName != null   and companyName != ''"> and c.name like concat('%',#{companyName},'%')</if>
            <if test="carType != null  and carType != ''"> and car_type = #{carType}</if>
            <if test="carCode != null  and carCode != ''"> and car_code like concat('%',#{carCode},'%')</if>
            <if test="carBrank != null  and carBrank != ''"> and car_brank like concat('%',#{carBrank},'%')</if>
            <if test="emissionStandard != null  and emissionStandard != ''"> and emission_standard = #{emissionStandard}</if>
            <if test="roadTransportDate != null "> and road_transport_date = #{roadTransportDate}</if>
            <if test="drivingLicenseDate != null "> and driving_license_date = #{drivingLicenseDate}</if>
            <if test="enterDate != null "> and enter_date = #{enterDate}</if>
            <if test="farmeNumber != null  and farmeNumber != ''"> and farme_number = #{farmeNumber}</if>
            <if test="carIdentification != null  and carIdentification != ''"> and car_identification = #{carIdentification}</if>
            <if test="containerVolume != null  and containerVolume != ''"> and container_volume = #{containerVolume}</if>
            <if test="carColor != null  and carColor != ''"> and car_color = #{carColor}</if>
            <if test="carEquipment != null  and carEquipment != ''"> and car_equipment = #{carEquipment}</if>
            <if test="roadTransport != null  and roadTransport != ''"> and road_transport = #{roadTransport}</if>
            <if test="drivingLicense != null  and drivingLicense != ''"> and driving_license = #{drivingLicense}</if>
            <if test="carFront != null  and carFront != ''"> and car_front = #{carFront}</if>
            <if test="carLeft != null  and carLeft != ''"> and car_left = #{carLeft}</if>
            <if test="carBehind != null  and carBehind != ''"> and car_behind = #{carBehind}</if>
            <if test="carRight != null  and carRight != ''"> and car_right = #{carRight}</if>
            <if test="drivers != null  and drivers != ''"> and drivers = #{drivers}</if>
            <if test="status != null "> and car.status = #{status}</if>
            <if test="creditStatus != null  and creditStatus != ''"> and car.credit_status = #{creditStatus}</if>
            <if test="isDel != null"> and car.is_del = #{isDel}</if>
        </where>
    </select>

    <select id="selectCarInfoListFront" parameterType="CarInfoVo" resultMap="CarInfoVoResult">
        <include refid="selectCarInfoForCompanyVo"/>
        <where>
            <if test="companyName != null   and companyName != ''"> and c.name like concat('%',#{companyName},'%')</if>
            <if test="carType != null  and carType != ''"> and car_type = #{carType}</if>
            <if test="carCode != null  and carCode != ''"> and car_code like concat('%',#{carCode},'%')</if>
            <if test="carBrank != null  and carBrank != ''"> and car_brank like concat('%',#{carBrank},'%')</if>
            <if test="emissionStandard != null  and emissionStandard != ''"> and emission_standard = #{emissionStandard}</if>
            <if test="roadTransportDate != null "> and road_transport_date = #{roadTransportDate}</if>
            <if test="drivingLicenseDate != null "> and driving_license_date = #{drivingLicenseDate}</if>
            <if test="enterDate != null "> and enter_date = #{enterDate}</if>
            <if test="farmeNumber != null  and farmeNumber != ''"> and farme_number = #{farmeNumber}</if>
            <if test="carIdentification != null  and carIdentification != ''"> and car_identification = #{carIdentification}</if>
            <if test="containerVolume != null  and containerVolume != ''"> and container_volume = #{containerVolume}</if>
            <if test="carColor != null  and carColor != ''"> and car_color = #{carColor}</if>
            <if test="carEquipment != null  and carEquipment != ''"> and car_equipment = #{carEquipment}</if>
            <if test="roadTransport != null  and roadTransport != ''"> and road_transport = #{roadTransport}</if>
            <if test="drivingLicense != null  and drivingLicense != ''"> and driving_license = #{drivingLicense}</if>
            <if test="carFront != null  and carFront != ''"> and car_front = #{carFront}</if>
            <if test="carLeft != null  and carLeft != ''"> and car_left = #{carLeft}</if>
            <if test="carBehind != null  and carBehind != ''"> and car_behind = #{carBehind}</if>
            <if test="carRight != null  and carRight != ''"> and car_right = #{carRight}</if>
            <if test="drivers != null  and drivers != ''"> and drivers = #{drivers}</if>
            <if test="status != null "> and car.status = #{status}</if>
            <if test="creditStatus != null  and creditStatus != ''"> and car.credit_status = #{creditStatus}</if>
            <if test="isDel != null"> and car.is_del = #{isDel}</if>
            <if test="companyId != null"> and car.company_id = #{companyId}</if>
        </where>
    </select>
    
    <select id="selectCarInfoById" parameterType="Long" resultMap="CarInfoResult">
        <include refid="selectCarInfoVo"/>
        where id = #{id} and is_del = 1
    </select>

    <select id="selectCarInfoByIdStr" parameterType="String" resultMap="CarInfoResult">
        <include refid="selectCarInfoVo"/>
        where id = #{id}
    </select>
    
    
    <select id="selectByCompanyId" parameterType="Long" resultMap="CarInfoVoResult">
        <include refid="selectCarInfoForCompanyVo"/>
        where car.company_id=#{companyId} and is_del = 1
    </select>
    
        
    <insert id="insertCarInfo" parameterType="CarInfo" useGeneratedKeys="true" keyProperty="id">
        insert into car_info
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="companyId != null">company_id,</if>
            <if test="carType != null">car_type,</if>
            <if test="carCode != null">car_code,</if>
            <if test="carBrank != null">car_brank,</if>
            <if test="emissionStandard != null">emission_standard,</if>
            <if test="roadTransportDate != null">road_transport_date,</if>
            <if test="drivingLicenseDate != null">driving_license_date,</if>
            <if test="enterDate != null">enter_date,</if>
            <if test="farmeNumber != null">farme_number,</if>
            <if test="carIdentification != null">car_identification,</if>
            <if test="containerVolume != null">container_volume,</if>
            <if test="carColor != null">car_color,</if>
            <if test="carEquipment != null">car_equipment,</if>
            <if test="remark != null">remark,</if>
            <if test="roadTransport != null">road_transport,</if>
            <if test="drivingLicense != null">driving_license,</if>
            <if test="carFront != null">car_front,</if>
            <if test="carLeft != null">car_left,</if>
            <if test="carBehind != null">car_behind,</if>
            <if test="carRight != null">car_right,</if>
            <if test="drivers != null">drivers,</if>
            <if test="status != null">status,</if>
            <if test="createTime != null">create_time,</if>
            <if test="createBy != null">create_by,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="updateBy != null">update_by,</if>
            <if test="creditStatus != null">credit_status,</if>
            <if test="qrCode != null">qr_code,</if>
            <if test="lengthWidthHeight != null">length_width_height,</if>
            <if test="isDel != null">is_del,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="companyId != null">#{companyId},</if>
            <if test="carType != null">#{carType},</if>
            <if test="carCode != null">#{carCode},</if>
            <if test="carBrank != null">#{carBrank},</if>
            <if test="emissionStandard != null">#{emissionStandard},</if>
            <if test="roadTransportDate != null">#{roadTransportDate},</if>
            <if test="drivingLicenseDate != null">#{drivingLicenseDate},</if>
            <if test="enterDate != null">#{enterDate},</if>
            <if test="farmeNumber != null">#{farmeNumber},</if>
            <if test="carIdentification != null">#{carIdentification},</if>
            <if test="containerVolume != null">#{containerVolume},</if>
            <if test="carColor != null">#{carColor},</if>
            <if test="carEquipment != null">#{carEquipment},</if>
            <if test="remark != null">#{remark},</if>
            <if test="roadTransport != null">#{roadTransport},</if>
            <if test="drivingLicense != null">#{drivingLicense},</if>
            <if test="carFront != null">#{carFront},</if>
            <if test="carLeft != null">#{carLeft},</if>
            <if test="carBehind != null">#{carBehind},</if>
            <if test="carRight != null">#{carRight},</if>
            <if test="drivers != null">#{drivers},</if>
            <if test="status != null">#{status},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="updateBy != null">#{updateBy},</if>
            <if test="creditStatus != null">#{creditStatus},</if>
            <if test="qrCode != null">#{qrCode},</if>
            <if test="lengthWidthHeight != null">#{lengthWidthHeight},</if>
            <if test="isDel != null">#{isDel},</if>
         </trim>
    </insert>


    <insert id="saveCarInfo" parameterType="CarInfo" useGeneratedKeys="true" keyProperty="id">
        insert into car_info
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="companyId != null">company_id,</if>
            <if test="carType != null">car_type,</if>
            <if test="carCode != null">car_code,</if>
            <if test="carBrank != null">car_brank,</if>
            <if test="emissionStandard != null">emission_standard,</if>
            <if test="roadTransportDate != null">road_transport_date,</if>
            <if test="drivingLicenseDate != null">driving_license_date,</if>
            <if test="enterDate != null">enter_date,</if>
            <if test="farmeNumber != null">farme_number,</if>
            <if test="carIdentification != null">car_identification,</if>
            <if test="containerVolume != null">container_volume,</if>
            <if test="carColor != null">car_color,</if>
            <if test="carEquipment != null">car_equipment,</if>
            <if test="remark != null">remark,</if>
            <if test="roadTransport != null">road_transport,</if>
            <if test="drivingLicense != null">driving_license,</if>
            <if test="carFront != null">car_front,</if>
            <if test="carLeft != null">car_left,</if>
            <if test="carBehind != null">car_behind,</if>
            <if test="carRight != null">car_right,</if>
            <if test="drivers != null">drivers,</if>
            <if test="status != null">status,</if>
            <if test="createTime != null">create_time,</if>
            <if test="createBy != null">create_by,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="updateBy != null">update_by,</if>
            <if test="creditStatus != null">credit_status,</if>
            <if test="qrCode != null">qr_code,</if>
            <if test="lengthWidthHeight != null">length_width_height,</if>
            <if test="isDel != null">is_del,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id},</if>
            <if test="companyId != null">#{companyId},</if>
            <if test="carType != null">#{carType},</if>
            <if test="carCode != null">#{carCode},</if>
            <if test="carBrank != null">#{carBrank},</if>
            <if test="emissionStandard != null">#{emissionStandard},</if>
            <if test="roadTransportDate != null">#{roadTransportDate},</if>
            <if test="drivingLicenseDate != null">#{drivingLicenseDate},</if>
            <if test="enterDate != null">#{enterDate},</if>
            <if test="farmeNumber != null">#{farmeNumber},</if>
            <if test="carIdentification != null">#{carIdentification},</if>
            <if test="containerVolume != null">#{containerVolume},</if>
            <if test="carColor != null">#{carColor},</if>
            <if test="carEquipment != null">#{carEquipment},</if>
            <if test="remark != null">#{remark},</if>
            <if test="roadTransport != null">#{roadTransport},</if>
            <if test="drivingLicense != null">#{drivingLicense},</if>
            <if test="carFront != null">#{carFront},</if>
            <if test="carLeft != null">#{carLeft},</if>
            <if test="carBehind != null">#{carBehind},</if>
            <if test="carRight != null">#{carRight},</if>
            <if test="drivers != null">#{drivers},</if>
            <if test="status != null">#{status},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="updateBy != null">#{updateBy},</if>
            <if test="creditStatus != null">#{creditStatus},</if>
            <if test="qrCode != null">#{qrCode},</if>
            <if test="lengthWidthHeight != null">#{lengthWidthHeight},</if>
            <if test="isDel != null">#{isDel},</if>
        </trim>
    </insert>

    <update id="updateCarInfo" parameterType="CarInfo">
        update car_info
        <trim prefix="SET" suffixOverrides=",">
            <if test="companyId != null">company_id = #{companyId},</if>
            <if test="carType != null">car_type = #{carType},</if>
            <if test="carCode != null">car_code = #{carCode},</if>
            <if test="carBrank != null">car_brank = #{carBrank},</if>
            <if test="emissionStandard != null">emission_standard = #{emissionStandard},</if>
            <if test="roadTransportDate != null">road_transport_date = #{roadTransportDate},</if>
            <if test="drivingLicenseDate != null">driving_license_date = #{drivingLicenseDate},</if>
            <if test="enterDate != null">enter_date = #{enterDate},</if>
            <if test="farmeNumber != null">farme_number = #{farmeNumber},</if>
            <if test="carIdentification != null">car_identification = #{carIdentification},</if>
            <if test="containerVolume != null">container_volume = #{containerVolume},</if>
            <if test="carColor != null">car_color = #{carColor},</if>
            <if test="carEquipment != null">car_equipment = #{carEquipment},</if>
            <if test="remark != null">remark = #{remark},</if>
            <if test="roadTransport != null">road_transport = #{roadTransport},</if>
            <if test="drivingLicense != null">driving_license = #{drivingLicense},</if>
            <if test="carFront != null">car_front = #{carFront},</if>
            <if test="carLeft != null">car_left = #{carLeft},</if>
            <if test="carBehind != null">car_behind = #{carBehind},</if>
            <if test="carRight != null">car_right = #{carRight},</if>
            <if test="drivers != null">drivers = #{drivers},</if>
            <if test="status != null">status = #{status},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="createBy != null">create_by = #{createBy},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
            <if test="updateBy != null">update_by = #{updateBy},</if>
            <if test="creditStatus != null">credit_status = #{creditStatus},</if>
            <if test="qrCode != null">qr_code = #{qrCode},</if>
            <if test="lengthWidthHeight != null">length_width_height = #{lengthWidthHeight},</if>
            <if test="isDel != null">is_del = #{isDel},</if>
        </trim>
        where id = #{id}
    </update>

    <update id="deleteCarInfoById" parameterType="Long">
        update car_info set is_del = 0 where id = #{id}
    </update>

    <update id="deleteCarInfoByIds" parameterType="String">
        update car_info set is_del = 0 where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </update>


    <insert id="addCarDriverRelation" parameterType="CarDriverRelation">
        insert into car_driver_relation(car_id,driver_id)
        values(#{carId},#{driverId})
    </insert>

    <delete id="deleteCarDriverRelationByCarId" parameterType="String">
        delete from car_driver_relation where car_id = #{carId}
    </delete>
</mapper>