200]; } public function notify(){ // 创建 EasyWeChat 实例 $payment = config('payment'); $app = Factory::payment($payment); // 处理支付回调通知 $response = $app->handlePaidNotify(function ($message, $fail) { // 处理订单支付状态更新等业务逻辑 // 用户是否支付成功 if ($message['result_code'] === 'SUCCESS') { $extra['transaction_id'] = // 获取订单信息 $order_no = $message['out_trade_no']; // 假设订单号在回调通知中的字段名为 out_trade_no $total_free = $message['total_fee']; // 假设订单金额在回调通知中的字段名为 total_fee $orderModel = new Order(); $order = $orderModel->where("order_no","=",$order_no)->find(); if(!$order || $order['pay_status'] == 1){ return true; } $update = [ "pay_status" => 1, "pay_way" => 1, "pay_money" => round($total_free/100,2), "pay_time" => time(), "transaction_id" =>$message['transaction_id'], ]; $orderModel->where("id","=",$order['id'])->update($update); //获取权限 更新当前企业的权限 $product = Db::name("product")->where("id",'=',$order['org_id'])->find(); if($product){ $group_id = $product['group_id']; $expire_time = strtotime("+1 years"); $update2 = [ "group_id" => $group_id, "expire_time" => $expire_time, "is_pay" => 1, "is_default" => 0, ]; Db::name("company")->where("id","=",$order['cid'])->update($update2); } } // 返回 true 告诉 EasyWeChat 支付通知处理成功 return true; }); return $response; } }