diff --git a/Application/Sdk/Common/function.php b/Application/Sdk/Common/function.php index 0d44fe86..b21f5dc9 100644 --- a/Application/Sdk/Common/function.php +++ b/Application/Sdk/Common/function.php @@ -237,12 +237,21 @@ function getChinaChar($num) return $str; } +<<<<<<< HEAD +======= +/** + * 公共返回方法 + * @param number $code 200成功 非200失败 + * @param string $msg 错误提示 + * @param unknown $data 业务数据 + */ +>>>>>>> 20127711071ae37d07ac039250cb9bdc00bbdbf7 function re_msg($code=200,$msg='',$data=[]) { $ret['code'] = $code; $ret['msg'] = $msg; $ret['data'] = $data; echo base64_encode(json_encode($ret)); - die(); + exit(); } diff --git a/Application/Sdk/Controller/BaseController.class.php b/Application/Sdk/Controller/BaseController.class.php index 35ee0ac0..b38e7798 100644 --- a/Application/Sdk/Controller/BaseController.class.php +++ b/Application/Sdk/Controller/BaseController.class.php @@ -10,7 +10,11 @@ class BaseController extends RestController{ 'Apple.apple_platform_pay','Spend.notice','Apple.apple_union_pay','WapPay.wap_shortcut_pay', 'WapPay.shortcut_pay','WapPay.android_shortcut_pay','WapPay.wap_shortcut_pay','WapPay.wap_shortcut_pay', 'Apple.apple_weixin_pay','Ipa365','User.user_login','platform_coin_deduction','test','get_user_money', +<<<<<<< HEAD 'file_pay','pay','GameGiftPage','UserH5', +======= + 'file_pay','pay','get_suspend', +>>>>>>> 20127711071ae37d07ac039250cb9bdc00bbdbf7 ]; // 不需要验证TOKEN的接口 protected $noNeedToken = [ @@ -18,19 +22,24 @@ class BaseController extends RestController{ 'Jpush', 'LoginNotify', 'Notice', 'OA', 'OTP', 'OTPServer', 'Pay', 'Payios', 'PointShop', 'Spend', 'User', 'WapPay', 'Wechat', 'XinJiApi' ]; +<<<<<<< HEAD protected $userId; +======= + // 验证token得到的user H5页面使用 + protected $user; +>>>>>>> 20127711071ae37d07ac039250cb9bdc00bbdbf7 protected function _initialize(){ C(api('Config/lists')); $c = CONTROLLER_NAME; $a = ACTION_NAME; - + $data = json_decode ( base64_decode ( file_get_contents ( "php://input" ) ), true ); + if (!(in_array($c, $this->noNeedGame) || in_array($a, $this->noNeedGame) || in_array($c.".".$a, $this->noNeedGame))) { /* * if( !preg_match("/apple_alipay_pay/",GetCurUrl()) &&!preg_match("/apple_weixin_pay/",GetCurUrl()) &&!preg_match("/get_alipay_zmxy_return/",GetCurUrl()) &&!preg_match("/apple_platform_pay/",GetCurUrl()) &&!preg_match("/notice/",GetCurUrl()) &&!preg_match("/apple_union_pay/",GetCurUrl()) &&!preg_match("/test/",GetCurUrl()) &&!preg_match("/wap_shortcut_pay/",GetCurUrl()) &&!preg_match("/shortcut_pay/",GetCurUrl()) &&!preg_match("/android_shortcut_pay/",GetCurUrl()) &&!preg_match("/wap_shortcut_pay/",GetCurUrl()) &&!preg_match("/apple_weixin_pay/",GetCurUrl()) &&!preg_match("/Ipa365/",GetCurUrl()) &&!preg_match("/user_login/",GetCurUrl()) &&!preg_match("/platform_coin_deduction/",GetCurUrl()) ){ */ - $data = json_decode ( base64_decode ( file_get_contents ( "php://input" ) ), true ); // #判断数据是否为空 if (empty ( $data ) || empty ( $data ['game_id'] )) { echo base64_encode ( json_encode ( array ( @@ -39,6 +48,12 @@ class BaseController extends RestController{ ) ) ); exit (); } + + /* if (!$data['timestamp'] || !$data['nonce']) { + re_msg(10, "参数不足", $data); + } */ + + $md5Sign = $data['md5_sign']; unset($data['md5_sign']); @@ -53,12 +68,14 @@ class BaseController extends RestController{ if (isset($data['openid'])) // 小程序支付增加参数 unset($data['openid']); + $md5_sign = $this->encrypt_md5($data,$game_data["access_key"]);//mengchuang DZQkkiz!@#9527 if($md5Sign !== $md5_sign){ $this->set_message(0,"fail","验签失败"); } } +<<<<<<< HEAD // if (!(in_array($c, $this->noNeedToken) || in_array($a, $this->noNeedToken) || in_array($c.".".$a, $this->noNeedToken))) { // $userToken = I("user_token"); @@ -74,6 +91,16 @@ class BaseController extends RestController{ // } +======= + + // 验证token 获取登入用户 + if (!(in_array($c, $this->noNeedToken) || in_array($a, $this->noNeedToken) || in_array($c.".".$a, $this->noNeedToken))) { + $this->user = M("user", "tab_")->where(['user_token' => $data['user_token']])->find(); + if (!$this->user) { + + } + } +>>>>>>> 20127711071ae37d07ac039250cb9bdc00bbdbf7 } diff --git a/Application/Sdk/Controller/GameController.class.php b/Application/Sdk/Controller/GameController.class.php index 01b962c7..5a72e7b6 100644 --- a/Application/Sdk/Controller/GameController.class.php +++ b/Application/Sdk/Controller/GameController.class.php @@ -40,36 +40,49 @@ class GameController extends BaseController{ * 小纯洁 */ public function get_suspend(){ - $data = json_decode(base64_decode(file_get_contents("php://input"),true)); - + $data = json_decode(base64_decode(file_get_contents("php://input")), true); + if (I('debug') == 1) { + $data['user_id'] = 1; + } + if(empty($data['user_id'])) { re_msg(1004, 'fail', '用户不存在'); } - $user_token = M('user','tab_')->where(['id' => $data['user_id']])->getField('user_token'); - - if (!$user_token) { + $userToken = M('user','tab_')->where(['id' => $data['user_id']])->getField('user_token'); + if (!$userToken) { re_msg(1004, 'fail', '数据有误'); } - $ball_menus = M('tool','tab_')->where(['name' => 'sdk_menu'])->find(); - $menus = json_decode($ball_menus['config'],true); - - $personal_menu = M('tool','tab_')->where(['name' => 'personal_menu'])->find(); - $menus_item = json_decode($personal_menu['config'],true); - - foreach($menus as $k => $v) - { - $menus[$k]['icon'] = is_https()?'https://':'http://' . $_SERVER['SERVER_NAME'] . $v['icon']; - $menus[$k]['url'] = $v['url'] . '/user_token/' . $user_token; + $sdkMenus = M('tool','tab_')->where(['name' => 'sdk_menu'])->find(); + $menus = json_decode($sdkMenus['config'],true); + foreach($menus as $k => $v) { + $menus[$k]['icon'] = C('ADMIN_DOMAIN') . $v['icon']; + $menus[$k]['url'] = $_SERVER['HTTP_HOST'].$v['url'] . '/user_token/' . $userToken; if ($menus[$k]['type'] == 1) $menus[$k]['ios_url'] = "?action=".$menus[$k]['name']; - else - $menus[$k]['ios_url'] = $menus[$k]['url']."?action=push"; + else { // H5 + if ($data['sdk_version'] == 2 && $v['name'] == 'suppersign') + $menus[$k]['ios_url'] = $menus[$k]['url']."?action=push"; + if ($data['sdk_version'] == 1 && $v['name'] == 'suppersign') + unset($menus[$k]); + } + } + $personalMenu = M('tool','tab_')->where(['name' => 'personal_menu'])->getField('config'); + $personalMenu = json_decode($personalMenu, true); + foreach($personalMenu as &$v) { + $v['icon'] = C('ADMIN_DOMAIN') . $v['icon']; + $v['url'] = $_SERVER['HTTP_HOST'].$v['url'] . '/user_token/' . $userToken; + if ($v['type'] == 1) // 1 H5页面 + $v['ios_url'] = "?action=".$v['name']; + else { + if ($data['sdk_version'] == 2 && $v['name'] == 'suppersign') + $v['ios_url'] = $v['url']."?action=push"; + else + unset($v); + } } - - foreach($menus_item as $k => $v) - { - $menus_item[$k]['icon'] = is_https()?'https://':'http://' . $_SERVER['SERVER_NAME'] . $v['icon']; + foreach($menus_item as $k => $v) { + $menus_item[$k]['icon'] = C('ADMIN_DOMAIN') . $v['icon']; $menus_item[$k]['url'] = $v['url'] . '/user_token/' . $user_token; if ($menus_item[$k]['type'] == 1) $menus_item[$k]['ios_url'] = "?action=".$menus_item[$k]['name']; @@ -78,7 +91,7 @@ class GameController extends BaseController{ } array_multisort(array_column($menus,'sort'),SORT_ASC,$menus); - array_multisort(array_column($menus_item,'sort'),SORT_ASC,$menus_item); + array_multisort(array_column($personalMenu,'sort'),SORT_ASC,$personalMenu); $ball_status = M('config','sys_')->where(['name' => 'WAP_SUSPEND_SHWO_STATUS'])->getField('value'); $sites_ball_logo = M('config','sys_')->where(['name' => 'WAP_SUSPEND_ICON'])->getField('value'); @@ -86,17 +99,20 @@ class GameController extends BaseController{ if(strpos($sites_ball_logo, 'http')!==false){ $sites_ball_logo = $sites_ball_logo; }else{ - $sites_ball_logo = 'http://'.$_SERVER['HTTP_HOST'].$sites_ball_logo; + $sites_ball_logo = C('ADMIN_DOMAIN').$sites_ball_logo; } - $data = [ + $ret = [ 'sites_ball_logo' => $sites_ball_logo, 'ball_status' => $ball_status, 'menus' => $menus, - 'mine_features' => $menus_item, + 'mine_features' => $personalMenu, ]; - re_msg(200,'获取成功',$data); + if (I('debug') == 1) + pp(($ret)); + re_msg(200,'获取成功',$ret); } + //获取游戏域名 //yyh 2018 10 23 public function get_game_domain(){ diff --git a/Application/Sdk/Controller/UserController.class.php b/Application/Sdk/Controller/UserController.class.php index 23d462f6..24bdf81a 100644 --- a/Application/Sdk/Controller/UserController.class.php +++ b/Application/Sdk/Controller/UserController.class.php @@ -3141,8 +3141,6 @@ class UserController extends BaseController exit; } - - }