ActivEarth.DAO.TeamDAO.UpdateTeamScore C# (CSharp) Метод

UpdateTeamScore() публичный статический Метод

Recalculates and updates the team's contest score.
public static UpdateTeamScore ( int teamId ) : void
teamId int
Результат void
        public static void UpdateTeamScore(int teamId)
        {
            ContestTeam team = TeamDAO.GetTeamFromTeamId(teamId, true);
            Contest contest = ContestDAO.GetContestFromContestId(team.ContestId, false, false);

            if (team.IsLocked)
            {
                Statistic statistic = ContestDAO.GetStatisticFromContestId(team.ContestId);
                float total = 0;

                foreach (ContestTeamMember member in team.Members)
                {
                    member.Score = TeamDAO.CalculateUserScore(member.UserId, member.InitialScore, statistic);
                    total += member.Score;
                }

                team.Score = total;
                TeamDAO.UpdateTeam(team);
                ContestDAO.UpdateContestStandings(team.ContestId);

                if (contest.Mode == ContestEndMode.GoalBased)
                {
                    if (team.Score >= contest.EndValue)
                    {
                        ContestManager.DistributeContestReward(team.ContestId);
                    }
                }
            }
        }