From e0129794236e45f062f24bd13ca0042849d24372 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 10 四月 2023 11:54:47 +0800
Subject: [PATCH] 修改录音回调

---
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java |  101 ++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 96 insertions(+), 5 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 9e24715..4a08e12 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
@@ -1,7 +1,11 @@
 package com.supersavedriving.driver.modular.system.api;
 
+import com.alibaba.fastjson.JSON;
+import com.supersavedriving.driver.modular.system.model.Driver;
+import com.supersavedriving.driver.modular.system.model.Order;
+import com.supersavedriving.driver.modular.system.util.rongyun.RongYunUtil;
+import com.supersavedriving.driver.modular.system.util.rongyun.model.CloudRecordingCallback;
 import com.supersavedriving.driver.modular.system.warpper.*;
-import com.supersavedriving.driver.core.common.annotion.ServiceLog;
 import com.supersavedriving.driver.core.util.ToolUtil;
 import com.supersavedriving.driver.modular.system.service.IDriverService;
 import com.supersavedriving.driver.modular.system.service.IOrderService;
@@ -18,7 +22,12 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.PrintWriter;
 import java.util.List;
+import java.util.Map;
 
 /**
 * 订单控制器
@@ -35,6 +44,9 @@
     @Autowired
     private IDriverService driverService;
 
+    @Autowired
+    private RongYunUtil rongYunUtil;
+
 
 
 
@@ -45,14 +57,14 @@
     @ApiImplicitParams({
             @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResponseWarpper<Long> queryDriverServerOrder(){
+    public ResponseWarpper<Map<String, Object>> queryDriverServerOrder(){
         try {
             Integer uid = driverService.getUserByRequest();
             if(null == uid){
                 return ResponseWarpper.tokenErr();
             }
-            Long id = orderService.queryDriverServerOrder(uid);
-            return ResponseWarpper.success(id);
+            Map<String, Object> map = orderService.queryDriverServerOrder(uid);
+            return ResponseWarpper.success(map);
         }catch (Exception e){
             e.printStackTrace();
             return new ResponseWarpper(500, e.getMessage());
@@ -68,7 +80,7 @@
     @ApiImplicitParams({
             @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResponseWarpper driverAddOrder(AddOrderWarpper addOrderWarpper){
+    public ResponseWarpper<Integer> driverAddOrder(AddOrderWarpper addOrderWarpper){
         try {
             Integer uid = driverService.getUserByRequest();
             if(null == uid){
@@ -425,4 +437,83 @@
             return new ResponseWarpper(500, e.getMessage());
         }
     }
+
+
+    /**
+     * 服务录音回调
+     * @param request
+     */
+    @ResponseBody
+    @PostMapping("/base/order/cloudRecordingCallback")
+    public void cloudRecordingCallback(HttpServletRequest request, HttpServletResponse response){
+        CloudRecordingCallback cloudRecordingCallback = RongYunUtil.cloudRecordingCallback(request);
+//        System.err.println("-------------------云端录制状态回调!-------------------");
+//        System.err.println(JSON.toJSONString(cloudRecordingCallback));
+        if(null == cloudRecordingCallback){
+            System.err.println("云端录制状态回调解析出错!");
+            return;
+        }
+        Integer type = cloudRecordingCallback.getType();
+        if(4 == type){//文件上传
+            String fileUrl = cloudRecordingCallback.getOutput().getFileUrl();
+            String roomId = cloudRecordingCallback.getRoomId();
+            Order order = orderService.selectById(roomId);
+            order.setRouteRecord(fileUrl);
+            orderService.updateById(order);
+        }
+        PrintWriter out = null;
+        try {
+            out = response.getWriter();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        out.print("OK");
+        out.flush();
+        out.close();
+    }
+
+
+    @ResponseBody
+    @PostMapping("/api/order/openOrderQRCode")
+//    @ServiceLog(name = "打开下单二维码操作", url = "/api/order/openOrderQRCode")
+    @ApiOperation(value = "打开下单二维码操作", tags = {"司机端-首页"}, notes = "")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+    })
+    public ResponseWarpper openOrderQRCode(){
+        try {
+            Integer uid = driverService.getUserByRequest();
+            if(null == uid){
+                return ResponseWarpper.tokenErr();
+            }
+            ResultUtil resultUtil = driverService.openOrderQRCode(uid);
+            return ResponseWarpper.success(resultUtil);
+        }catch (Exception e){
+            e.printStackTrace();
+            return new ResponseWarpper(500, e.getMessage());
+        }
+    }
+
+
+
+    @ResponseBody
+    @PostMapping("/api/order/closeOrderQRCode")
+//    @ServiceLog(name = "关闭下单二维码操作", url = "/api/order/closeOrderQRCode")
+    @ApiOperation(value = "关闭下单二维码操作", tags = {"司机端-首页"}, notes = "")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+    })
+    public ResponseWarpper closeOrderQRCode(){
+        try {
+            Integer uid = driverService.getUserByRequest();
+            if(null == uid){
+                return ResponseWarpper.tokenErr();
+            }
+            ResultUtil resultUtil = driverService.closeOrderQRCode(uid);
+            return ResponseWarpper.success(resultUtil);
+        }catch (Exception e){
+            e.printStackTrace();
+            return new ResponseWarpper(500, e.getMessage());
+        }
+    }
 }

--
Gitblit v1.7.1