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