/** * @desc 分享联赛数据 */ public function actionLeagueData() { $leagueId = Yii::app()->request->getQuery('league', ''); $teamModel = new TeamModel(); //找到联赛中的球队 $leagueTeams = $teamModel->findRowsByRelation("teams", "League", $leagueId); $groupModel = new GroupModel(); $leagueStatModel = new LeagueScoreStatModel(); $groupTeams = array(); $groupTeamsArr = array(); //先找到联赛中的组 $groupRows = $groupModel->findGroupTeamsByLeague($leagueId); //查找联赛中球队的积分信息 $leagueStatTeams = $leagueStatModel->findTeamByLeagueId($leagueId); if (isset($leagueStatTeams[0]->league->name)) { $leagueName = $leagueStatTeams[0]->league->name; } else { $leagueName = '未知联赛'; } foreach ($groupRows as $group) { $groupId = $group->objectId; //找到每个组的球队 $groupRelTeams = $teamModel->findRowsByRelation("teams", "Group", $groupId); $groupSortTeams = array(); foreach ($leagueStatTeams as $statTeam) { foreach ($groupRelTeams as $team) { $team->groupName = $group->name; $team->groupObjectId = $group->objectId; foreach ($leagueTeams as $lTeam) { if ($lTeam->objectId == $team->objectId) { $lTeam->selected = 1; } } if (isset($statTeam->team->objectId)) { if ($statTeam->team->objectId == $team->objectId) { $team->stat = $statTeam; array_push($groupSortTeams, $team); } } } } $group->relteams = $groupSortTeams; $groupTeamsArr = $groupRelTeams; array_push($groupTeams, $groupTeamsArr); } $this->render('leagueData', array('leagueTeams' => $leagueTeams, 'groupRows' => $groupRows, "groupTeams" => $groupTeams, 'leagueName' => $leagueName)); }
/** * @desc 数据统计 */ public function actionTongji() { $masterId = CommonFunction::getUserId(); $leagueModel = new LeagueModel(); //判断用户是否有管理联赛的权限 $res = $leagueModel->allowEditLeague($masterId); $leagueId = $res[0]->objectId; $teamModel = new TeamModel(); //找到联赛中的球队 $leagueTeams = $teamModel->findRowsByRelation("teams", "League", $leagueId); $groupModel = new GroupModel(); $teamScoreModel = new TeamScoreModel(); $leagueStatModel = new LeagueScoreStatModel(); $groupTeams = array(); $groupTeamsArr = array(); //先找到联赛中的组 $groupRows = $groupModel->findGroupTeamsByLeague($leagueId); //查找联赛中球队的积分信息 $leagueStatTeams = $leagueStatModel->findTeamByLeagueId($leagueId); // var_dump($leagueStatTeams);exit; foreach ($groupRows as $group) { $groupId = $group->objectId; //找到每个组的球队 $groupRelTeams = $teamModel->findRowsByRelation("teams", "Group", $groupId); $groupSortTeams = array(); foreach ($leagueStatTeams as $statTeam) { foreach ($groupRelTeams as $team) { $team->groupName = $group->name; $team->groupObjectId = $group->objectId; foreach ($leagueTeams as $lTeam) { if ($lTeam->objectId == $team->objectId) { $lTeam->selected = 1; } } if (isset($statTeam->team->objectId)) { if ($statTeam->team->objectId == $team->objectId) { $team->stat = $statTeam; array_push($groupSortTeams, $team); } } } } $group->relteams = $groupSortTeams; $groupTeamsArr = $groupRelTeams; array_push($groupTeams, $groupTeamsArr); } $playerScoreModel = new PlayerScoreModel(); $playerData = $playerScoreModel->findByLeague($leagueId); $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); } } } // var_dump($playerArr);var_dump($playerGoalArr);var_dump($playerRangeArr);exit; $this->render('tongji', array('leagueTeams' => $leagueTeams, 'groupRows' => $groupRows, "groupTeams" => $groupTeams, 'playerRangeArr' => $playerRangeArr, 'leagueId' => $leagueId)); }