From 06be1c7ccc7533612e4cc7b0e730080d0dd3d2a1 Mon Sep 17 00:00:00 2001
From: quanwei <419654421@qq.com>
Date: Fri, 16 Jan 2026 11:43:36 +0800
Subject: [PATCH] 商品可以赠送优惠券 商品属性增加团购 入驻商家增加实物和团购选项 团购和实物商户分类分开 增加团购商家页面 后台添加页面增加团购组件

---
 admin/app/common/library/fbpay/FbPay.php |   15 +++++++++++++--
 1 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/admin/app/common/library/fbpay/FbPay.php b/admin/app/common/library/fbpay/FbPay.php
index 8aa0312..f33f43a 100644
--- a/admin/app/common/library/fbpay/FbPay.php
+++ b/admin/app/common/library/fbpay/FbPay.php
@@ -7,6 +7,7 @@
 use app\common\enum\order\OrderPayTypeEnum;
 use app\common\exception\BaseException;
 use app\common\model\app\AppWx as AppWxModel;
+use app\common\model\payment\PaymentLog as PaymentLogModel;
 use think\helper\Str;
 use EasyWeChat\Factory;
 use app\common\model\user\UserAuth as UserAuthModel;
@@ -129,10 +130,18 @@
         $attach = json_decode($data['attach'], true);
         // 实例化订单模型
         $PaySuccess = PayTypeSuccessFactory::getFactory($data['merchant_order_sn'], $attach);
-        $app_id = $PaySuccess->isExist();
+        $app_id = $PaySuccess->isExist();//这里主要处理支付订单号和现有订单信息对不上的原因
+        $payment_model = new PaymentLogModel();
+        if(empty($app_id) || $app_id==0){
+            $app_id = $payment_model->checkOrder($data['merchant_order_sn'], $attach);
+            if($app_id){
+                $PaySuccess = PayTypeSuccessFactory::getFactory($data['merchant_order_sn'], $attach);
+            }
+        }
+
         $app_id == 0 && $this->returnCode(false, '订单不存在1');
         $shop_supplier_id = $PaySuccess->isExistSupplier();
-        $shop_supplier_id == 0 && $this->returnCode(false, '订单商户不存在2');
+        // $shop_supplier_id == 0 && $this->returnCode(false, '订单商户不存在2'); // 暂时屏蔽 by lyzflash 20251029
         // 支付配置信息
         $this->app = $this->getFbPayApp($app_id,$shop_supplier_id);
         // 保存微信服务器返回的签名sign
@@ -155,6 +164,8 @@
             echo 'error';
             exit();
         }
+        //更新支付记录
+        $payment_model->updatePaymentLog(['order_no'=>$data['merchant_order_sn']]);
         // 返回状态
         echo 'success';
         exit();

--
Gitblit v1.9.2