苍穹外卖跳过支付后的来单提醒调整及相关问题解决办法

目录

一、前言

二、调整

三、相关问题解决


一、前言

由于之前微信支付阶段的代码开发没有企业认证不能完成,所以我跳过了微信支付。然后在学习Day10的来单提醒的业务开发出现了几个问题。后来发现是因为跳过了微信支付,所以如果直接按照视频导入代码的话会出现没有来单提醒框和声音的情况。这个博客记录一下跳过支付后的来单提醒开发调整以及相关问题的解决办法

二、调整

如果是按照我之前跳过支付的教程操作的话,要把WebSocket向客户端浏览器推送消息的代码放到payment方法的如下位置处(视频中是放到了paySuccess方法中,我一开始跟着做发现既没有提示框也没有声音,才想起来我们是跳过了支付直接判断成功的)

导入的代码如下

复制代码
        //通过WebSocket向客户端浏览器推送消息 type orderId content
        Map map = new HashMap();
        map.put("type", 1);  //1表示来单提醒 2表示客户催单
        map.put("orderId", this.orders.getId());
        map.put("content", "订单号:" + this.orders.getNumber());

        String json = JSON.toJSONString(map);
        webSocketServer.sendToAllClient(json);

三、相关问题解决

首先来单提醒测试成功的前提是在控制台中能看到IDEA控制台中输出成功连接(我并没有遇到这个问题,正常来说跟着操作应该没问题)

在微信小程序点单支付,测试成功的话苍穹外卖的前端页面会出现待接单的弹窗出现在右上角(这个弹窗不会马上消失的,点单支付完再来看是绝对来得及的,只要点到前端页面没看见就是测试失败,回头检查一下是不是哪里没按操作来)

测试成功的另一个标志是有声音提醒(记得把电脑声音打开,带着耳机的话声音别开太大),如果遇到有弹窗但是没听到声音的话,就把项目重新启动,把浏览器的前端页面直接叉掉重新点开登录,微信小程序重新编译再试几次(我用的是chrome浏览器也没设置过什么,这样重新搞一次就有声音了)。实在没有就过了吧,反正有弹窗就肯定表示测试是通过的

最后,如果出现一直有声音的话,记得把之前讲解websocket的案例的WebSocketServe的@Scheduled注解注释掉

相关推荐
精神状态良好7 小时前
RAG 是什么?如何让大模型基于文档作答
前端
CRAB7 小时前
解锁移动端H5调试:Eruda & VConsole 实战指南
前端·debug·webview
OpenTiny社区7 小时前
Vue2/Vue3 迁移头秃?Renderless 架构让组件 “无缝穿梭”
前端·javascript·vue.js
敲代码的独角兽7 小时前
深入理解 JavaScript 异步机制:从回调到 Promise 再到 async/await
前端
清风乐鸣7 小时前
刨根问底栏目组 - 学习 Zustand 的广播哲学
前端
悟能不能悟7 小时前
java map判断是否有key,get(key)+x,否则put(key,x)的新写法
java·开发语言
yxorg7 小时前
vue自动打包工程为压缩包
前端·javascript·vue.js
Bigger7 小时前
shadcn-ui 的 Radix Dialog 这两个警告到底在说什么?为什么会报?怎么修?
前端·react.js·weui
MrBread7 小时前
突破限制:vue-plugin-hiprint 富文本支持深度解析与解决方案
前端·开源
用户4099322502127 小时前
Vue3中v-if与v-for为何不能在同一元素上混用?优先级规则与改进方案是什么?
前端·vue.js·后端