【类 型】:fix

【原  因】:mqtt发信息 应该是在pay接口 而不是在refund接口 这个接口还未改变 订单的退款状态 所以提示小程序端更新order列表 是无效的
【过  程】:从order表里面获取openid 并发mqtt信息
【影  响】:
This commit is contained in:
air 2025-01-15 20:24:22 +08:00
parent d68b8e36bf
commit 86a1109333

View File

@ -99,10 +99,6 @@ class PayController extends PublicController
];
try {
$topicPrefix = makeTopicPrefix($order['openid']); //小程序端用户订阅主题的前缀 ps:订单对应的用户的openid算出来的
// 提醒小程序端 刷新订单列表(mqtt)
$this->publish('refreshOrderList/' . $topicPrefix, 1);
$this->publish('demo', $order['openid']);
// 调用退款接口
$result = Pay::wechat($this->config)->refund($refundParameter);
// 处理退款结果
@ -136,6 +132,15 @@ class PayController extends PublicController
}
// 更新订单
$orderDb->where($where)->data($data)->save();
/*订单表操作*/
//前端提交数据校验
$field = array('main_status', 'openid');
$order = $orderDb->where($where)->field($field)->find();
$topicPrefix = makeTopicPrefix($order['openid']); //小程序端用户订阅主题的前缀 ps:订单对应的用户的openid算出来的
// 提醒小程序端 刷新订单列表(mqtt)
$this->publish('refreshOrderList/' . $topicPrefix, 1);
}
// 构建发布主题 并向地面终端提示刷新信息
$field = array('shop_id');