From c8ce567e99eab1d55d0bdb84464609c899596bec Mon Sep 17 00:00:00 2001 From: tpingzhang <635929049@qq.com> Date: Tue, 12 Nov 2019 09:52:55 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=B9=B3=E5=8F=B0=E5=B8=81=20ios=20?= =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=94=AF=E4=BB=98=20=E8=B7=B3app?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Sdk/View/default/Spend/paycallback.html | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Application/Sdk/View/default/Spend/paycallback.html b/Application/Sdk/View/default/Spend/paycallback.html index f03895f3..5ac411b5 100644 --- a/Application/Sdk/View/default/Spend/paycallback.html +++ b/Application/Sdk/View/default/Spend/paycallback.html @@ -101,6 +101,9 @@ $(function() { 'user_token' : user_token, }, success: function(r) { + var u = navigator.userAgent; + var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 + if (r.payStatus == '1') { if (r.type == "deposit") { confirm("支付成功"); @@ -109,12 +112,19 @@ $(function() { } if (r.type == "deposit") { + if (!isAndroid) { + try { + window.webkit.messageHandlers.exchangeResult.postMessage(1); + } catch(err) { + window.location.href = Scheme+"://1&back"; + } + return ; + } + window.location.href = r.url; } if (r.type == "spend") { - var u = navigator.userAgent; - var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 if (r.payStatus == '1') { if (isAndroid) { window.txyxsdk.getPayResult('succeed'); From 165ee136e44ce3bae2a878e0ce32faccabd71b68 Mon Sep 17 00:00:00 2001 From: tpingzhang <635929049@qq.com> Date: Tue, 12 Nov 2019 11:35:37 +0800 Subject: [PATCH 2/3] =?UTF-8?q?ios=20=E5=85=BC=E5=AE=B9=E6=97=A7=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Sdk/Controller/ExchangeController.class.php | 6 ++++-- Application/Sdk/Controller/PayH5Controller.class.php | 4 ++++ Application/Sdk/Controller/UserHController.class.php | 3 +++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Application/Sdk/Controller/ExchangeController.class.php b/Application/Sdk/Controller/ExchangeController.class.php index df891f10..502392d4 100644 --- a/Application/Sdk/Controller/ExchangeController.class.php +++ b/Application/Sdk/Controller/ExchangeController.class.php @@ -81,9 +81,11 @@ class ExchangeController extends BaseController{ $request['spend_ip'] = get_client_ip(); - $url = C('PAY_DOMAIN') . '/sdk.php?s=/Spend/'.$payPage.'&user_id='.$request['user_id'].'&game_id='.$request['game_id'].'&type=1'.'&user_token='.$userToken.'&action=pay'; + // $url = C('PAY_DOMAIN') . '/sdk.php?s=/Spend/'.$payPage.'&user_id='.$request['user_id'].'&game_id='.$request['game_id'].'&type=1'.'&user_token='.$userToken.'&action=pay'; file_put_contents("./Application/Sdk/OrderNo/".$request['user_id']."-".$request['game_id'].".txt",think_encrypt(json_encode($request))); - echo base64_encode(json_encode(array('status'=>200,'out_trade_no'=>$out_trade_no,'img'=>$url)));exit; + $url = C('PAY_DOMAIN') . '/sdk.php?s=/userH/platform_pay/account/'.$request['account'].'&user_token='.$userToken.'&game_id='.$request['game_id'].'&money='.$request['price'].'&action=pay1&api_ver=1'; + echo base64_encode(json_encode(array('status'=>200,'out_trade_no'=>$out_trade_no,'img'=>$url))); + exit; } else { $extend_data = M('spend','tab_')->where(array('extend'=>$request['extend'],'pay_status'=>1,'game_id'=>$request['game_id']))->find(); diff --git a/Application/Sdk/Controller/PayH5Controller.class.php b/Application/Sdk/Controller/PayH5Controller.class.php index eeb8e5e9..a35b7af8 100644 --- a/Application/Sdk/Controller/PayH5Controller.class.php +++ b/Application/Sdk/Controller/PayH5Controller.class.php @@ -623,6 +623,10 @@ ADD COLUMN `pay_url` text NULL AFTER `check_sign`; $request['pay_url'] = $json_data['url']; $this->add_deposit($request, 1); // .(is_ssl()?'https%3A%2F%2F':'http%3A%2F%2F'). $_SERVER ['HTTP_HOST'] . "%2Fsdk.php%2FSpend%2Fpay_success%2Forderno%2F".$request['pay_order_number'].'%2Fgame_id%2F'.$request['game_id'] ; + if (I('request.api_ver') == 1) { + $json_data['url'] = $is_pay['mweb_url'].'&redirect_url='.(is_ssl()?'https%3A%2F%2F':'http%3A%2F%2F'). $_SERVER ['HTTP_HOST'] . "%2Fsdk.php%2FSpend%2Fpay_success%2Forderno%2F".$request['pay_order_number'].'%2Fgame_id%2F'.$request['game_id'] ; + redirect($json_data['url']); + } }else{ redirect(U('Spend/notice',array('user_id'=>$user_id,'game_id'=>$game_id,'msg'=>'支付失败', 'user_token' => $this->userToken)));exit; } diff --git a/Application/Sdk/Controller/UserHController.class.php b/Application/Sdk/Controller/UserHController.class.php index edb2bbc5..c7be846a 100644 --- a/Application/Sdk/Controller/UserHController.class.php +++ b/Application/Sdk/Controller/UserHController.class.php @@ -70,12 +70,15 @@ class UserHController extends BaseController { $u = M('user', 'tab_')->where(['id' => $this->userId])->find(); $money = I('money', 0); + $api_ver = I('api_ver', 0); + if(!$money) { $this->error('金额不能为空'); } // if(!is_int($post['money'])) { // $this->error('金额不能小于1'); // } + $this->assign('api_ver', $api_ver); $this->assign("account", $u['account']); $this->assign('money', $money); $this->assign('game_id', I('game_id', 0)); From 1f18bb0e9176041edbfdb778331c8e1070b76f25 Mon Sep 17 00:00:00 2001 From: tpingzhang <635929049@qq.com> Date: Tue, 12 Nov 2019 11:39:52 +0800 Subject: [PATCH 3/3] =?UTF-8?q?ios=20=E5=85=BC=E5=AE=B9=E6=97=A7=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Sdk/View/default/UserH/platform_pay.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Application/Sdk/View/default/UserH/platform_pay.html b/Application/Sdk/View/default/UserH/platform_pay.html index 55907ecf..66780915 100644 --- a/Application/Sdk/View/default/UserH/platform_pay.html +++ b/Application/Sdk/View/default/UserH/platform_pay.html @@ -33,7 +33,7 @@