1:下面是简单生成订单和支付的流程

后端实现

1: 首先开发 生成订单接口,根据订单查询接口,

生成微信支付的二维码的接口,查询订单支付的状态的接口

@Api(tags="订单接口")
@RestController
@RequestMapping("/orderservice/order")
@CrossOrigin
public class EduOrderController {@Autowiredprivate EduOrderService eduOrderService;/*** 创建订单* @param courseId* @param request* @return*/@ApiOperation(value = "创建订单接口")@PostMapping("createdOrder/{courseId}")public R createdOrder(@ApiParam(name="courseId" , value = "课程id",defaultValue = "")@PathVariable(value = "courseId") String courseId,HttpServletRequest request){String orderNo = eduOrderService.createdOrder(courseId,request);return R.ok().data("orderId",orderNo);}/*** 根据订单号查询订单信息* @param orderNo* @return*/@ApiOperation("根据订单id获取订单信息")@GetMapping("getOrder/{orderNo}")public R getOrder(@ApiParam(value = "orderNo", name="订单号" ,defaultValue = "")@PathVariable(value = "orderNo") String orderNo){QueryWrapper<EduOrder> queryWrapper = new QueryWrapper<EduOrder>();queryWrapper.eq("order_no",orderNo);EduOrder one = eduOrderService.getOne(queryWrapper);return R.ok().data("data",one);}
}
@Api(tags = "支付日志接口")
@RestController
@RequestMapping("/orderservice/paylog")
@CrossOrigin
public class EduPayLogController {@Autowiredprivate EduPayLogService eduPayLogService;//生成微信支付二维码接口//参数是订单号@GetMapping("createNative/{orderNo}")public R createNative(@PathVariable String orderNo) {//返回信息,包含二维码地址,还有其他需要的信息Map map = eduPayLogService.createNatvie(orderNo);System.out.println("****返回二维码map集合:"+map);return R.ok().data(map);}//查询订单支付状态//参数:订单号,根据订单号查询 支付状态@GetMapping("queryPayStatus/{orderNo}")public R queryPayStatus(@PathVariable String orderNo) {Map<String,String> map = eduPayLogService.queryPayStatus(orderNo);System.out.println("*****查询订单状态map集合:"+map);if(map == null) {return R.error().message("支付出错了");}//如果返回map里面不为空,通过map获取订单状态if(map.get("trade_state").equals("SUCCESS")) {//支付成功//添加记录到支付表,更新订单表订单状态eduPayLogService.updateOrdersStatus(map);return R.ok().message("支付成功");}return R.ok().code(25000).message("支付中");}
}

前台实现:

参考pages/orders和pay下面的文件

springboot 实现 订单 和 微信扫码支付 功能相关推荐

  1. 微信扫码支付功能(1)---通过谷歌二维码工具生成付款码

    生成付款二维码 一.微信网站扫码支付介绍 1.扫码支付文档 微信开发官方文档:https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_5 ...

  2. Winfrom实现微信扫码支付功能

    winfrom实现微信扫码支付 实现逻辑:生成订单展示二维码-轮询检查支付结果-直到支付成功 看图,是不是你需要实现的效果,我是用的轮询的方式检查是否支付成功 微信扫码支付 下载地址:https:// ...

  3. 微信扫码支付功能(2)---用户扫码支付成功,微信异步回调商户接口

    用户扫码支付成功,微信异步回调商户 上一篇博客完成用户扫码支付功能: https://www.cnblogs.com/qdhxhz/p/9708534.html 当用户扫码支付成功之后,微信会异步回调 ...

  4. 使用 springboot 轻松实现网站微信扫码支付以及支付回调逻辑处理(javaJDK实现)

    目录 准备工作 项目部分导入 时序图理解支付流程 支付流程 支付请求 支付完成回调 前端收尾工作 准备工作 使用扫码微信支付需要在微信支付商户平台申请native支付,如图 以及基本的商户号等支付基本 ...

  5. 微信扫码支付功能详细教程————Java

    前言  首先声明 我并非原创 原创是 http://blog.csdn.net/wangqiuyun/article/details/51241064 我只是在前辈的基础 加以解释说明 还有自己的一些 ...

  6. SpringBoot 2 集成微信扫码支付

    前言 该文主要是手把手教你如何在SpringBoot 中集成微信扫码支付,以及集成的过程需要注意的问题事项.另外需要感谢 vbirdbest 关于微信支付和支付宝支付相关包博客总结.因为文中很多地方参 ...

  7. PC网站微信扫码支付,Native支付,“当前商户号暂不支持关联该类型的appid“,“签名错误,请检查后再试““springBoot 微信支付“

    springBoot 微信支付 PC网站微信扫码支付-Native支付 一.采坑大合集 1.当前商户号暂不支持关联该类型的appid 2.签名错误,请检查后再试 二.springboot集成微信支付D ...

  8. 微信支付(一)SpringBoot 实现微信扫码支付/Native支付

    SpringBoot 实现微信扫码支付/Native支付 一.背景 在开发一个捐赠项目时须在pc端接入微信扫码支付(Native 扫码支付),在微信端接入微信公众号支付(Jsapi 支付).后端使用的 ...

  9. 微擎支付返回商户单号_一步一步教你在SpringBoot中集成微信扫码支付

    一:准备工作 使用微信支付需要先开通服务号,然后还要开通微信支付,最后还要配置一些开发参数,过程比较多. 申请服务号(企业) 开通微信支付 开发配置 具体准备工作请参考Spring Boot入门教程( ...

最新文章

  1. 领歌LeangooV6.5.3:支持评论编辑,看板动态跳转
  2. 机器学习——大数据与MapReduce
  3. 数据预处理-异常值识别
  4. Nginx负载均衡状态之down
  5. 创建、修改、删除表总结
  6. Python 线程池 ThreadPoolExecutor(二) - Python零基础入门教程
  7. 解决beego中同时开启http和https时,https端口占用问题
  8. 微信分身版电脑版_电脑版营销wetool电脑版-网站
  9. Android不同版本下Notification创建方法
  10. Spring 的定时任务--Quartz
  11. 易语言 html 替换全角 半角,易语言全角与半角转换的使用讲解
  12. 计算机运维项目管理,工程项目管理软件的运维分为几个阶段
  13. js 获取两个数组的交集,并集,补集,差集(转载+收藏)
  14. DbContext(String)+SqlQuery一起使用
  15. 俄罗斯套娃信封问题 转https://www.jianshu.com/p/9d9495ef4372
  16. Apache Spark 3.0 结构化Streaming流编程指南
  17. 十大经典Java手机游戏 Top Ten Best Java Mobile Games
  18. 2019年8月8日星期四(系统编程)
  19. PHP生成随机数的几种方法(最全)
  20. 二十五、Flink + Uber AthenaX 平台化实践

热门文章

  1. 华为关闭telnet命令_华为s5720配置telnet命令详解
  2. 微信小程序笔记(三)
  3. SQLServer之创建唯一非聚集索引
  4. 解密weblogic控制台账号密码
  5. 初读《设计模式之禅》
  6. python strip什么意思_python中strip什么意思
  7. 吃热狗游戏Java_《我的世界》吃才是王道“食物工艺”让你尝遍八大菜系
  8. ds12c887程序C语言,时钟芯片DS12C887使用说明详解.doc
  9. Linux和Windows系统基础操作命令
  10. 3dsMax Biped骨骼缩放