From e3a2245265516fef78b4737d6fffc939e7c5e0af Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期四, 03 七月 2025 17:56:07 +0800 Subject: [PATCH] bug修改 --- pt-admin/src/main/java/com/ruoyi/web/controller/errand/OrderController.java | 62 ++++++++++++++++++------------- 1 files changed, 36 insertions(+), 26 deletions(-) diff --git a/pt-admin/src/main/java/com/ruoyi/web/controller/errand/OrderController.java b/pt-admin/src/main/java/com/ruoyi/web/controller/errand/OrderController.java index a158cd8..f6ef27c 100644 --- a/pt-admin/src/main/java/com/ruoyi/web/controller/errand/OrderController.java +++ b/pt-admin/src/main/java/com/ruoyi/web/controller/errand/OrderController.java @@ -19,8 +19,11 @@ import com.ruoyi.errand.object.vo.sys.OrderSysDetailVO; import com.ruoyi.errand.object.vo.sys.UserStatsVO; import com.ruoyi.errand.service.OrderService; +import com.ruoyi.errand.service.VipOrderService; import com.ruoyi.errand.utils.RefundCallbackResult; import com.ruoyi.errand.utils.UniPayCallbackResult; +import com.ruoyi.errand.utils.wx.PayResult; +import com.ruoyi.errand.utils.wx.WechatPayService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -29,6 +32,7 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.io.IOException; @@ -44,6 +48,11 @@ public class OrderController { @Autowired private OrderService orderService; + + @Autowired + private WechatPayService wechatPayService; + @Autowired + private VipOrderService vipOrderService; /** * 下单 @@ -67,12 +76,18 @@ * 订单支付回调通知 */ @ResponseBody - @GetMapping("/orderPaymentCallback") - public void orderPaymentCallback(UniPayCallbackResult uniPayCallbackResult, HttpServletResponse response){ - String jsonString = JSONObject.toJSONString(uniPayCallbackResult); - log.info("订单支付回调json:{}", jsonString); - R callback = orderService.orderPaymentCallback(uniPayCallbackResult); - if(callback.getCode() == 200){ + @PostMapping("/orderPaymentCallback") + public void orderPaymentCallback(HttpServletRequest request, HttpServletResponse response){ + System.err.println("11111111111"); + PayResult payResult= null; + try { + payResult = wechatPayService.processNotify(request); + } catch (Exception e) { + throw new RuntimeException(e); + } + System.out.println("1111111111111111111111"); + R callback = orderService.orderPaymentCallback(payResult); + if(callback.getCode() == 200) { response.setStatus(200); PrintWriter out = null; try { @@ -93,8 +108,8 @@ @GetMapping("/getAppUserOrderList") @ApiOperation(value = "订单列表",tags = "app用户端-订单页面") public R<IPage<AppUserOrderListVO>> getAppUserOrderList( - @RequestParam(value = "pageNum",defaultValue = "1") Integer pageNum, - @RequestParam(value = "pageSize",defaultValue = "10") Integer pageSize, + @RequestParam(value = "pageNum",defaultValue = "1",required = false) Integer pageNum, + @RequestParam(value = "pageSize",defaultValue = "10",required = false) Integer pageSize, @RequestParam(value = "orderStatus",required = false) Integer orderStatus) { return R.ok(orderService.getAppUserOrderList(pageNum,pageSize,orderStatus)); } @@ -129,26 +144,16 @@ /** * 订单取消支付回退 - * - * @param refundCallbackResult - * @param response - * @return */ @ResponseBody @GetMapping("/refundPayMoneyCallback") - public void refundPayMoneyCallback(RefundCallbackResult refundCallbackResult, HttpServletResponse response) { - R callback = orderService.refundPayMoneyCallback(refundCallbackResult); + public String refundPayMoneyCallback( @RequestBody(required = false) String xmlData) { + R callback = orderService.refundPayMoneyCallback(xmlData); if (callback.getCode() == 200) { - response.setStatus(200); - PrintWriter out = null; - try { - out = response.getWriter(); - } catch (IOException e) { - throw new RuntimeException(e); - } - out.println("success"); - out.flush(); - out.close(); + return "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>"; + }else { + System.err.println("支付回退错误:"+callback.getMsg()); + return "<xml><return_code><![CDATA[FAIL]]></return_code></xml>"; } } /** @@ -281,8 +286,13 @@ @GetMapping("/detail") @PreAuthorize("@ss.hasPermi('system:order:list')") @ApiOperation(value = "订单管理-订单详情", tags = "系统后台-订单管理") - public R<OrderSysDetailVO> detail(@RequestParam("id") Integer id) { - return R.ok(orderService.detail(id)); + public R<OrderSysDetailVO> detail(@RequestParam("id") Integer id,@RequestParam("type") Integer type) { + if (type==2){ + return R.ok(orderService.detail(id)); + }else { + return R.ok(vipOrderService.detail(id)); + } + } /** -- Gitblit v1.7.1