修复微信支付通知逻辑中的openid获取问题
- 修改了获取openid的方式,从用户认证表中查询openid,而不是直接使用订单信息中的openid - 增加了对openid的判断,只有在openid存在时才发送物流通知 - 优化了代码结构,提高了代码的可读性和维护性
This commit is contained in:
parent
2804910665
commit
a4d21adea5
@ -25,6 +25,7 @@ use app\common\model\store_product_log\StoreProductLog;
|
||||
use app\common\model\system_store\SystemStore;
|
||||
use app\common\model\user\User;
|
||||
use app\common\model\user\UserAddress;
|
||||
use app\common\model\user\UserAuth;
|
||||
use app\common\model\user\UserRecharge;
|
||||
use app\common\model\user_ship\UserShip;
|
||||
use app\common\model\user_sign\UserSign;
|
||||
@ -273,8 +274,11 @@ class PayNotifyLogic extends BaseLogic
|
||||
// self::addUserSing($order);
|
||||
// self::dealProductLog($order);
|
||||
|
||||
if (!empty($extra['payer']['openid']) && $order->pay_type == 7) {
|
||||
Redis::send('push-delivery', ['order_id' => $order['order_id'], 'openid' => $extra['payer']['openid'], 'logistics_type' => 4]);
|
||||
if ($order->pay_type == 7) {
|
||||
$openid=UserAuth::where('user_id',$order['uid'])->value('openid');
|
||||
if($openid){
|
||||
Redis::send('push-delivery', ['order_id' => $order['order_id'], 'openid' => $openid, 'logistics_type' => 4]);
|
||||
}
|
||||
}
|
||||
if ($order['pay_type'] == 9) {
|
||||
Db::name('wechat_micropay')->where(['order_id' => $order['order_id']])->delete();
|
||||
|
Loading…
x
Reference in New Issue
Block a user