protected function _exec()
 {
     $enemyId = $this->getParam('enemyId', 'string');
     $battletype = $this->getParam('battletype', 'string');
     $heroId = $this->getParam('heroid', 'int');
     $battleStar = $this->getParam('battleStar', 'int');
     $battleMgr = new BattleManager();
     $cacheInfo = $battleMgr->getBattleCache($heroId);
     if (!empty($cacheInfo)) {
         $cacheInfoArr = explode(":", $cacheInfo);
         if ($cacheInfoArr[2] == 1) {
             $this->throwException("battle has get rewards");
         }
     }
     $battleMgr->setBattleCache($heroId, $enemyId, $battletype, 1);
     //Elite Ordinary
     if ($battleStar > 0 && $battleStar <= 3) {
         $rateHeroMgr = new RatingHeroManager();
         $enemyScore = $rateHeroMgr->getHeroRate($enemyId);
         $addScore = $battleStar * 10;
         $rateHeroMgr->addHeroRate($heroId, $addScore);
         return array("score" => $addScore);
     }
     return FALSE;
 }
 protected function _exec()
 {
     $characterId = $this->getParam('heroid', 'int');
     $score = $this->getParam('score', 'int');
     $hero_rate_mgr = new RatingHeroManager();
     $heros = $hero_rate_mgr->getHeros($score);
     return array("enemys" => $heros);
 }
 protected function _exec()
 {
     $characteruid = $this->getParam('characteruid', 'string');
     $result = array();
     //item 信息
     $item_mgr = new UserGameItemManager($characteruid);
     $items = $item_mgr->getItemList();
     $heroInfo['items'] = $items;
     //vip
     $vip_mgr = new CharacterAccountManager();
     $vipInfo = $vip_mgr->getVipCache($characteruid);
     $heroInfo['vipData'] = $vipInfo;
     //rate
     $rate_mgr = new RatingHeroManager();
     $heroInfo['heroRate'] = $rate_mgr->getHeroRate($characteruid);
     $result['topHeroRate'] = $rate_mgr->getTop();
     $heroInfo['heroRateTime'] = $rate_mgr->getRatingRewardTime($characteruid);
     $clan_rate_mgr = new RatingClanManager();
     $result['topClanRate'] = $clan_rate_mgr->getTop();
     $heroInfo['clanRateTime'] = $clan_rate_mgr->getRatingRewardTime($characteruid);
     $bossMgr = new ClanBossManager();
     $heroInfo['bossData'] = $bossMgr->getCurClanBoss();
     //clan
     $user_clan_mgr = new UserClanManager();
     $user_clan_info = $user_clan_mgr->getUserClanInfo($characteruid);
     if (!empty($user_clan_info)) {
         require_once GAMELIB . '/model/ClanManager.class.php';
         $clan_mgr = new ClanManager();
         $clan_info = $clan_mgr->getClanInfo($user_clan_info['clan_id']);
         $membersArr = array();
         $clanmembers = explode(",", $clan_info['members']);
         foreach ($clanmembers as $memberId) {
             $simclaninfo = $user_clan_mgr->getUserClanInfo($memberId);
             if (!empty($simclaninfo)) {
                 array_push($membersArr, $simclaninfo);
             }
         }
         array_push($membersArr, $user_clan_mgr->getUserClanInfo($clan_info['adminId']));
         $clan_info['membersArr'] = $membersArr;
         $clanTalk = $clan_mgr->getClanTalk($user_clan_info['clan_id']);
         if (!empty($clanTalk)) {
             $clan_info['talk'] = $clanTalk;
         }
         $heroInfo['clanRate'] = $clan_rate_mgr->getClanRate($user_clan_info['clan_id']);
         $clan_info['clanUser'] = $user_clan_info;
         $heroInfo['clan'] = $clan_info;
     }
     $result['hero_info'] = $heroInfo;
     return $result;
 }
 protected function _exec()
 {
     $heroId = $this->getParam('heroid', 'int');
     $rank = $this->getParam('rank', 'int');
     $rateHeroMgr = new RatingHeroManager();
     $cachetime = $rateHeroMgr->getRatingRewardTime($heroId);
     $newTime = strtotime("next Monday");
     if (empty($cachetime)) {
         $rateHeroMgr->setRatingRewardTime($heroId, $newTime);
     } else {
         if ($cachetime > time()) {
             $this->throwException("hero {$heroId} has recieve hero reward");
         } else {
             $rateHeroMgr->setRatingRewardTime($heroId, $newTime);
         }
     }
     if ($rank > 0 && $rank <= 100) {
     }
     return array('rateHeroTime' => $newTime);
 }