Exemplo n.º 1
0
        private static void CalculateElapsedTime(CompetitorResultSummary competitorCourseSummary)
        {
            var ft = competitorCourseSummary.FinishTime.Value;

            if (ft.Hours == 0)
            {
                ft = TimeSpan.FromHours(12);
                competitorCourseSummary.FinishTime = ft;
            }

            competitorCourseSummary.ElapsedTime = competitorCourseSummary.FinishTime - competitorCourseSummary.StartTime;
        }
Exemplo n.º 2
0
        private static int CheckForPenalties(CompetitorResultSummary competitorResultSummary)
        {
            var course = courseService.Get(competitorResultSummary.CourseId);

            var courseTimeLimit        = course.TimeLimit;
            var penaltyPointsPerMinute = course.PenaltyPointsPerMinute;

            double timeSpanMinutes = competitorResultSummary.ElapsedTime.Value.TotalMinutes;

            var x = (int)Math.Ceiling(timeSpanMinutes);
            var y = x - Convert.ToInt16(courseTimeLimit);

            return((y > 0) ? (y * Convert.ToInt16(penaltyPointsPerMinute)) : 0);
        }
Exemplo n.º 3
0
        private static void BuildCompetitorSummary()
        {
            CompetitorCourseSummaries = new List <CompetitorResultSummary>();

            foreach (var competitor in competitorService.GetAll())
            {
                var competitorResultSummary = new CompetitorResultSummary
                {
                    SI          = competitor.SI,
                    CourseId    = competitor.CourseId,
                    ClassId     = competitorService.Get(competitor.SI).ClassId,
                    Status      = (int)Status.DidNotStart,
                    ElapsedTime = TimeSpan.MaxValue
                };
                CompetitorCourseSummaries.Add(competitorResultSummary);
            }
        }
Exemplo n.º 4
0
 private static void CalculateScore(List <CompetitorControl> competitorPunches, CompetitorResultSummary competitorCourseSummary)
 {
     competitorCourseSummary.CourseId = competitorService.GetCompetitorCourse(competitorCourseSummary);
     if ((courseService.IsScoreCourse(competitorCourseSummary.CourseId)) && (competitorCourseSummary.FinishTime != null))
     {
         competitorCourseSummary.Score   = CalculateScoreCoursePoints(competitorPunches);
         competitorCourseSummary.Penalty = CheckForPenalties(competitorCourseSummary);
     }
     else
     {
         competitorCourseSummary.Status = CheckLineCourse(competitorCourseSummary.CourseId, competitorPunches);
     }
 }
Exemplo n.º 5
0
        private static void GetStatus(CompetitorResultSummary competitorCourseSummary)
        {
            competitorCourseSummary.FinishTime = null;

            competitorCourseSummary.Status = (int)Status.Started;
        }