查询微信的支付状态

本文介绍了后端接口查询支付状态的实现以及前端如何通过定时轮询获取支付状态,并在支付成功后进行相应操作。在Web层,通过GET请求调用接口查询支付状态,如果支付中则返回相应提示,前端使用axios响应拦截器处理支付中状态,避免显示错误信息。在支付页面,当用户查看二维码后启动定时器,每3秒查询一次支付状态,支付成功后清除定时器并跳转到课程详情页。
摘要由CSDN通过智能技术生成

一 查询支付状态

1 业务层

接口

boolean queryPayStatus(String orderNo);

实现

/**
* 查询支付结果
*
* @param orderNo 订单号
* @return true 已支付  false 未支付
*/
@Override
public boolean queryPayStatus(String orderNo) {
    QueryWrapper<Order> queryWrapper = new QueryWrapper<>();
    queryWrapper.eq("order_no", orderNo);
    Order order = baseMapper.selectOne(queryWrapper);
    return order.getStatus() == 1;
}

2 web层

@GetMapping("/query-pay-status/{orderNo}")
public R queryPayStatus(@PathVariable String orderNo) {
    boolean result = orderService.queryPayStatus(orderNo);
    if (result) { // 支付成功
        return R.ok().message("支付成功");
    }
    return R.setResult(ResultCodeEnum.PAY_RUN);//支付中
}

二 前端整合

1 api


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值