feat(order): 查询我的订单列表增加司机视角
- 修改 OrderRideMapper.xml,增加查询司机接单的 SQL
- 在 OrderWarpper 中添加 rideUserType 字段,用于区分乘车用户类型
- 更新 queryMyOrderList 方法,合并乘客和司机的订单列表
| | |
| | | </select> |
| | | |
| | | <select id="queryMyOrderList" resultType="java.util.Map"> |
| | | select |
| | | id as orderId, |
| | | DATE_FORMAT(addTime, '%Y-%m-%d %H:%i') as orderTime, |
| | | DATE_FORMAT(startTime, '%m月%d日 %H:%i') as time, |
| | | startName as startAddress, |
| | | endName as endAddress, |
| | | driverId as driverId, |
| | | (8) as orderType, |
| | | state as state |
| | | from app_order_ride where userId = #{uid} order by addTime desc limit #{pageNum}, #{size} |
| | | SELECT |
| | | * |
| | | FROM |
| | | ( |
| | | SELECT |
| | | id AS orderId, |
| | | DATE_FORMAT( addTime, '%Y-%m-%d %H:%i' ) AS orderTime, |
| | | DATE_FORMAT( startTime, '%m月%d日 %H:%i' ) AS TIME, |
| | | startName AS startAddress, |
| | | endName AS endAddress, |
| | | driverId AS driverId, |
| | | ( 8 ) AS orderType, |
| | | 1 AS rideUserType, |
| | | state AS state |
| | | FROM |
| | | app_order_ride |
| | | WHERE |
| | | userId = #{uid} |
| | | |
| | | UNION all |
| | | |
| | | SELECT |
| | | t1.id AS orderId, |
| | | DATE_FORMAT( t1.addTime, '%Y-%m-%d %H:%i' ) AS orderTime, |
| | | DATE_FORMAT( t1.startTime, '%m月%d日 %H:%i' ) AS TIME, |
| | | t1.startName AS startAddress, |
| | | t1.endName AS endAddress, |
| | | t1.driverId AS driverId, |
| | | ( 8 ) AS orderType, |
| | | 2 AS rideUserType, |
| | | t1.state AS state |
| | | FROM |
| | | app_order_travel t1 |
| | | LEFT JOIN t_user t2 ON t1.driverId = t2.driverId |
| | | WHERE |
| | | t2.id = #{uid} |
| | | ) as t |
| | | ORDER BY |
| | | t.orderTime DESC |
| | | LIMIT #{pageNum}, #{size} |
| | | </select> |
| | | </mapper> |
| | |
| | | @ApiModelProperty("乘车类型(1=独享,2=一口价,3=拼车)") |
| | | private Integer rideType; |
| | | |
| | | @ApiModelProperty("乘车用户类型(1=个人,2=司机)") |
| | | private Integer rideUserType; |
| | | |
| | | public Integer getRideUserType() { |
| | | return rideUserType; |
| | | } |
| | | |
| | | public void setRideUserType(Integer rideUserType) { |
| | | this.rideUserType = rideUserType; |
| | | } |
| | | |
| | | public Integer getRideType() { |
| | | return rideType; |
| | | } |
| | |
| | | orderWarpper.setArriveTimeExpect(null != map.get("arriveTimeExpect") ? String.valueOf(String.valueOf(map.get("arriveTimeExpect"))) : ""); |
| | | orderWarpper.setPickUpCode(null != map.get("pickUpCode") ? String.valueOf(map.get("pickUpCode")) : ""); |
| | | orderWarpper.setEndServiceTime(null != map.get("endServiceTime") ? String.valueOf(map.get("endServiceTime")) : ""); |
| | | orderWarpper.setEndServiceTime(null != map.get("endServiceTime") ? String.valueOf(map.get("endServiceTime")) : ""); |
| | | orderWarpper.setRideUserType(null != map.get("rideUserType") ? Integer.valueOf(String.valueOf(map.get("companyId"))) : 0); |
| | | list.add(orderWarpper); |
| | | } |
| | | } |