| package com.stylefeng.guns.modular.crossCity.server; | 
|   | 
| import com.baomidou.mybatisplus.service.IService; | 
| import com.stylefeng.guns.modular.crossCity.model.OrderCrossCity; | 
| import com.stylefeng.guns.modular.crossCity.warpper.OrderCrossCityWarpper; | 
| import com.stylefeng.guns.modular.system.model.OrderPosition; | 
| import com.stylefeng.guns.modular.system.util.ResultUtil; | 
| import com.stylefeng.guns.modular.system.warpper.BaseWarpper; | 
| import com.stylefeng.guns.modular.taxi.model.OrderTaxi; | 
|   | 
| import java.util.List; | 
| import java.util.Map; | 
|   | 
| public interface IOrderCrossCityService extends IService<OrderCrossCity> { | 
|   | 
|   | 
|     /** | 
|      * 获取司机的抢单页面订单详情 | 
|      * @param orderId | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     Map<String, Object> queryPushOrder(Integer orderId) throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 获取司机端首页订单列表 | 
|      * @param state     1=服务中,2=待服务(30分钟定义预约) | 
|      * @param driverId | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     List<Map<String, Object>> queryOrderList(Integer state, Integer driverId) throws Exception; | 
|   | 
|   | 
|   | 
|     /** | 
|      * 获取司机端我的订单列表 | 
|      * @param state     1=全部,2=待支付,3=已取消 | 
|      * @param uid | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     List<Map<String, Object>> queryMyAllOrder(Integer state, Integer uid) throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 获取订单详情页(服务中的页面) | 
|      * @param orderId | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     Map<String, Object> queryOrderInfo(Integer orderId) throws Exception; | 
|   | 
|   | 
|   | 
|     /** | 
|      * 走订单流程操作 | 
|      * @param orderId | 
|      * @param state | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     ResultUtil process(Integer orderId, Integer state, Double lon, Double lat, String address) throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 获取订单明细 | 
|      * @param orderId | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     Map<String, Object> queryOrderCrossCityInfo(Integer orderId) throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 修改跨城订单顺序 | 
|      * @param orderId | 
|      * @throws Exception | 
|      */ | 
|     void setOrderCrossCitySort(Integer orderId) throws Exception; | 
|   | 
|   | 
|   | 
|   | 
|     /** | 
|      * 跨城下单操作 | 
|      * @param orderCrossCityWarpper | 
|      * @param uid | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     ResultUtil<BaseWarpper> orderCrossCity(OrderCrossCityWarpper orderCrossCityWarpper, Integer uid) throws Exception; | 
|   | 
|   | 
|   | 
|   | 
|     /** | 
|      * 扫码支付回调处理 | 
|      * @param orderId       订单id | 
|      * @param order_id      工行订单号 | 
|      * @throws Exception | 
|      */ | 
|     void generatePayCallback(Integer orderId, String order_id) throws Exception; | 
|   | 
|   | 
|   | 
|     /** | 
|      * 计算支付金额 | 
|      * @param startLonLat | 
|      * @param endLonLat | 
|      * @param peopleNumber | 
|      * @param travelMode | 
|      * @param lineId | 
|      * @param serverCarModelId | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     ResultUtil queryOrderMoney(String startLonLat, String endLonLat, Integer peopleNumber, Integer travelMode, Integer lineId, | 
|                                Integer serverCarModelId, Integer totalSeat, String seatNumber) throws Exception; | 
|   | 
|   | 
|   | 
|     /** | 
|      * 订单完成支付订单操作 | 
|      * @param payType | 
|      * @param orderId | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     ResultUtil payCrossCityOrder(Integer payType, Integer orderId, Integer couponId, Integer type)throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 支付完成后的订单处理 | 
|      * @param id            订单=id | 
|      * @param order_id      工行支付单号 | 
|      * @param type          1=微信,2=支付宝 | 
|      * @throws Exception | 
|      */ | 
|     void payOrderCrossCityCallback(Integer id, String order_id, Integer type) throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 计算已服务的实时里程 | 
|      */ | 
|     boolean calculateMileage(OrderPosition orderPosition) throws Exception; | 
|   | 
|   | 
|     List<OrderCrossCity> queryListOrder(Integer driverId, Integer lineShiftId, List<Integer> state, String day) throws Exception; | 
|   | 
|   | 
|     /** | 
|      * 获取所有快到期的预约单(出行时间在30分钟内) | 
|      * @return | 
|      * @throws Exception | 
|      */ | 
|     List<OrderCrossCity> queryMaturity() throws Exception; | 
| } |