From f98aed8153d03aa61d4e28d266f412ef9169c837 Mon Sep 17 00:00:00 2001 From: panliang <1163816051@qq.com> Date: Mon, 29 Jun 2026 19:38:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=94=AF=E4=BB=98=20?= =?UTF-8?q?=E5=8F=91=E8=B4=A7=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/PayService.php | 51 ++++++++++++++++++++---------------- app/Services/WxMpService.php | 2 +- 2 files changed, 30 insertions(+), 23 deletions(-) diff --git a/app/Services/PayService.php b/app/Services/PayService.php index 8e378dec..dde95d5c 100644 --- a/app/Services/PayService.php +++ b/app/Services/PayService.php @@ -95,29 +95,36 @@ class PayService } // 订单支付成功, 调用发货信息API - if ($userId) { - $socialite = SocialiteUser::where('user_id', $userId)->where('socialite_type', SocialiteType::WechatMiniProgram)->first(); - if ($socialite) { - $openid = $socialite->socialite_id; - if ($openid) { - $data = [ - "order_key" => [ - "order_number_type" => 1, - "out_trade_no" => $payLog->pay_sn, - ], - "logistics_type" => 4, - "delivery_mode" => 1, - "shipping_list" => [ - "item_desc" => "定制服务" - ], - "upload_time" => $payLog->pay_at, - "payer" => [ - "openid" => $openid - ] - ]; - WxMpService::make()->uploadShippingInfo($data); - } + try { + if (!$userId) { + throw new BizException("未找到userId"); } + $socialite = SocialiteUser::where('user_id', $userId)->where('socialite_type', SocialiteType::WechatMiniProgram)->first(); + if (!$socialite) { + throw new BizException("未找到 SocialiteUser 记录, userId: " . $userId); + } + $openid = $socialite->socialite_id; + if (!$openid) { + throw new BizException("未找到 openid, userId: " . $userId); + } + $data = [ + "order_key" => [ + "order_number_type" => 1, + "out_trade_no" => $payLog->pay_sn, + ], + "logistics_type" => 4, + "delivery_mode" => 1, + "shipping_list" => [ + "item_desc" => "定制服务" + ], + "upload_time" => $payLog->pay_at->format('Y-m-d H:i:s'), + "payer" => [ + "openid" => $openid + ] + ]; + WxMpService::make()->uploadShippingInfo($data); + } catch (\Exception $e) { + logger()->error("微信小程序-发货信息录入, " . $e->getMessage(), ['pay_log_id' => $payLog->id]); } return $payLog; diff --git a/app/Services/WxMpService.php b/app/Services/WxMpService.php index ef933854..332e34ae 100644 --- a/app/Services/WxMpService.php +++ b/app/Services/WxMpService.php @@ -29,7 +29,7 @@ class WxMpService $result = $response->json(); $code = data_get($result, "errcode"); if ($code != 0) { - throw new BizException("微信小程序-发货信息录入, 失败: (".$code.")" . data_get($result, "errmsg")); + throw new BizException("失败: (".$code.")" . data_get($result, "errmsg")); } } }