Pu Zhibing
2025-06-19 a05b419384e148fc950c77553816a2d05144f4ae
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?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.ruoyi.system.mapper.OrderMapper">
 
    <select id="getOrderList" resultType="com.ruoyi.system.api.model.Order">
        select
            a.id,
            a.code,
            b.vehicle_number as vehicleNumber,
            b.license_plate_color as licensePlateColor,
            d.name as enterpriseName,
            a.boarding_point,
            a.drop_off_point,
            a.passenger_mileage,
            c.name as driverName,
            a.order_delivery_time,
            a.order_amount
        from t_order a
        left join t_car b on (a.car_id = b.id)
        left join t_driver c on (a.driver_id = c.id)
        left join t_enterprise d on (a.enterprise_id = d.id)
        <where>
            <if test="null != item.orderDeliveryTimeStart and '' != item.orderDeliveryTimeStart and null != item.orderDeliveryTimeEnd and '' != item.orderDeliveryTimeEnd">
                and a.order_delivery_time between #{item.orderDeliveryTimeStart} and #{item.orderDeliveryTimeEnd}
            </if>
            <if test="null != item.code and '' != item.code">
                and a.code like CONCAT('%', #{item.code}, '%')
            </if>
            <if test="null != item.vehicleNumber and '' != item.vehicleNumber">
                and b.vehicle_number like CONCAT('%', #{item.vehicleNumber}, '%')
            </if>
            <if test="null != item.driverName and '' != item.driverName">
                and c.name like CONCAT('%', #{item.driverName}, '%')
            </if>
            <if test="null != item.enterpriseName and '' != item.enterpriseName">
                and d.name like CONCAT('%', #{item.enterpriseName}, '%')
            </if>
            <if test="null != item.boardingPoint and '' != item.boardingPoint">
                and a.boarding_point like CONCAT('%', #{item.boardingPoint}, '%')
            </if>
            <if test="null != item.dropOffPoint and '' != item.dropOffPoint">
                and a.drop_off_point like CONCAT('%', #{item.dropOffPoint}, '%')
            </if>
            <if test="null != item.passengerMileageStart and null != item.passengerMileageEnd">
                and a.passenger_mileage between #{item.passengerMileageStart} and #{item.passengerMileageEnd}
            </if>
        </where>
        order by a.order_time desc
    </select>
</mapper>