| | |
| | | <!--用户顺风车订单 type :1待处理的订单,2根据线路、时间,人数综合匹配排序 3按时间排序最早,4距离最近排序,5价格最高 and r.startTime>=now()--> |
| | | <select id="getOrderRide" resultType="com.stylefeng.guns.modular.shunfeng.model.vo.OrderRideVo"> |
| | | select r.*,calculate_distance(#{lat},#{lon},r.startLat, r.startLon) as distance,u.avatar as headImg,u.sex,u.totalOrders,u.nickName as name, |
| | | r.id as userOrderId,t.id as driverOrderId from app_order_ride r |
| | | r.id as userOrderId,t.id as driverOrderId, r.startLon as lon, r.startLat as lat |
| | | from app_order_ride r |
| | | left join app_order_travel t on r.travelId=t.id |
| | | left join t_user u on r.userId=u.id |
| | | left join t_user u1 on r.driverId=u1.driverId |
| | |
| | | <!--获取用户身份和司机身份的订单 只需要按照时间排序--> |
| | | <select id="getOrderRideAndTravel" resultType="com.stylefeng.guns.modular.shunfeng.model.vo.OrderRideVo"> |
| | | select * from ( |
| | | select r.addTime,r.startTime,1 as type,r.state,r.startName,r.endName,r.userId,t.driverId,r.num,r.id as userOrderId,t.id as driverOrderId,r.money from app_order_ride r |
| | | select r.addTime,r.startTime,1 as type,r.state,r.startName,r.endName,r.userId,t.driverId,r.num,r.id as userOrderId,t.id as driverOrderId,r.money, r.startLon as lon, r.startLat as lat from app_order_ride r |
| | | left join app_order_travel t on r.travelId=t.id where r.userId=#{userId} |
| | | UNION |
| | | select t.addTime,t.startTime,2 as type,t.state,t.startName,t.endName,0,t.driverId,r.num,r.id as userOrderId,t.id as driverOrderId,0 as money from app_order_travel t |
| | | select t.addTime,t.startTime,2 as type,t.state,t.startName,t.endName,0,t.driverId,r.num,r.id as userOrderId,t.id as driverOrderId,0 as money, r.startLon as lon, r.startLat as lat from app_order_travel t |
| | | left join app_order_ride r on r.travelId=t.id where t.driverId=#{driverId} |
| | | ) o |
| | | order by o.addTime desc |
| | |
| | | <select id="getOrderInfo" resultType="com.stylefeng.guns.modular.shunfeng.model.vo.OrderRideInfoVo"> |
| | | select r.addTime,r.startTime,r.endName,r.startName,r.money,r.id as userOrderId,r.state,t.id as driverOrderId,r.isEvaluate,t.isComplaint, |
| | | r.num,r.userId,r.driverId ,u.avatar as headImg,CASE when r.isDai=1 then r.lxPhone else u.phone end as phone,u.sex,u.nickName as name,u.totalOrders, |
| | | calculate_distance(#{lat},#{lon},r.startLat, r.startLon) as distance |
| | | calculate_distance(#{lat},#{lon},r.startLat, r.startLon) as distance,r.startLat as lat, r.startLon as lon |
| | | from (select * from app_order_ride where id=#{userOrderId}) r |
| | | left join app_order_travel t on r.travelId=t.id |
| | | left join app_driver_ride d on d.id=r.driverId |