From 380c0e958fbc3f2b42a3e38ae5dc9af3254b8f5c Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 25 五月 2023 09:36:16 +0800
Subject: [PATCH] 新增加功能和更换账号

---
 user/guns-admin/src/main/java/com/agentdriving/user/modular/api/OrderController.java |  134 +++-----------------------------------------
 1 files changed, 10 insertions(+), 124 deletions(-)

diff --git a/user/guns-admin/src/main/java/com/agentdriving/user/modular/api/OrderController.java b/user/guns-admin/src/main/java/com/agentdriving/user/modular/api/OrderController.java
index d920b43..1acf7e2 100644
--- a/user/guns-admin/src/main/java/com/agentdriving/user/modular/api/OrderController.java
+++ b/user/guns-admin/src/main/java/com/agentdriving/user/modular/api/OrderController.java
@@ -1,24 +1,13 @@
 package com.agentdriving.user.modular.api;
 
 import com.agentdriving.user.core.util.ToolUtil;
-import com.agentdriving.user.modular.system.model.Driver;
 import com.agentdriving.user.modular.system.service.*;
 import com.agentdriving.user.modular.system.warpper.*;
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.agentdriving.user.modular.system.model.AppUser;
 import com.agentdriving.user.modular.system.model.Order;
-import com.agentdriving.user.modular.system.model.Revenue;
-import com.agentdriving.user.modular.system.service.*;
-import com.agentdriving.user.modular.system.util.MallBook.model.InterfaceResponse;
-import com.agentdriving.user.modular.system.util.MallBook.model.Receive;
-import com.agentdriving.user.modular.system.util.MallBook.model.ReceiveUser;
-import com.agentdriving.user.modular.system.util.MallBook.util.RSASignature;
-import com.agentdriving.user.modular.system.util.MallBook.util.TrhRequest;
 import com.agentdriving.user.modular.system.util.PayMoneyUtil;
 import com.agentdriving.user.modular.system.util.ResultUtil;
-import com.agentdriving.user.modular.system.warpper.*;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
@@ -357,124 +346,19 @@
     @PostMapping("/base/order/orderPayCallback")
     public void orderPayCallback(HttpServletRequest request, HttpServletResponse response){
         try {
-            String code = request.getParameter("code");
-            String version = request.getParameter("version");
-            String msg = request.getParameter("msg");
-            String date = request.getParameter("date");
-            String result = request.getParameter("result");
-            String sign = request.getParameter("sign");
-            InterfaceResponse interfaceResponse = new InterfaceResponse();
-            interfaceResponse.setCode(code);
-            interfaceResponse.setVersion(version);
-            interfaceResponse.setMsg(msg);
-            interfaceResponse.setDate(date);
-            interfaceResponse.setResult(result);
-            interfaceResponse.setSign(sign);
-            // 验签
-            boolean verify = RSASignature.validate(interfaceResponse.content(), interfaceResponse.getSign());
-            if (verify) {//验签成功业务处理逻辑
-                JSONObject jsonObject = JSON.parseObject(result);
-                String merOrderId = jsonObject.getString("merOrderId");
-                String orderId = jsonObject.getString("parameter1");
-                ResultUtil resultUtil = orderService.orderPayCallback(orderId, merOrderId);
+            Map<String, String> map = payMoneyUtil.weixinpayCallback(request);
+            if(null != map){
+                String out_trade_no = map.get("out_trade_no");
+                String transaction_id = map.get("transaction_id");
+                String result = map.get("result");
+                String orderId = out_trade_no.substring(17);
+                ResultUtil resultUtil = orderService.orderPayCallback(orderId, transaction_id);
                 if(resultUtil.getCode() == 10000){
-                    response.setStatus(200);
                     PrintWriter out = response.getWriter();
-                    out.print("OK");
+                    out.print(result);
                     out.flush();
                     out.close();
                 }
-            } else {//验签失败业务处理逻辑
-                System.err.println("支付回调验签失败");
-            }
-
-
-//            Map<String, String> map = payMoneyUtil.weixinpayCallback(request);
-//            if(null != map){
-//                String out_trade_no = map.get("out_trade_no");
-//                String transaction_id = map.get("transaction_id");
-//                String result = map.get("result");
-//                String orderId = out_trade_no.substring(17);
-//                ResultUtil resultUtil = orderService.orderPayCallback(orderId, transaction_id);
-//                if(resultUtil.getCode() == 10000){
-//                    PrintWriter out = response.getWriter();
-//                    out.print(result);
-//                    out.flush();
-//                    out.close();
-//                }
-//            }
-        }catch (Exception e){
-            e.printStackTrace();
-        }
-    }
-
-
-    /**
-     * 异步分账回调
-     */
-    @ResponseBody
-    @PostMapping("/base/order/ledgerCallback")
-    public void ledgerCallback(HttpServletRequest request, HttpServletResponse response){
-        try{
-            String code = request.getParameter("code");
-            String version = request.getParameter("version");
-            String msg = request.getParameter("msg");
-            String date = request.getParameter("date");
-            String result = request.getParameter("result");
-            String sign = request.getParameter("sign");
-            InterfaceResponse interfaceResponse = new InterfaceResponse();
-            interfaceResponse.setCode(code);
-            interfaceResponse.setVersion(version);
-            interfaceResponse.setMsg(msg);
-            interfaceResponse.setDate(date);
-            interfaceResponse.setResult(result);
-            interfaceResponse.setSign(sign);
-            // 验签
-            boolean verify = RSASignature.validate(interfaceResponse.content(), interfaceResponse.getSign());
-            if (verify) {//验签成功业务处理逻辑
-                JSONObject jsonObject = JSON.parseObject(result);
-                String merOrderId = jsonObject.getString("merOrderId");
-                String orderId = jsonObject.getString("parameter1");
-                //确认收货
-                new Timer().schedule(new TimerTask() {
-                    @Override
-                    public void run() {
-                        Order order = orderService.selectById(orderId);
-                        List<Revenue> revenues = revenueService.selectList(new EntityWrapper<Revenue>().eq("userType", 2).eq("orderId", order.getId()));
-                        Receive receive = new Receive();//确认收货
-                        receive.setOriginalMerOrderId(merOrderId);
-                        receive.setRcvAmount(String.valueOf(order.getPayMoney() * 100));
-                        List<ReceiveUser> splitList = new ArrayList<>();
-                        for (Revenue revenue : revenues) {
-                            Driver driver = driverService.selectById(revenue.getUserId());
-                            ReceiveUser receiveUser = new ReceiveUser();
-                            receiveUser.setSplitUserId(driver.getMerchantNumber());
-                            receiveUser.setRcvSplitAmount(revenue.getAmount().toString());
-                            splitList.add(receiveUser);
-                        }
-                        receive.setSplitList(splitList);
-                        TrhRequest<Receive> request1 = new TrhRequest();
-                        InterfaceResponse execute = request1.execute(receive, Receive.SERVICE_CODE);
-                        if(!"0000".equals(execute.getResult())){
-                            System.err.println("确认收货" + execute.getMsg());
-                        }
-                        JSONObject jsonObject = JSON.parseObject(execute.getResult());
-                        String status = jsonObject.getString("status");
-                        if("2".equals(status)){
-                            System.err.println("确认收货失败");
-                        }
-                        if("0".equals(status)){
-                            System.err.println("确认收货处理中");
-                        }
-                    }
-                }, 30000);
-                response.setStatus(200);
-                PrintWriter out = response.getWriter();
-                out.print("OK");
-                out.flush();
-                out.close();
-            } else {//验签失败业务处理逻辑
-                System.err.println("支付回调验签失败");
             }
         }catch (Exception e){
             e.printStackTrace();
@@ -484,6 +368,8 @@
 
 
 
+
+
     @ResponseBody
     @PostMapping("/api/order/orderAppraise")
 //    @ServiceLog(name = "订单评价操作", url = "/api/order/orderAppraise")

--
Gitblit v1.7.1