Ejemplo n.º 1
0
 /**
  * 卡号充值
  */
 public function actionCardPay()
 {
     if ($this->_isPost()) {
         //post请求,充值
         $this->_modelGoldCard = $this->_getGlobalData('Model_GoldCard', 'object');
         $data = $this->_modelGoldCard->pay($_POST, $this->game_id);
         $this->_utilMsg->showMsg($data['msg'], $data['status'], $data['href'], null);
     } elseif ($this->_isAjax()) {
         //ajax请求返回用户名
         $this->_utilApiFrg = $this->_getGlobalData('Util_ApiFrg', 'object');
         $serverId = Tools::coerceInt($_GET['server_id']);
         $getArr = array('c' => 'UserData', 'a' => 'UserQuery', 'Page' => 1);
         $postArr = array('PageSize' => 10, 'Query[start]' => $_GET['user_name'], 'Query[Items]' => '8');
         $this->_utilApiFrg->addHttp($serverId, $getArr, $postArr);
         $this->_utilApiFrg->send();
         $data = $this->_utilApiFrg->getResult();
         if (count($data['data']['list'])) {
             $user = reset($data['data']['list']);
             $this->_returnAjaxJson(array('status' => 1, 'data' => $user['VUserName']));
         } else {
             $this->_returnAjaxJson(array('status' => 0, 'data' => null));
         }
     } else {
         //显示页面
         $this->_checkOperatorAct();
         $serverList = $this->_getGlobalData('server/server_list_2');
         foreach ($serverList as &$list) {
             unset($list['room_id'], $list['game_type_id'], $list['marking'], $list['time_zone'], $list['server_url']);
         }
         $this->_view->assign('serverList', json_encode($serverList));
         $this->_view->display();
     }
 }
Ejemplo n.º 2
0
 /**
  * 根据id来接收一个请求
  * @param int $id
  * @return boolean/string 
  */
 private function _acceptId($id)
 {
     $data = $this->findById($id);
     if (!in_array($data['type'], $this->_options)) {
         return "Id:{$id} : <font color='#FF0000'>您没有权限审核这项</font>.";
     }
     if ($this->_operatorsLimit && !in_array($data['operator_id'], $this->_operatorsLimit)) {
         return "Id:{$id} : <font color='#FF0000'>您没有权限审核这项</font>.";
     }
     if ($data) {
         $this->_utilRbac = $this->_getGlobalData('Util_Rbac', 'object');
         $userClass = $this->_utilRbac->getUserClass();
         if ($data['is_send'] == 1) {
             return "Id:{$id} 已经被审核过";
         }
         if ($data['type'] >= 10) {
             //如果是批量审核的话
             switch ($data['type']) {
                 case '10':
                     //多服务器发送奖励
                     $serverList = $this->_getGlobalData('gameser_list');
                     $data['post_data'] = unserialize($data['post_data']);
                     $data['post_data']['send_players'] = str_replace('\\', '', $data['post_data']['send_players']);
                     //去除\,好反序列化
                     $sendPlayerIds = unserialize($data['post_data']['send_players']);
                     //得到要发送的玩家
                     unset($data['post_data']['send_players']);
                     //删除掉这些玩家,一会好发送post数据给游戏接口
                     $this->_utilApiFrg = $this->_getGlobalData('Util_ApiFrg', 'object');
                     $this->_utilApiFrg->curlInit();
                     $getArr = unserialize($data['send_action']);
                     foreach ($sendPlayerIds as $key => $list) {
                         $data['post_data']['UserIds'] = implode(',', $list);
                         //加自要发送的玩家ID
                         $data['post_data']['UserIds'] = str_replace(' ', '', $data['post_data']['UserIds']);
                         //去掉空格
                         $this->_utilApiFrg->addHttp($key, $getArr, $data['post_data']);
                     }
                     $this->_utilApiFrg->send();
                     $sendResult = array();
                     $result = $this->_utilApiFrg->getResults();
                     foreach ($result as $key => $backParams) {
                         $color = $backParams['msgno'] == 1 ? '#00CC00' : '#ff0000';
                         //定义颜色
                         $message = $backParams['msgno'] == 1 ? '发送成功' : '发送失败';
                         $backParams['message'] = $backParams['message'] ? $backParams['message'] : $message;
                         if ($backParams) {
                             $string = "{$serverList[$key]['full_name']} : <font color='{$color}'>{$backParams['message']}</font>";
                             $string = $this->_createAcceptMsg(1, $backParams, $string);
                             //发送消息
                             array_push($sendResult, $string);
                         } else {
                             $string = "{$serverList[$key]['full_name']} : <font color='{$color}'>{$backParams['message']}</font>";
                             array_push($sendResult, $string);
                         }
                     }
                     $retStr = implode('<br>', $sendResult);
                     $this->update(array('is_send' => 1, 'audit_ip' => ip2long(Tools::getClientIP()), 'send_time' => CURRENT_TIME, 'audit_user_id' => $userClass['_id'], 'send_result' => $retStr), "Id={$id}");
                     $this->_utilApiFrg = null;
                     return $retStr;
                 case '11':
                     //多服务器奖励触发
                     $serverList = $this->_getGlobalData('gameser_list');
                     $data['post_data'] = unserialize($data['post_data']);
                     $serverIds = $data['post_data']['server_ids'];
                     //得到要发送的服务器
                     unset($data['post_data']['server_ids']);
                     //删除掉这些玩家,一会好发送post数据给游戏接口
                     $this->_utilApiFrg = $this->_getGlobalData('Util_ApiFrg', 'object');
                     $this->_utilApiFrg->curlInit();
                     $getArr = unserialize($data['send_action']);
                     foreach ($serverIds as $serverId) {
                         $this->_utilApiFrg->addHttp($serverId, $getArr, $data['post_data']);
                     }
                     $this->_utilApiFrg->send();
                     $sendResult = array();
                     $result = $this->_utilApiFrg->getResults();
                     foreach ($result as $key => $backParams) {
                         $color = $backParams['msgno'] == 1 ? '#00CC00' : '#ff0000';
                         //定义颜色
                         $message = $backParams['msgno'] == 1 ? '发送成功' : '发送失败';
                         $backParams['message'] = $backParams['message'] ? $backParams['message'] : $message;
                         if ($backParams) {
                             $string = "{$serverList[$key]['full_name']} : <font color='{$color}'>{$backParams['message']}</font>";
                             array_push($sendResult, $string);
                         } else {
                             $string = "{$serverList[$key]['full_name']} : <font color='{$color}'>{$backParams['message']}</font>";
                             array_push($sendResult, $string);
                         }
                     }
                     $retStr = implode('<br>', $sendResult);
                     $this->update(array('is_send' => 1, 'audit_ip' => ip2long(Tools::getClientIP()), 'send_time' => CURRENT_TIME, 'audit_user_id' => $userClass['_id'], 'send_result' => $retStr), "Id={$id}");
                     $this->_utilApiFrg = null;
                     return $retStr;
                 case '12':
                     //生成金币卡
                     $this->_modelGoldCard = $this->_getGlobalData('Model_GoldCard', 'object');
                     $data = $this->_modelGoldCard->import(unserialize($data['post_data']));
                     if ($data['status'] == 1) {
                         $updateArr = array('is_send' => 1, 'audit_ip' => ip2long(Tools::getClientIP()), 'send_time' => CURRENT_TIME, 'audit_user_id' => $userClass['_id'], 'send_result' => "Id:{$id} <font color='#00CC00'>生成金币卡成功</font>");
                         $this->update($updateArr, "Id={$id}");
                         return '<font color="#00CC00">' . $data['msg'] . '</font>';
                     }
                     return '<font color="#FF0000">生成金币卡失败</font>';
             }
         } else {
             $this->_utilFRGInterface = $this->_getGlobalData('Util_FRGInterface', 'object');
             $this->_utilFRGInterface->setServerUrl($data['server_id']);
             $this->_utilFRGInterface->setGet(unserialize($data['send_action']));
             $this->_utilFRGInterface->setPost(unserialize($data['post_data']));
             $backParams = $this->_utilFRGInterface->callInterface();
             $this->_utilFRGInterface = null;
             $color = $backParams['msgno'] == 1 ? '#00CC00' : '#ff0000';
             //定义颜色
             if ($backParams['msgno'] == 1) {
                 $updateArr = array('is_send' => 1, 'audit_ip' => ip2long(Tools::getClientIP()), 'send_time' => CURRENT_TIME, 'audit_user_id' => $userClass['_id'], 'send_result' => $this->_createAcceptMsg($data['type'], $backParams, "Id:{$id} <font color='{$color}'>{$backParams['message']}</font>"));
                 $this->update($updateArr, "Id={$id}");
             }
             return $this->_createAcceptMsg($data['type'], $backParams, "Id:{$id} <font color='{$color}'>{$backParams['message']}</font>");
         }
     }
     return "无此记录Id : {$id}";
 }
Ejemplo n.º 3
0
 /**
  * 卡号充值
  */
 public function actionCardPay()
 {
     if ($this->_isPost()) {
         //post请求,充值
         $this->_modelGoldCard = $this->_getGlobalData('Model_GoldCardHD', 'object');
         $data = $this->_modelGoldCard->pay($_POST, self::GAME_ID);
         $this->_utilMsg->showMsg($data['msg'], $data['status'], $data['href'], null);
         //直接发卡测试
         //			$getArr=array(
         //				'm'=>'User',
         //				'c'=>'Deposit',
         //				'a'=>'Pay',
         //				'addcoin'=>1,	//套餐
         //				'Uname'=>$_POST['use_name'],
         //				'Money'=>$_POST['Money'],
         //				'Transactionid'=>$_POST['Transactionid'],
         //				'Depay'=>0,
         //				'gDepay'=>0,
         //				'isGoldCard'=>1,
         //				'GoldCard'=>md5(CURRENT_TIME),
         //				'GameId'=>1,
         //				'ServiceId'=>'B2',
         //	//			'syskey'=>$this->_payKey[$cardDetail['operator_id']]['key'],
         //			);
         //			$syskey='!@$$DSDGldj*73@sls-(3';
         //			$sign="Depay={$getArr['Depay']}&gDepay={$getArr['gDepay']}&addcoin={$getArr['addcoin']}&Uname={$getArr['Uname']}&Money={$getArr['Money']}&GameId={$getArr['GameId']}&ServiceId={$getArr['ServiceId']}&Transactionid={$getArr['Transactionid']}&Key={$syskey}";
         //			$getArr['Sign']=md5($sign);
         //			$serverList = $this->_getGlobalData('server/server_list_'.self::GAME_ID);
         //			$url=$serverList[$_POST['server_id']]['server_url'].'php/interface.php';
         //			$this->_utilApiFrg=$this->_getGlobalData('Util_ApiFrg','object');
         //			$this->_utilApiFrg->addHttp($url,$getArr);
         //			$this->_utilApiFrg->send();
         //			$data=$this->_utilApiFrg->getResult();
         //			if ($data['data']==1){//成功
         //				$this->_utilMsg->showMsg('领取成功',1);
         //			}else {
         //				$this->_utilMsg->showMsg('领取失败<br>'.$data['message'],1);
         //			}
     } elseif ($this->_isAjax()) {
         //ajax请求返回用户名
         $this->_utilApiFrg = $this->_getGlobalData('Util_ApiFrg', 'object');
         $serverId = Tools::coerceInt($_GET['server_id']);
         $getArr = array('c' => 'UserData', 'a' => 'UserQuery', 'Page' => 1);
         $postArr = array('PageSize' => 10, 'Query[start]' => $_GET['user_name'], 'Query[Items]' => '8');
         $this->_utilApiFrg->addHttp($serverId, $getArr, $postArr);
         $this->_utilApiFrg->send();
         $data = $this->_utilApiFrg->getResult();
         if (count($data['data']['list'])) {
             $user = reset($data['data']['list']);
             $this->_returnAjaxJson(array('status' => 1, 'data' => $user['VUserName']));
         } else {
             $this->_returnAjaxJson(array('status' => 0, 'data' => null));
         }
     } else {
         //显示页面
         $this->_checkOperatorAct();
         $serverList = $this->_getGlobalData('server/server_list_' . self::GAME_ID);
         foreach ($serverList as &$list) {
             unset($list['room_id'], $list['game_type_id'], $list['marking'], $list['time_zone'], $list['timezone'], $list['server_url'], $list['timer'], $list['ext']);
         }
         $this->_view->assign('serverList', json_encode($serverList));
         $this->_view->display();
     }
 }