From 92e00dafd06ec748b51f565c7a4c98986a618de9 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 03 六月 2023 02:01:40 +0800
Subject: [PATCH] 新增加分账功能

---
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/OrderController.java |   58 +++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 49 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 4a08e12..2844803 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,8 +1,12 @@
 package com.supersavedriving.driver.modular.system.api;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.supersavedriving.driver.modular.system.model.Driver;
 import com.supersavedriving.driver.modular.system.model.Order;
+import com.supersavedriving.driver.modular.system.model.RechargeRecord;
+import com.supersavedriving.driver.modular.system.service.IRechargeRecordService;
+import com.supersavedriving.driver.modular.system.util.MallBook.model.InterfaceResponse;
 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.*;
@@ -17,15 +21,14 @@
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -46,6 +49,9 @@
 
     @Autowired
     private RongYunUtil rongYunUtil;
+
+    @Autowired
+    private IRechargeRecordService rechargeRecordService;
 
 
 
@@ -382,10 +388,11 @@
     @ApiOperation(value = "服务完成后修改订单状态", tags = {"司机端-服务中"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "long"),
-            @ApiImplicitParam(value = "107(线上支付),108(完成线下支付)", name = "state", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "支付方式(1=线上,2=线下)", name = "payType", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "107(待支付),108(已完成)", name = "state", required = true, dataType = "int"),
             @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResponseWarpper setOrderStatus(Long orderId, Integer state){
+    public ResponseWarpper setOrderStatus(Long orderId, Integer payType, Integer state){
         if(ToolUtil.isEmpty(orderId)){
             return ResponseWarpper.success(ResultUtil.paranErr("orderId"));
         }
@@ -397,7 +404,7 @@
             if(null == uid){
                 return ResponseWarpper.tokenErr();
             }
-            ResultUtil resultUtil = orderService.setOrderStatus(uid, orderId, state);
+            ResultUtil resultUtil = orderService.setOrderStatus(uid, orderId, payType, state);
             return ResponseWarpper.success(resultUtil);
         }catch (Exception e){
             e.printStackTrace();
@@ -406,7 +413,39 @@
     }
 
 
+    /**
+     * 转账回调
+     * @param execute
+     * @param response
+     */
+    @ResponseBody
+    @PostMapping("/base/order/zhaunzhangCallback")
+    public void zhaunzhangCallback(@RequestBody InterfaceResponse execute, HttpServletResponse response){
+        try {
+            if("0000".equals(execute.getCode())){
+                JSONObject jsonObject = JSON.parseObject(execute.getResult());
+                Integer status = jsonObject.getInteger("status");//0:待处理;1:成功;2:失败
+                if(2 == status){
+                    System.err.println("转账失败");
+                    return;
+                }
+                String parameter1 = jsonObject.getString("parameter1");
+                RechargeRecord rechargeRecord = rechargeRecordService.selectById(parameter1);
 
+
+                response.setStatus(200);
+                PrintWriter out = response.getWriter();
+                out.print("OK");
+                out.flush();
+                out.close();
+            }else{
+                System.err.println("转账失败:" + execute.getMsg());
+                return;
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
 
     @ResponseBody
     @PostMapping("/api/order/queryDriverOrderList")
@@ -447,8 +486,9 @@
     @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));
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        System.err.println(sdf.format(new Date()) + "-------------------云端录制状态回调!-------------------");
+        System.err.println(JSON.toJSONString(cloudRecordingCallback));
         if(null == cloudRecordingCallback){
             System.err.println("云端录制状态回调解析出错!");
             return;

--
Gitblit v1.7.1