GarOrderMapper.xml 6.5 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.garbage.mapper.GarOrderMapper">

    <resultMap id="BaseResultMap" type="com.trash.garbage.pojo.domain.GarOrder">
        <id property="garOrderId" column="gar_order_id" jdbcType="VARCHAR"/>
        <result property="garOrderUserId" column="gar_order_user_id" jdbcType="VARCHAR"/>
        <result property="garOrderHandlerId" column="gar_order_handler_id" jdbcType="VARCHAR"/>
        <result property="garOrderAddress" column="gar_order_address" jdbcType="VARCHAR"/>
        <result property="garOrderAddressDetails" column="gar_order_address_details" jdbcType="VARCHAR"/>
        <result property="garOrderContactName" column="gar_order_contact_name" jdbcType="VARCHAR"/>
        <result property="garOrderTrashType" column="gar_order_trash_type" jdbcType="VARCHAR"/>
        <result property="garOrderContactTel" column="gar_order_contact_tel" jdbcType="VARCHAR"/>
        <result property="garOrderCompanyId" column="gar_order_company_id" jdbcType="VARCHAR"/>
        <result property="garOrderCompanyName" column="gar_order_company_name" jdbcType="VARCHAR"/>
        <result property="garOrderCompanyTel" column="gar_order_company_tel" jdbcType="VARCHAR"/>
        <result property="garOrderHandlerStatus" column="gar_order_handler_status" jdbcType="INTEGER"/>
        <result property="garOrderAgreementTime" column="gar_order_agreement_time" jdbcType="VARCHAR"/>
        <result property="garCreateTime" column="gar_create_time" jdbcType="TIMESTAMP"/>
        <result property="garUpdateTime" column="gar_update_time" jdbcType="TIMESTAMP"/>
        <result property="garCreateBy" column="gar_create_by" jdbcType="VARCHAR"/>
        <result property="garUpdateBy" column="gar_update_by" jdbcType="VARCHAR"/>
        <result property="garRemark" column="gar_remark" jdbcType="VARCHAR"/>
        <result property="garReason" column="gar_reason" jdbcType="VARCHAR"/>
        <result property="garCancelFlag" column="gar_cancel_flag" jdbcType="TINYINT"/>
        <result property="garEvaluateFlag" column="gar_evaluate_flag" jdbcType="TINYINT"/>
        <result property="garHandlerEvaluateFlag" column="gar_handler_evaluate_flag" jdbcType="TINYINT"/>
        <result property="garOrderMatchFlag" column="gar_order_match_flag" jdbcType="TINYINT"/>
        <result property="garLatitude" column="gar_latitude" jdbcType="DOUBLE"/>
        <result property="garLongitude" column="gar_longitude" jdbcType="DOUBLE"/>
        <result property="garCoordinate" column="gar_coordinate" jdbcType="DOUBLE"/>
        <result property="garRealCarCount" column="gar_real_car_count" jdbcType="INTEGER"/>
    </resultMap>

    <sql id="Base_Column_List">
        gar_order_id
        ,gar_order_user_id,gar_order_handler_id,
        gar_order_address,gar_order_address_details,gar_order_contact_name,
        gar_order_trash_type,gar_order_contact_tel,gar_order_company_id,
        gar_order_company_name,gar_order_company_tel,gar_order_handler_status,
        gar_order_agreement_time,gar_create_time,gar_update_time,
        gar_create_by,gar_update_by,gar_remark,gar_reason,gar_cancel_flag,
        gar_evaluate_flag,gar_handler_evaluate_flag,gar_order_match_flag,gar_coordinate,gar_longitude,gar_latitude,gar_real_car_count
    </sql>
    <select id="queryCleanNumberByEnterpriseIds" resultType="com.trash.garbage.pojo.domain.GarOrder">
        select gar_order_company_id, count(gar_order_company_id) as count
        from gar_order
        where gar_order_handler_status = #{status}
        <if test="list != null and list.size() > 0">
            and gar_order_company_id in
            <foreach collection="list" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
            group by gar_order_company_id
        </if>
        <if test="list == null or list.size() == 0">
            and 1 = 0
        </if>
    </select>
    <select id="queryOrderListByTelWithType" resultType="com.trash.garbage.pojo.vo.GarOrderDriverVo">
        SELECT
        `order`.gar_order_id ,`order`.gar_order_user_id,`order`.gar_order_handler_id,`order`.gar_coordinate,
        `order`.gar_order_address,`order`.gar_order_address_details,`order`.gar_order_contact_name,`order`.gar_longitude,
        `order`.gar_order_trash_type,`order`.gar_order_contact_tel,`order`.gar_order_company_id,`order`.gar_latitude,
        `order`.gar_order_company_name,`order`.gar_order_company_tel,`order`.gar_order_match_flag,
        `order`.gar_order_agreement_time,`order`.gar_remark,`order`.gar_handler_evaluate_flag,`order`.gar_order_handler_status gar_order_status,
        `handler`.gar_order_status gar_order_handler_status,`handler`.gar_cancel_flag,`handler`.gar_reason,`order`.gar_real_car_count
        FROM gar_order `order`
        INNER JOIN gar_order_match_handler `handler` ON `order`.gar_order_id = `handler`.gar_order_id
        <where>
            `handler`.gar_order_handler_tel = #{garUserTel}
            <if test="type != null">
                AND `handler`.gar_order_status = #{type}
            </if>
            <if test="cancelFlag != null">
                AND `handler`.gar_cancel_flag = #{cancelFlag}
            </if>
        </where>
    </select>
    <select id="queryOrderByTelWithType" resultType="com.trash.garbage.pojo.vo.GarOrderDriverVo">
        SELECT
        `order`.gar_order_id ,`order`.gar_order_user_id,`order`.gar_order_handler_id,`order`.gar_latitude,
        `order`.gar_order_address,`order`.gar_order_address_details,`order`.gar_order_contact_name,`order`.gar_longitude,
        `order`.gar_order_trash_type,`order`.gar_order_contact_tel,`order`.gar_order_company_id,`order`.gar_coordinate,
        `order`.gar_order_company_name,`order`.gar_order_company_tel,`order`.gar_order_match_flag,`order`.gar_real_car_count,
        `order`.gar_order_agreement_time,`order`.gar_remark,`order`.gar_handler_evaluate_flag,`order`.gar_order_handler_status gar_order_status,
        `handler`.gar_order_status gar_order_handler_status,`handler`.gar_cancel_flag,`handler`.gar_reason,`handler`.gar_handler_car_code
        FROM gar_order `order`
        INNER JOIN gar_order_match_handler `handler` ON `order`.gar_order_id = `handler`.gar_order_id AND `order`.gar_order_id = #{orderId}
        <where>
            `handler`.gar_order_handler_tel = #{garUserTel}
            <if test="cancelFlag != null">
                AND `handler`.gar_cancel_flag = #{cancelFlag}
            </if>
        </where>
    </select>
</mapper>