微信小程序> 微信小程序开发之微信支付(三)微信下单

微信小程序开发之微信支付(三)微信下单

浏览量:4658 时间: 来源:ZXohoo

在发起支付之前,后台会生成商户订单,调用统一下单API,得到预支付信息。

我是使用的是这个SDK

com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult;     //统一下单返回结果类

com.github.binarywang.wxpay.bean.request.WxPayUnifiedOrderRequest      //统一下单所需参数类

/** * 发起与支付 * 调用统一下单接口,获取“预支付交易会话标识” */@PostMapping("/unifiedOrder")public ModelAndView unifiedOrder(@RequestBody String orderId,                                 @RequestBody HttpServletRequest request,                                  MapString, Objectmap) throws WxPayException {    OrderDTO orderDTO = orderService.findOne(orderId);                               //OrderDTO为自定义的订单信息类    WxPayUnifiedOrderRequest orderRequest = payService.create(orderDTO, request);    WxPayUnifiedOrderResult orderResult = wxPayService.unifiedOrder(orderRequest);   //调用统一下单接口    map.put("orderRequest", orderRequest);    map.put("orderResult", orderResult);    map.put("timeStamp", payUtil.getTimeStamp());    map.put("nonceStr", payUtil.getNonceStr());    return new ModelAndView("pay/unifiedOrder", map);      //用到了参数动态注入,将参数传给wx.requestPayment{},之后会讲}

public WxPayUnifiedOrderRequest create(OrderDTO orderDTO, HttpServletRequest request) {    try {        WxPayUnifiedOrderRequest orderRequest = new WxPayUnifiedOrderRequest();   //商户订单类        orderRequest.setBody("微信支付");        orderRequest.setOpenid(orderDTO.getBuyerOpenId());        //元转成分        orderRequest.setTotalFee(PriceUtil.yuanToFee(orderDTO.getOrderAmount()));   //注意:传入的金额参数单位为分        //outTradeNo  订单号        orderRequest.setOutTradeNo(orderDTO.getOrderId());        //tradeType 支付方式        orderRequest.setTradeType(PayTypeEnum.WX_PAY.getMsg());        //用户IP地址        orderRequest.setSpbillCreateIp(IpUtil.getIP(request));               return wxPayService.createOrder(orderRequest);    } catch (Exception e) {        log.error("【微信支付】支付失败 订单号={} 原因={}", orderDTO.getOrderId(), e.getMessage());        e.printStackTrace();        return null;    }}

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

最新资讯

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎