SELECT
t.uuid,
t.plate_num AS plateNum,
t.close_reason AS closeReason,
su.user_name AS closedBy,
t.closed_on AS closedOn,
a.name AS agentName,
c.short_name AS companyName,
t.brand_name AS brandName,
t.brand AS brand,
t.status AS status,
t.car_color AS carColor,
l.level_name AS levelName,
t.model,
t.car_no,
t.seats
FROM yy_car t
LEFT JOIN yy_car_level l ON t.car_level_uuid = l.uuid
LEFT JOIN yy_system_regional_agent a ON t.agent_uuid = a.uuid
LEFT JOIN yy_system_company c ON t.company_uuid = c.uuid
LEFT JOIN yy_driver d ON d.car_uuid = t.uuid
LEFT JOIN yy_system_user su ON t.closed_by = su.uuidLEFT JOIN yy_order o ON o.car_uuid = t.uuid
LEFT JOIN yy_order_detail od ON o.uuid = od.order_uuid
AND t.uuid = #{uuid}
AND t.city_uuid = #{cityUuid}
AND t.car_level_uuid = #{levelUuid}
AND ( t.plate_num like CONCAT(CONCAT('%',#{mix}),'%') OR EXISTS (SELECT 1 FROM
yy_driver d WHERE t.uuid = d.car_uuid AND ( d.name like CONCAT(CONCAT('%',#{mix}),'%') OR d.mobile like
CONCAT(CONCAT('%',#{mix}),'%'))))
AND t.appid = #{appid}
AND t.company_uuid = #{companyUuid}
AND l.car_type = #{carType}
AND t.agent_uuid = #{agentUuid}
and t.operation_remark = #{operationRemark}
AND t.status = 0
AND IFNULL(t.status,1) = 1
AND (
(FIND_IN_SET(2,#{driverPlaceReady}) AND (d.car_uuid IS NULL OR d.car_uuid = '') )
OR
(FIND_IN_SET(3,#{driverPlaceReady}) AND d.car_uuid IS NOT NULL AND d.car_uuid != '' )
)
AND (
(FIND_IN_SET(2,#{driverPlaceAlready}) AND (d.car_uuid IS NULL OR d.car_uuid = '') )
OR
(FIND_IN_SET(3,#{driverPlaceAlready}) AND d.car_uuid IS NOT NULL AND d.car_uuid != '' )
)
AND (
(FIND_IN_SET(2,#{currentStatus}) AND (o.sub_status<= 200 OR o.sub_status >= 500) )
OR
(FIND_IN_SET(3,#{currentStatus}) AND (o.sub_status> 200 AND o.sub_status <500))
)
DATE_FORMAT(od.depar_time,'%Y-%m-%d') = DATE_SUB(curdate(),INTERVAL -#{o} DAY)
GROUP BY t.uuidHAVING count(case when o.main_status = 1 OR o.main_status = 2 THEN 1 ELSE null end) = 0
HAVING count(case when o.main_status = 1 OR o.main_status = 2 THEN 1 ELSE null end) > 0ORDER BY t.created_on DESC,t.uuid