<?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.stylefeng.guns.modular.specialTrain.dao.OrderPrivateCarMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar">
|
<id column="id" property="id"/>
|
<result column="type" property="type"/>
|
<result column="crossCityOrderId" property="crossCityOrderId"/>
|
<result column="place" property="place"/>
|
<result column="userId" property="userId"/>
|
<result column="serverCarModelId" property="serverCarModelId"/>
|
<result column="driverId" property="driverId"/>
|
<result column="carId" property="carId"/>
|
<result column="orderNum" property="orderNum"/>
|
<result column="placementLon" property="placementLon"/>
|
<result column="placementLat" property="placementLat"/>
|
<result column="placementAddress" property="placementAddress"/>
|
<result column="startLon" property="startLon"/>
|
<result column="startLat" property="startLat"/>
|
<result column="startAddress" property="startAddress"/>
|
<result column="endLon" property="endLon"/>
|
<result column="endLat" property="endLat"/>
|
<result column="endAddress" property="endAddress"/>
|
<result column="boardingLon" property="boardingLon"/>
|
<result column="boardingLat" property="boardingLat"/>
|
<result column="boardingAddress" property="boardingAddress"/>
|
<result column="boardingTime" property="boardingTime"/>
|
<result column="getoffLon" property="getoffLon"/>
|
<result column="getoffLat" property="getoffLat"/>
|
<result column="getoffAddress" property="getoffAddress"/>
|
<result column="getoffTime" property="getoffTime"/>
|
<result column="mileage" property="mileage"/>
|
<result column="payManner" property="payManner"/>
|
<result column="payType" property="payType"/>
|
<result column="orderMoney" property="orderMoney"/>
|
<result column="startMileage" property="startMileage"/>
|
<result column="startMoney" property="startMoney"/>
|
<result column="mileageKilometers" property="mileageKilometers"/>
|
<result column="mileageMoney" property="mileageMoney"/>
|
<result column="duration" property="duration"/>
|
<result column="durationMoney" property="durationMoney"/>
|
<result column="wait" property="wait"/>
|
<result column="waitMoney" property="waitMoney"/>
|
<result column="longDistance" property="longDistance"/>
|
<result column="longDistanceMoney" property="longDistanceMoney"/>
|
<result column="parkMoney" property="parkMoney"/>
|
<result column="roadTollMoney" property="roadTollMoney"/>
|
<result column="redPacketMoney" property="redPacketMoney"/>
|
<result column="couponMoney" property="couponMoney"/>
|
<result column="redPacketId" property="redPacketId"/>
|
<result column="couponId" property="couponId"/>
|
<result column="discount" property="discount"/>
|
<result column="discountMoney" property="discountMoney"/>
|
<result column="activityId" property="activityId"/>
|
<result column="companyId" property="companyId"/>
|
<result column="payMoney" property="payMoney"/>
|
<result column="substitute" property="substitute"/>
|
<result column="passengers" property="passengers"/>
|
<result column="passengersPhone" property="passengersPhone"/>
|
<result column="state" property="state"/>
|
<result column="insertTime" property="insertTime"/>
|
<result column="travelTime" property="travelTime"/>
|
<result column="snatchOrderTime" property="snatchOrderTime"/>
|
<result column="setOutTime" property="setOutTime"/>
|
<result column="arriveTime" property="arriveTime"/>
|
<result column="startServiceTime" property="startServiceTime"/>
|
<result column="endServiceTime" property="endServiceTime"/>
|
<result column="orderType" property="orderType"/>
|
<result column="orderSource" property="orderSource"/>
|
<result column="invoiceId" property="invoiceId"/>
|
<result column="isReassign" property="isReassign"/>
|
<result column="reassignNotice" property="reassignNotice"/>
|
<result column="trackId" property="trackId"/>
|
<result column="isDelete" property="isDelete"/>
|
<result column="oldState" property="oldState"/>
|
<result column="telX" property="telX"/>
|
<result column="bindId" property="bindId"/>
|
</resultMap>
|
|
|
|
<select id="queryByState" resultType="OrderPrivateCar">
|
select
|
id as id,
|
`type` as `type`,
|
userId as userId,
|
serverCarModelId as serverCarModelId,
|
driverId as driverId,
|
carId as carId,
|
orderNum as orderNum,
|
placementLon as placementLon,
|
placementLat as placementLat,
|
placementAddress as placementAddress,
|
startLon as startLon,
|
startLat as startLat,
|
startAddress as startAddress,
|
endLon as endLon,
|
endLat as endLat,
|
endAddress as endAddress,
|
boardingLon as boardingLon,
|
boardingLat as boardingLat,
|
boardingAddress as boardingAddress,
|
boardingTime as boardingTime,
|
getoffLon as getoffLon,
|
getoffLat as getoffLat,
|
getoffAddress as getoffAddress,
|
getoffTime as getoffTime,
|
mileage as mileage,
|
payManner as payManner,
|
payType as payType,
|
orderMoney as orderMoney,
|
startMileage as startMileage,
|
startMoney as startMoney,
|
mileageKilometers as mileageKilometers,
|
mileageMoney as mileageMoney,
|
duration as duration,
|
durationMoney as durationMoney,
|
wait as wait,
|
waitMoney as waitMoney,
|
longDistance as longDistance,
|
longDistanceMoney as longDistanceMoney,
|
parkMoney as parkMoney,
|
roadTollMoney as roadTollMoney,
|
redPacketMoney as redPacketMoney,
|
couponMoney as couponMoney,
|
redPacketId as redPacketId,
|
couponId as couponId,
|
discount as discount,
|
discountMoney as discountMoney,
|
activityId as activityId,
|
companyId as companyId,
|
payMoney as payMoney,
|
substitute as substitute,
|
passengers as passengers,
|
passengersPhone as passengersPhone,
|
state as state,
|
insertTime as insertTime,
|
travelTime as travelTime,
|
snatchOrderTime as snatchOrderTime,
|
setOutTime as setOutTime,
|
arriveTime as arriveTime,
|
startServiceTime as startServiceTime,
|
endServiceTime as endServiceTime,
|
orderType as orderType,
|
orderSource as orderSource,
|
invoiceId as invoiceId,
|
isReassign as isReassign,
|
reassignNotice as reassignNotice,
|
trackId as trackId,
|
isDelete as isDelete,
|
oldState as oldState,
|
telX as telX,
|
bindId as bindId
|
from t_order_private_car where isDelete = 1 and userId = #{uid}
|
<if test="null != orderType">
|
and orderType = #{orderType}
|
</if>
|
<if test="null != state">
|
and state in
|
<foreach collection="state" item="item" index="index" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != type">
|
and `type` = #{type}
|
</if>
|
</select>
|
|
|
|
<select id="query" resultType="OrderPrivateCar">
|
select
|
id as id,
|
`type` as `type`,
|
userId as userId,
|
serverCarModelId as serverCarModelId,
|
driverId as driverId,
|
carId as carId,
|
orderNum as orderNum,
|
placementLon as placementLon,
|
placementLat as placementLat,
|
placementAddress as placementAddress,
|
startLon as startLon,
|
startLat as startLat,
|
startAddress as startAddress,
|
endLon as endLon,
|
endLat as endLat,
|
endAddress as endAddress,
|
boardingLon as boardingLon,
|
boardingLat as boardingLat,
|
boardingAddress as boardingAddress,
|
boardingTime as boardingTime,
|
getoffLon as getoffLon,
|
getoffLat as getoffLat,
|
getoffAddress as getoffAddress,
|
getoffTime as getoffTime,
|
mileage as mileage,
|
payManner as payManner,
|
payType as payType,
|
orderMoney as orderMoney,
|
startMileage as startMileage,
|
startMoney as startMoney,
|
mileageKilometers as mileageKilometers,
|
mileageMoney as mileageMoney,
|
duration as duration,
|
durationMoney as durationMoney,
|
wait as wait,
|
waitMoney as waitMoney,
|
longDistance as longDistance,
|
longDistanceMoney as longDistanceMoney,
|
parkMoney as parkMoney,
|
roadTollMoney as roadTollMoney,
|
redPacketMoney as redPacketMoney,
|
couponMoney as couponMoney,
|
redPacketId as redPacketId,
|
couponId as couponId,
|
discount as discount,
|
discountMoney as discountMoney,
|
activityId as activityId,
|
companyId as companyId,
|
payMoney as payMoney,
|
substitute as substitute,
|
passengers as passengers,
|
passengersPhone as passengersPhone,
|
state as state,
|
insertTime as insertTime,
|
travelTime as travelTime,
|
snatchOrderTime as snatchOrderTime,
|
setOutTime as setOutTime,
|
arriveTime as arriveTime,
|
startServiceTime as startServiceTime,
|
endServiceTime as endServiceTime,
|
orderType as orderType,
|
orderSource as orderSource,
|
invoiceId as invoiceId,
|
isReassign as isReassign,
|
reassignNotice as reassignNotice,
|
trackId as trackId,
|
isDelete as isDelete,
|
oldState as oldState,
|
telX as telX,
|
bindId as bindId
|
from t_order_private_car where isDelete = 1
|
<if test="null != start and null != end">
|
and insertTime between #{start} and #{end}
|
</if>
|
</select>
|
|
|
|
<select id="queryByState_" resultType="OrderPrivateCar">
|
select
|
id as id,
|
`type` as `type`,
|
userId as userId,
|
serverCarModelId as serverCarModelId,
|
driverId as driverId,
|
carId as carId,
|
orderNum as orderNum,
|
placementLon as placementLon,
|
placementLat as placementLat,
|
placementAddress as placementAddress,
|
startLon as startLon,
|
startLat as startLat,
|
startAddress as startAddress,
|
endLon as endLon,
|
endLat as endLat,
|
endAddress as endAddress,
|
boardingLon as boardingLon,
|
boardingLat as boardingLat,
|
boardingAddress as boardingAddress,
|
boardingTime as boardingTime,
|
getoffLon as getoffLon,
|
getoffLat as getoffLat,
|
getoffAddress as getoffAddress,
|
getoffTime as getoffTime,
|
mileage as mileage,
|
payManner as payManner,
|
payType as payType,
|
orderMoney as orderMoney,
|
startMileage as startMileage,
|
startMoney as startMoney,
|
mileageKilometers as mileageKilometers,
|
mileageMoney as mileageMoney,
|
duration as duration,
|
durationMoney as durationMoney,
|
wait as wait,
|
waitMoney as waitMoney,
|
longDistance as longDistance,
|
longDistanceMoney as longDistanceMoney,
|
parkMoney as parkMoney,
|
roadTollMoney as roadTollMoney,
|
redPacketMoney as redPacketMoney,
|
couponMoney as couponMoney,
|
redPacketId as redPacketId,
|
couponId as couponId,
|
discount as discount,
|
discountMoney as discountMoney,
|
activityId as activityId,
|
companyId as companyId,
|
payMoney as payMoney,
|
substitute as substitute,
|
passengers as passengers,
|
passengersPhone as passengersPhone,
|
state as state,
|
insertTime as insertTime,
|
travelTime as travelTime,
|
snatchOrderTime as snatchOrderTime,
|
setOutTime as setOutTime,
|
arriveTime as arriveTime,
|
startServiceTime as startServiceTime,
|
endServiceTime as endServiceTime,
|
orderType as orderType,
|
orderSource as orderSource,
|
invoiceId as invoiceId,
|
isReassign as isReassign,
|
reassignNotice as reassignNotice,
|
trackId as trackId,
|
isDelete as isDelete,
|
oldState as oldState,
|
telX as telX,
|
bindId as bindId
|
from t_order_private_car where isDelete = 1 and userId = #{uid}
|
<if test="null != state">
|
and state in
|
<foreach collection="state" item="item" index="index" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</if>
|
</select>
|
|
|
|
<select id="queryMyOrderList" resultType="map">
|
select
|
id as orderId,
|
DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as orderTime,
|
DATE_FORMAT(travelTime, '%m月%d日 %H:%i') as time,
|
startAddress as startAddress,
|
endAddress as endAddress,
|
driverId as driverId,
|
(1) as orderType,
|
state as state,
|
oldState as oldState
|
from t_order_private_car where userId = #{uid} order by insertTime desc limit #{pageNum}, #{size}
|
</select>
|
|
|
<select id="queryInvoiceOrder" resultType="map">
|
select
|
id as id,
|
DATE_FORMAT(travelTime, '%Y-%m-%d %H:%i') as time,
|
startAddress as startAddress,
|
endAddress as endAddress,
|
payMoney as payMoney,
|
('专车订单') as orderName,
|
if(invoiceId is null, 1, 2) as invoice,
|
unix_timestamp(insertTime) as insertTime,
|
(1) as orderType
|
from t_order_private_car where state in (8, 9)
|
<if test="type == 1">
|
and invoiceId is null and invoiceId in (select id from t_invoice where state != 2)
|
</if>
|
<if test="type == 2">
|
and invoiceId in (select id from t_invoice where state = 2)
|
</if>
|
<if test="null != startTime and null != endTime">
|
and travelTime between #{startTime} and #{endTime}
|
</if>
|
<if test="null != startMoney and null != endMoney">
|
and payMoney between #{startMoney} and #{endMoney}
|
</if>
|
<if test="null !=uid">
|
and userId = #{uid}
|
</if>
|
</select>
|
|
|
<select id="queryOrderInfo" resultType="map">
|
select
|
a.id as orderId,
|
a.type as type,
|
a.state as state,
|
DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime,
|
DATE_FORMAT(a.travelTime, '%m月%d日 %H:%i') as travelTime,
|
DATE_FORMAT(a.travelTime, '%Y-%m-%d %H:%i:%s') as travelTime1,
|
DATE_FORMAT(a.arriveTime, '%Y-%m-%d %H:%i:%s') as arriveTime,
|
a.startLon as startLon,
|
a.startLat as startLat,
|
a.startAddress as startAddress,
|
a.endLon as endLon,
|
a.endLat as endLat,
|
a.endAddress as endAddress,
|
a.driverId as driverId,
|
a.orderMoney as orderMoney,
|
a.startMileage as startMileage,
|
a.startMoney as startMoney,
|
a.mileageKilometers as mileageKilometers,
|
a.mileageMoney as mileageMoney,
|
a.duration as duration,
|
a.durationMoney as durationMoney,
|
a.wait as wait,
|
a.waitMoney as waitMoney,
|
a.longDistance as longDistance,
|
a.longDistanceMoney as longDistanceMoney,
|
a.parkMoney as parkMoney,
|
a.roadTollMoney as roadTollMoney,
|
a.redPacketMoney as redPacketMoney,
|
a.couponMoney as couponMoney,
|
a.discount as discount,
|
a.discountMoney as discountMoney,
|
a.payMoney as payMoney,
|
a.reassignNotice as reassignNotice,
|
a.oldState as oldState,
|
b.headImgUrl as driverAvatar,
|
b.`name` as driverName,
|
c.carLicensePlate as licensePlate,
|
c.carColor as carColor,
|
CONCAT(f.`name`, d.`name`) as brand,
|
((select sum(fraction) from t_order_evaluate where driverId = a.driverId) / (select count(id) from t_order_evaluate where driverId = a.driverId)) as score,
|
(
|
(select count(id) from t_order_private_car where driverId = a.driverId and state in (7, 8, 9)) +
|
(select count(id) from t_order_taxi where driverId = a.driverId and state in (7, 8, 9)) +
|
(select count(id) from t_order_cross_city where driverId = a.driverId and state in (6, 8, 9))
|
) as orderNum,
|
b.phone as driverPhone,
|
if(a.state = 12, (select money from t_order_cancel where orderId = a.id and orderType = 1 and state = 1 order by insertTime desc limit 0, 1), if(a.state = 10, (select money from t_order_cancel where orderId = a.id and orderType = 1 and state = 2 order by insertTime desc limit 0, 1), 0)) as cancelPayMoney,
|
if(a.state = 12, (select id from t_order_cancel where orderId = a.id and orderType = 1 and state = 1 order by insertTime desc limit 0, 1), 0) as cancelId,
|
g.fraction as orderScore,
|
g.content as evaluate,
|
a.telX as telX,
|
h.userType as cancelUserType,
|
h.money as cancelMoney,
|
h.reason as cancelReason,
|
h.remark as cancelRemark
|
from t_order_private_car a
|
left join t_driver b on (a.driverId = b.id)
|
left join t_car c on (a.carId = c.id)
|
left join t_car_model d on (c.carModelId = d.id)
|
left join t_car_brand f on (d.brandId = f.id)
|
left join t_order_evaluate g on (a.id = g.orderId and g.orderType = 1)
|
left join t_order_cancel h on (a.id = h.orderId and h.orderType = 1 and h.state = 2)
|
where a.id = #{orderId}
|
</select>
|
|
|
|
<select id="queryMyTravelRecord" resultType="map">
|
select
|
(payMoney * -1) as money,
|
DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as time,
|
('专车订单') as name,
|
UNIX_TIMESTAMP(insertTime) as insertTime
|
from t_order_private_car where payMoney != 0 and userId = #{uid} and state in (8, 9, 10, 11, 12)
|
</select>
|
|
|
<select id="queryRedEnvelope" resultType="map">
|
select
|
redPacketMoney as money,
|
DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as time,
|
('专车订单') as name,
|
UNIX_TIMESTAMP(insertTime) as insertTime
|
from t_order_private_car where userId = #{uid} and state in (8, 9) and redPacketId is not null
|
</select>
|
|
|
<select id="queryByDriver" resultType="OrderPrivateCar">
|
select
|
id as id,
|
`type` as `type`,
|
userId as userId,
|
serverCarModelId as serverCarModelId,
|
driverId as driverId,
|
carId as carId,
|
orderNum as orderNum,
|
placementLon as placementLon,
|
placementLat as placementLat,
|
placementAddress as placementAddress,
|
startLon as startLon,
|
startLat as startLat,
|
startAddress as startAddress,
|
endLon as endLon,
|
endLat as endLat,
|
endAddress as endAddress,
|
boardingLon as boardingLon,
|
boardingLat as boardingLat,
|
boardingAddress as boardingAddress,
|
boardingTime as boardingTime,
|
getoffLon as getoffLon,
|
getoffLat as getoffLat,
|
getoffAddress as getoffAddress,
|
getoffTime as getoffTime,
|
mileage as mileage,
|
payManner as payManner,
|
payType as payType,
|
orderMoney as orderMoney,
|
startMileage as startMileage,
|
startMoney as startMoney,
|
mileageKilometers as mileageKilometers,
|
mileageMoney as mileageMoney,
|
duration as duration,
|
durationMoney as durationMoney,
|
wait as wait,
|
waitMoney as waitMoney,
|
longDistance as longDistance,
|
longDistanceMoney as longDistanceMoney,
|
parkMoney as parkMoney,
|
roadTollMoney as roadTollMoney,
|
redPacketMoney as redPacketMoney,
|
couponMoney as couponMoney,
|
redPacketId as redPacketId,
|
couponId as couponId,
|
discount as discount,
|
discountMoney as discountMoney,
|
activityId as activityId,
|
companyId as companyId,
|
payMoney as payMoney,
|
substitute as substitute,
|
passengers as passengers,
|
passengersPhone as passengersPhone,
|
state as state,
|
insertTime as insertTime,
|
travelTime as travelTime,
|
snatchOrderTime as snatchOrderTime,
|
setOutTime as setOutTime,
|
arriveTime as arriveTime,
|
startServiceTime as startServiceTime,
|
endServiceTime as endServiceTime,
|
orderType as orderType,
|
orderSource as orderSource,
|
invoiceId as invoiceId,
|
isReassign as isReassign,
|
reassignNotice as reassignNotice,
|
trackId as trackId,
|
isDelete as isDelete,
|
oldState as oldState,
|
telX as telX,
|
bindId as bindId
|
from t_order_private_car where isDelete = 1 and driverId = #{driverId} and state in
|
<foreach collection="state" item="item" index="index" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</select>
|
</mapper>
|