From c6e83b9d48ffe43967e395eb6fc43e0d4f02fbfc Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 24 二月 2023 18:25:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java |   18 +++++++++
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/HallOrderList.java         |    2 -
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/OrderInfoWarpper.java      |    8 +++-
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/mapping/OrderMapper.xml        |   30 +++++++++++++++
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/IOrderService.java         |   10 ++++-
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java           |   32 ++++++++++++++-
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/OrderMapper.java               |    9 ++++
 7 files changed, 100 insertions(+), 9 deletions(-)

diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java
index 132e8a4..8b0bc8d 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java
@@ -6,6 +6,7 @@
 import com.supersavedriving.driver.modular.system.util.ResultUtil;
 import com.supersavedriving.driver.modular.system.warpper.AddOrderWarpper;
 import com.supersavedriving.driver.modular.system.warpper.HallOrderList;
+import com.supersavedriving.driver.modular.system.warpper.OrderInfoWarpper;
 import com.supersavedriving.driver.modular.system.warpper.ResponseWarpper;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -171,7 +172,16 @@
 
 
 
-    public ResponseWarpper<> queryOrderInfo(Long orderId, HttpServletRequest request){
+
+    @ResponseBody
+    @PostMapping("/api/order/queryOrderInfo")
+    @ServiceLog(name = "获取订单详情", url = "/api/order/queryOrderInfo")
+    @ApiOperation(value = "获取订单详情", tags = {"司机端-首页"}, notes = "")
+    @ApiImplicitParams({
+            @ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "long"),
+            @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+    })
+    public ResponseWarpper<OrderInfoWarpper> queryOrderInfo(Long orderId, HttpServletRequest request){
         if(null == orderId){
             return ResponseWarpper.success(ResultUtil.paranErr("orderId"));
         }
@@ -180,12 +190,28 @@
             if(null == uid){
                 return ResponseWarpper.success(ResultUtil.tokenErr());
             }
-            ResultUtil resultUtil = orderService.receiveOrder(uid, orderId);
-            return ResponseWarpper.success(resultUtil);
+            OrderInfoWarpper orderInfoWarpper = orderService.queryOrderInfo(uid, orderId);
+            return ResponseWarpper.success(orderInfoWarpper);
         }catch (Exception e){
             e.printStackTrace();
             return new ResponseWarpper(500, e.getMessage());
         }
     }
 
+
+
+    public ResponseWarpper driverProcessOperations(Long orderId, Integer state, HttpServletRequest request){
+        if(null == orderId){
+            return ResponseWarpper.success(ResultUtil.paranErr("orderId"));
+        }
+        if(null == state){
+            return ResponseWarpper.success(ResultUtil.paranErr("state"));
+        }
+        try {
+
+        }catch (Exception e){
+            e.printStackTrace();
+            return new ResponseWarpper(500, e.getMessage());
+        }
+    }
 }
diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/OrderMapper.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/OrderMapper.java
index c627f8b..2317b74 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/OrderMapper.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/OrderMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 import com.supersavedriving.driver.modular.system.model.Order;
 import com.supersavedriving.driver.modular.system.warpper.HallOrderList;
+import com.supersavedriving.driver.modular.system.warpper.OrderInfoWarpper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -17,4 +18,12 @@
      * @return
      */
     List<HallOrderList> queryOrderHall(@Param("pageNum") Integer pageNum, @Param("pageSize") Integer pageSize);
+
+
+    /**
+     * 获取订单详情
+     * @param orderId
+     * @return
+     */
+    OrderInfoWarpper queryOrderInfo(@Param("orderId") Long orderId);
 }
diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/mapping/OrderMapper.xml b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/mapping/OrderMapper.xml
index 344442d..f2b1ab6 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/mapping/OrderMapper.xml
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/dao/mapping/OrderMapper.xml
@@ -80,4 +80,34 @@
         left join t_app_user b on (a.userId = b.id)
         where a.`status` = 1 and a.hallOrder = 1 order by a.createTime desc
     </select>
+
+
+
+    <select id="queryOrderInfo" resultType="com.supersavedriving.driver.modular.system.warpper.OrderInfoWarpper">
+        select
+        a.id,
+        b.avatar,
+        a.userName,
+        a.userPhone,
+        (select count(1) from t_order where userPhone = a.userPhone and state in (107, 108)) as orderTimes,
+        (select count(1) from t_order where userPhone = a.userPhone and state in (301)) as cancelTimes,
+        a.source,
+        UNIX_TIMESTAMP(a.createTime) * 1000 as createTime,
+        a.startAddress,
+        a.startLat,
+        a.startLng,
+        a.endAddress,
+        a.endLat,
+        a.endLng,
+        a.estimatedPrice,
+        a.estimatedMileage,
+        a.startPrice,
+        a.waitTime,
+        a.actualMileage,
+        a.state,
+        (UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(a.startTime)) / 60 as travelTime
+        from t_order a
+        left join t_app_user b on (a.userId = b.id)
+        where a.id = #{orderId}
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/IOrderService.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/IOrderService.java
index 65888c8..648e12e 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/IOrderService.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/IOrderService.java
@@ -6,6 +6,7 @@
 import com.supersavedriving.driver.modular.system.warpper.AddOrderWarpper;
 import com.supersavedriving.driver.modular.system.warpper.BaseWarpper;
 import com.supersavedriving.driver.modular.system.warpper.HallOrderList;
+import com.supersavedriving.driver.modular.system.warpper.OrderInfoWarpper;
 
 import java.util.List;
 
@@ -69,6 +70,11 @@
     ResultUtil receiveOrder(Integer uid, Long orderId) throws Exception;
 
 
-
-    queryOrderInfo(Long orderId) throws Exception;
+    /**
+     * 获取订单详情
+     * @param orderId
+     * @return
+     * @throws Exception
+     */
+    OrderInfoWarpper queryOrderInfo(Integer uid, Long orderId) throws Exception;
 }
diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java
index 517f955..d26afc6 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java
@@ -15,6 +15,7 @@
 import com.supersavedriving.driver.modular.system.util.mongodb.model.Location;
 import com.supersavedriving.driver.modular.system.warpper.AddOrderWarpper;
 import com.supersavedriving.driver.modular.system.warpper.HallOrderList;
+import com.supersavedriving.driver.modular.system.warpper.OrderInfoWarpper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.geo.Circle;
 import org.springframework.data.geo.Distance;
@@ -572,4 +573,21 @@
         }
         return ResultUtil.success();
     }
+
+
+    /**
+     * 获取订单详情
+     * @param orderId
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public OrderInfoWarpper queryOrderInfo(Integer uid, Long orderId) throws Exception {
+        OrderInfoWarpper orderInfoWarpper = this.baseMapper.queryOrderInfo(orderId);
+        String value = redisUtil.getValue("DRIVER" + uid);
+        Map<String, Double> distance = GeodesyUtil.getDistance(orderInfoWarpper.getStartLng() + "," + orderInfoWarpper.getStartLat(), value);
+        Double wgs84 = distance.get("WGS84");
+        orderInfoWarpper.setCurrentDistance(wgs84);
+        return orderInfoWarpper;
+    }
 }
diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/HallOrderList.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/HallOrderList.java
index b201059..5a52299 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/HallOrderList.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/HallOrderList.java
@@ -42,8 +42,6 @@
     private String endLat;
     @ApiModelProperty("终点经度")
     private String endLng;
-    @ApiModelProperty("预估费")
-    private Double estimatedPrice;
     @ApiModelProperty("预估里程")
     private Double estimatedMileage;
     @ApiModelProperty("起步价")
diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/OrderInfoWarpper.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/OrderInfoWarpper.java
index f3fc7a3..8a1837f 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/OrderInfoWarpper.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/warpper/OrderInfoWarpper.java
@@ -37,12 +37,16 @@
     private String endLat;
     @ApiModelProperty("终点经度")
     private String endLng;
-    @ApiModelProperty("预估费")
-    private Double estimatedPrice;
     @ApiModelProperty("预估里程")
     private Double estimatedMileage;
     @ApiModelProperty("起步价")
     private Double startPrice;
+    @ApiModelProperty("等待时长")
+    private Integer waitTime;
+    @ApiModelProperty("行驶里程")
+    private Double actualMileage;
+    @ApiModelProperty("行驶时间")
+    private Integer travelTime;
     @ApiModelProperty("订单状态(101=待接单,102=已接单,103=前往预约点,104=到达预约点,105=开始服务,106=到达目的地,107=待评价,108=已完成,201=转单中,301=已取消)")
     private Integer state;
 }

--
Gitblit v1.7.1