diff --git a/Application/Sdk/Controller/Ipa365Controller.class.php b/Application/Sdk/Controller/Ipa365Controller.class.php index 2cfa70907..c2beedbbc 100644 --- a/Application/Sdk/Controller/Ipa365Controller.class.php +++ b/Application/Sdk/Controller/Ipa365Controller.class.php @@ -125,9 +125,16 @@ class Ipa365Controller extends BaseController{ ))->find(); if($payLog && $payLog['pay_status']==1){ - $this->assign("msg","亲~您已购买过了~请到【订单查询】查看订单信息哟~"); + $this->assign("error","亲~您已购买过了~请到【订单查询】查看订单信息哟~"); $this->display('blank'); }else{ + if (!$gameInfo['supersign_token']) { + //$this->error("超级签token未填写!"); + $this->assign("error","超级签token未配置~"); + $this->display('blank'); + exit(); + } + $this->assign("price", self::signprice); //$this->assign("order_id", $orderId); $this->assign("game_id",$gameId); @@ -151,7 +158,10 @@ class Ipa365Controller extends BaseController{ $price = self::signprice; if (!$userId || !$gameId) { - $this->error("参数有误!"); + //$this->error("参数有误!"); + $this->assign("error","参数有误~"); + $this->display('blank'); + exit(); } $payLog = M('game_supersign', 'tab_')->where(array( @@ -172,13 +182,16 @@ class Ipa365Controller extends BaseController{ }else{ redirect("https://".$_SERVER['HTTP_HOST']."/sdk.php/Ipa365/install_show/user_id/$userId/game_id/$gameId/order_id/$orderId"); }*/ - $this->assign("msg","亲~您已购买过了~请到【订单查询】查看订单信息哟~"); + $this->assign("error","亲~您已购买过了~请到【订单查询】查看订单信息哟~"); $this->display('blank'); //$this->error("亲~您已购买过了~请到【订单查询】查看订单信息哟~"); } else { $orderId = "SS_" . date('Ymd') . date('His') . sp_random_string(4); // 超级签 if (!$gameInfo['supersign_token']) { - $this->error("超级签token未填写!"); + //$this->error("超级签token未填写!"); + $this->assign("error","超级签token未配置~"); + $this->display('blank'); + exit(); } $r = M('game_supersign', 'tab_')->add(array( @@ -219,26 +232,16 @@ class Ipa365Controller extends BaseController{ $ali_pay = $this->alipay($param); redirect($ali_pay); - //var_dump($ali_pay); }else{ $weixn = new Weixin(); $wx_pay = json_decode($weixn->weixin_pay('超级签消费', $orderId, $price, 'MWEB', 4), true); if($wx_pay['status']==1){ redirect($wx_pay['mweb_url']); + }else{ + $this->assign("error",$wx_pay['return_msg']); + $this->display('blank'); } - //var_dump($wx_pay); - //$this->assign("wxurl", $wx_pay['mweb_url']); } - - //$this->assign("url", $ret['url']); - - - - //$this->assign("price", self::signprice); - //$this->assign("order_id", $orderId); - //$this->assign("game_name",$gameInfo['game_name']); - //$this->assign("callback",$param['callback']); - //$this->display(); } @@ -393,200 +396,200 @@ class Ipa365Controller extends BaseController{ * 下载页面 判断订单是否支付成功 */ public function install_show() { - $orderId = I('order_id', 0); - $gameId = I('game_id', 0); - /* $userId = I('user_id', 0); - - $user = M('user', 'tab_')->where(array( - 'id' => $userId - ))->find(); */ - $userId = $this->userinfo['user_id']; - if (!$userId ) { - $this->error("请登入", "/mobile.php/ssg/login"); - } + $orderId = I('order_id', 0); + $gameId = I('game_id', 0); + /* $userId = I('user_id', 0); + + $user = M('user', 'tab_')->where(array( + 'id' => $userId + ))->find(); */ + $userId = $this->userinfo['user_id']; + if (!$userId ) { + $this->error("请登入", "/mobile.php/ssg/login"); + } // $userId = $_SESSION['user_id']; - if (!$userId ) { - $this->error("请登入", "/mobile.php/ssg/login"); - } - if (!$orderId || !$gameId || !$userId) { - $this->error("参数校验失败,请重试"); - } - - $supersign = M('game_supersign', 'tab_')->where(array('order_id' => $orderId,"game_id"=>$gameId))->find(); - if (!$supersign) { - $this->error("订单不存在"); - } - if ($supersign['pay_status'] != 1) { - $this->error("订单未支付"); - } - $game = M('game', 'tab_')->where(array('id' => $gameId))->find(); - - $this->assign('game', $game); - $this->assign('url', U('Ipa365/install', array( - 'order_id' => $orderId, - 'user_id' => $userId, - 'game_id' => $gameId - ))); - //获取礼包码 - $giftbag = M('giftbag', 'tab_')->field("*")->where(array("game_id"=>$gameId,"giftbag_version"=>3))->find(); - if(empty($giftbag)){ - $giftbag = false; - }else{ - $desribe = $giftbag['desribe']; - $mygif = $this->checkAccountGiftExist($userId,$giftbag['id']); - if(!empty($mygif)){ - //已经领取 - $giftbag =$mygif; - }else{ - if($giftbag['novice_num']>0){ - //领取 - $giftbag = $this->getNovice($userId,$this->userinfo['account'],$giftbag['id']); - } - } - $giftbag['desribe'] = $desribe; - - } - //验证是否领取 - $this->assign('giftbag', $giftbag); - $this->display(); + if (!$userId ) { + $this->error("请登入", "/mobile.php/ssg/login"); + } + if (!$orderId || !$gameId || !$userId) { + $this->error("参数校验失败,请重试"); + } + + $supersign = M('game_supersign', 'tab_')->where(array('order_id' => $orderId,"game_id"=>$gameId))->find(); + if (!$supersign) { + $this->error("订单不存在"); + } + if ($supersign['pay_status'] != 1) { + $this->error("订单未支付"); + } + $game = M('game', 'tab_')->where(array('id' => $gameId))->find(); + + $this->assign('game', $game); + $this->assign('url', U('Ipa365/install', array( + 'order_id' => $orderId, + 'user_id' => $userId, + 'game_id' => $gameId + ))); + //获取礼包码 + $giftbag = M('giftbag', 'tab_')->field("*")->where(array("game_id"=>$gameId,"giftbag_version"=>3))->find(); + if(empty($giftbag)){ + $giftbag = false; + }else{ + $desribe = $giftbag['desribe']; + $mygif = $this->checkAccountGiftExist($userId,$giftbag['id']); + if(!empty($mygif)){ + //已经领取 + $giftbag =$mygif; + }else{ + if($giftbag['novice_num']>0){ + //领取 + $giftbag = $this->getNovice($userId,$this->userinfo['account'],$giftbag['id']); + } + } + $giftbag['desribe'] = $desribe; + + } + //验证是否领取 + $this->assign('giftbag', $giftbag); + $this->display(); } /** * 获取用户安装历史url */ public function get_install_list() { - /* $gameId = I('game_id', 0); - $where = array( - 'pay_status' => 1, - 'ticket' => array('neq', '') - ); - if ($id) $where['game_id'] = $gameId; - - $list = M('game_supersign', 'tab_')->where($where)->select(); + /* $gameId = I('game_id', 0); + $where = array( + 'pay_status' => 1, + 'ticket' => array('neq', '') + ); + if ($id) $where['game_id'] = $gameId; + + $list = M('game_supersign', 'tab_')->where($where)->select(); // pp($list); - $url = $game['supersign_url']."?code={$code}"; - pp($url); - redirect($url); */ + $url = $game['supersign_url']."?code={$code}"; + pp($url); + redirect($url); */ } /** * 用户点击安装 */ public function install() { - $userId = $this->userinfo['user_id']; - if (!$userId ) { - $this->error("请登入", "/mobile.php/ssg/login"); - } - - $gameId = I('game_id', 0); - $orderId = I('order_id', 0); - if (!$userId || !$gameId || !$orderId) { - $this->error("参数有误!"); - } - M()->startTrans(); - // 获取支付记录 - $gamesign = M('game_supersign', 'tab_')->where(array( - 'order_id' => $orderId, - 'user_id' => $userId, - 'game_id' => $gameId, - 'pay_status' => 1, - ))->find(); - if (!$gamesign) { - // pp(M('game_supersign', 'tab_')->_sql()); - $this->error("支付记录不存在"); - } - if ($gamesign['url']) { - redirect($gamesign['url']); - } - - $token = $gamesign['token']; - $ipa365 = new Ipa365(); - - $i = 1; - while (1) { - // 获取授权码 - $list = $ipa365->ticketList(array( - 'token' => $token, - 'limit' => $i, - )); // @todo: 并发授权码已分配的情况 - $code = $list['data']['list'][$i-1]['code']; - $codeExists = M('game_supersign', 'tab_')->field('id')->where(array( - 'ticket' => $code, - ))->find(); - if (!$codeExists) { - break; - } - - $i ++; - } - - $game = M('game', 'tab_')->where(array( - 'id' => $gameId, - ))->find(); - $url = $game['supersign_url']."?code={$code}"; - $r = M('game_supersign', 'tab_')->where(array( - 'user_id' => $userId, - 'game_id' => $gameId, - 'pay_status' => 1 - ))->save(array( - 'ticket' => $code, // 调用安装的时候分配 - 'url' => $url, - )); - if (!$r) { - pp(M('game_supersign', 'tab_')->_sql()); - M()->rollback(); - return -1; - } - M()->commit(); - // 调用第三方连接 + $userId = $this->userinfo['user_id']; + if (!$userId ) { + $this->error("请登入", "/mobile.php/ssg/login"); + } + + $gameId = I('game_id', 0); + $orderId = I('order_id', 0); + if (!$userId || !$gameId || !$orderId) { + $this->error("参数有误!"); + } + M()->startTrans(); + // 获取支付记录 + $gamesign = M('game_supersign', 'tab_')->where(array( + 'order_id' => $orderId, + 'user_id' => $userId, + 'game_id' => $gameId, + 'pay_status' => 1, + ))->find(); + if (!$gamesign) { + // pp(M('game_supersign', 'tab_')->_sql()); + $this->error("支付记录不存在"); + } + if ($gamesign['url']) { + redirect($gamesign['url']); + } + + $token = $gamesign['token']; + $ipa365 = new Ipa365(); + + $i = 1; + while (1) { + // 获取授权码 + $list = $ipa365->ticketList(array( + 'token' => $token, + 'limit' => $i, + )); // @todo: 并发授权码已分配的情况 + $code = $list['data']['list'][$i-1]['code']; + $codeExists = M('game_supersign', 'tab_')->field('id')->where(array( + 'ticket' => $code, + ))->find(); + if (!$codeExists) { + break; + } + + $i ++; + } + + $game = M('game', 'tab_')->where(array( + 'id' => $gameId, + ))->find(); + $url = $game['supersign_url']."?code={$code}"; + $r = M('game_supersign', 'tab_')->where(array( + 'user_id' => $userId, + 'game_id' => $gameId, + 'pay_status' => 1 + ))->save(array( + 'ticket' => $code, // 调用安装的时候分配 + 'url' => $url, + )); + if (!$r) { + pp(M('game_supersign', 'tab_')->_sql()); + M()->rollback(); + return -1; + } + M()->commit(); + // 调用第三方连接 // pp($url); - redirect($url); + redirect($url); } /* * 打包列表 */ - public function pay_list() { - $userId = $this->userinfo['user_id']; - if (!$userId ) { - $this->error("请登入", "/mobile.php/ssg/login"); - } - - $list = M('game_supersion', 'tab_')->where(array( - 'user_id' => $userId, - ))->select(); - - $this->assign("list", $list); - $this->display(); - } - - // alipay - public function alipay($param) { - $pay = new \Think\Pay($param['apitype'],C($param['config'])); - $vo = new \Think\Pay\PayVo(); - $vo->setBody("超级签消费") - ->setFee($param['price'])//支付金额 - ->setTitle($param['title']) - ->setOrderNo($param['order_id']) - ->setService($param['server']) - ->setSignType($param['signtype']) - ->setPayMethod("wap") - ->setTable("supersign") - ->setPayWay($param['payway']) - ->setCallback($param['callback']) - ->setNotifyUrl($param['notifyurl']) - ->setGameName(get_game_name($param['game_id'])) - ->setServerId(0) - ->setUserId($param['user_id']) - ->setSdkVersion($param['sdk_version']); - $pay_['url']= $pay->buildRequestForm($vo); - //$pay_['out_trade_no']= $out_trade_no; - return $pay_; - - } - //领取礼包码 - public function getNovice($user_id,$account,$gift_id){ + public function pay_list() { + $userId = $this->userinfo['user_id']; + if (!$userId ) { + $this->error("请登入", "/mobile.php/ssg/login"); + } + + $list = M('game_supersion', 'tab_')->where(array( + 'user_id' => $userId, + ))->select(); + + $this->assign("list", $list); + $this->display(); + } + + // alipay + public function alipay($param) { + $pay = new \Think\Pay($param['apitype'],C($param['config'])); + $vo = new \Think\Pay\PayVo(); + $vo->setBody("超级签消费") + ->setFee($param['price'])//支付金额 + ->setTitle($param['title']) + ->setOrderNo($param['order_id']) + ->setService($param['server']) + ->setSignType($param['signtype']) + ->setPayMethod("wap") + ->setTable("supersign") + ->setPayWay($param['payway']) + ->setCallback($param['callback']) + ->setNotifyUrl($param['notifyurl']) + ->setGameName(get_game_name($param['game_id'])) + ->setServerId(0) + ->setUserId($param['user_id']) + ->setSdkVersion($param['sdk_version']); + $pay_['url']= $pay->buildRequestForm($vo); + //$pay_['out_trade_no']= $out_trade_no; + return $pay_; + + } + //领取礼包码 + public function getNovice($user_id,$account,$gift_id){ $data =M("giftbag",'tab_')->find($gift_id); $novice_str = $data['novice']; $novice_arr = str2arr($novice_str,","); @@ -624,8 +627,8 @@ class Ipa365Controller extends BaseController{ M("giftbag",'tab_')->commit(); return $record; } - } - public function checkAccountGiftExist($user_id,$gift_id){ + } + public function checkAccountGiftExist($user_id,$gift_id){ $map['user_id'] = $user_id; $map['gift_id'] = $gift_id; return M("gift_record",'tab_')->field('*')->where($map)->find(); diff --git a/Application/Sdk/View/default/Ipa365/blank.html b/Application/Sdk/View/default/Ipa365/blank.html index 43bfb1f0e..86f61fc06 100644 --- a/Application/Sdk/View/default/Ipa365/blank.html +++ b/Application/Sdk/View/default/Ipa365/blank.html @@ -3,26 +3,26 @@
-网络似乎不太好
-{$error}
+