ip(); $pay_type = 42; $forbid_mer_no = Db::name('config')->where('key_title', 'wx_hui_fu_machid')->value('key_value'); $forbid_mer_no_arr = []; if(!empty($forbid_mer_no)) { $forbid_mer_no_arr = explode('|', $forbid_mer_no); } // 获取随机键名 $randomKey = array_rand($forbid_mer_no_arr); // 获取随机元素 $huifu_id = $forbid_mer_no_arr[$randomKey]; $config_name = $huifu_id . '.json'; $project_path = app()->getRootPath()."application/"; $config_info = $project_path.'common/hui_fu/config/' . $config_name; if (!file_exists($config_info)) { return ['code' => 201, 'msg' => '暂无有效商户!', 'data' => null]; } $pay_data = ['order_sn' => $order_sn, 'money' => $money, 'openid' => $open_id, 'ip' => $ip, 'hui_fu_id'=>$huifu_id]; $payment = new HuiFuPayment($pay_data, $pay_type, $notify_url); $result = $payment->pay_wxgzh(); if($result['code'] == 201) { return $result; } $pay_info = $result['data']['pay_info']; return ['code' => 200, 'msg' => '成功', 'data' => $pay_info]; } //支付宝H5支付 public function ali_h5($order_sn, $money) { $notify_url = "http://" . $_SERVER['HTTP_HOST'] . "/api/pay_notify/hui_fu_pay_notify"; $ip = request()->ip(); $pay_type = 41; // $forbid_mer_no_arr = []; // if(!empty($forbid_mer_no)) { // $forbid_mer_no_arr = explode('|', $forbid_mer_no); // } // // 获取随机键名 // $randomKey = array_rand($forbid_mer_no_arr); // // 获取随机元素 // $huifu_id = $forbid_mer_no_arr[$randomKey]; $huifu_id = Db::name('config')->where('key_title', 'zfb_hui_fu_machid')->value('key_value'); $config_name = $huifu_id . '.json'; $project_path = app()->getRootPath()."application/"; $config_info = $project_path.'common/hui_fu/config/' . $config_name; if (!file_exists($config_info)) { return ['code' => 201, 'msg' => '暂无有效商户!', 'data' => null]; } $pay_data = ['order_sn' => $order_sn, 'money' => $money,'ip' => $ip,'hui_fu_id'=>$huifu_id]; $payment = new HuiFuPayment($pay_data, $pay_type, $notify_url); $result = $payment->pay(); if($result['code'] == 201) { return $result; } $pay_info = $result['data']; return ['code' => 200, 'msg' => '成功', 'data' => $pay_info]; } public function wx_verify_sign($resp_data, $sign, $huifu_id) { $object = new HuiFuCallback($huifu_id); return $object->verfiy_sign($resp_data, $sign); } }