示例#1
0
 /**
  * @desc 表赛报告
  */
 public function actionGameData()
 {
     $gameId = Yii::app()->request->getQuery('game', '');
     $teamId = Yii::app()->request->getQuery('team', '');
     $tournament = new TournamentModel();
     $gameDatas = $tournament->findByObjectId($gameId);
     $gameData = array();
     if (isset($gameDatas[0])) {
         $gameData = $gameDatas[0];
     }
     $playerScoreModel = new PlayerScoreModel();
     $userModel = new UserModel();
     //$playerData = $playerScoreModel->findByLeague($leagueId);
     $teamMembers = array();
     $tempData = $gameDatas[0];
     $playMembers = $playerScoreModel->findScorePlayer($gameId, $teamId);
     //		print_r($gameData  );exit("dafafdas");
     //$playerData = $playerScoreModel->findByGameId($teamId);
     $playerData = $playerScoreModel->findCompetitionTeamPlayerScore($gameId, $teamId);
     //找到属于该联赛的所有球员
     $playerArr = array();
     foreach ($playerData as $playerScore) {
         $playerId = $playerScore->player->objectId;
         if (!in_array($playerId, $playerArr)) {
             array_push($playerArr, $playerId);
         }
     }
     //统计球员在某个联赛的进球总数
     $playerGoalArr = array();
     foreach ($playerArr as $playerId) {
         $playerGoals = 0;
         foreach ($playerData as $playerScore) {
             if ($playerId == $playerScore->player->objectId && isset($playerScore->goals) && is_numeric($playerScore->goals)) {
                 $playerGoals += $playerScore->goals;
             }
         }
         $playerGoalArr[$playerId] = $playerGoals;
     }
     arsort($playerGoalArr);
     //合并球员的一些信息
     $playerRangeArr = array();
     foreach ($playerGoalArr as $playerRange => $playerGoal) {
         foreach ($playerData as $playerScore) {
             if ($playerRange == $playerScore->player->objectId) {
                 if (!isset($playerScore->player->nickname) || empty($playerScore->player->nickname)) {
                     $playerScore->player->nickname = '匿名';
                 }
                 if (!isset($playerScore->team->name) || empty($playerScore->team->name)) {
                     $playerScore->team->name = '匿名球队';
                 }
                 $playerRangeArr[$playerRange] = array('totalGoals' => $playerGoal, 'name' => $playerScore->player->nickname, 'team' => $playerScore->team->name);
             }
         }
     }
     //统计球员在某个联赛的助攻总数
     $playerAssistsArr = array();
     foreach ($playerArr as $playerId) {
         $playerAssists = 0;
         foreach ($playerData as $playerScore) {
             if ($playerId == $playerScore->player->objectId && isset($playerScore->assists) && is_numeric($playerScore->assists)) {
                 $playerAssists += $playerScore->assists;
             }
         }
         $playerAssistsArr[$playerId] = $playerAssists;
     }
     arsort($playerAssistsArr);
     //合并球员的一些信息
     $playerAssistsRangeArr = array();
     foreach ($playerAssistsArr as $playerRange => $playerAssists) {
         foreach ($playerData as $playerScore) {
             if ($playerRange == $playerScore->player->objectId) {
                 if (!isset($playerScore->player->nickname) || empty($playerScore->player->nickname)) {
                     $playerScore->player->nickname = '匿名';
                 }
                 if (!isset($playerScore->team->name) || empty($playerScore->team->name)) {
                     $playerScore->team->name = '匿名球队';
                 }
                 $playerAssistsRangeArr[$playerRange] = array('totalAssists' => $playerAssists, 'name' => $playerScore->player->nickname, 'team' => $playerScore->team->name);
             }
         }
     }
     $this->render('gameData', array("teamId" => $teamId, 'gameData' => $gameData, 'playMembers' => $playMembers, 'playerRangeArr' => $playerRangeArr, 'playerAssistsRangeArr' => $playerAssistsRangeArr));
 }