def results_with_ranking(self): if self.frozen_results is not None: return self.frozen_results results = self.results() results.sort(key=itemgetter('total'), reverse=True) results = utils.rank_results(results) return results
def results(self, request, pk=None): series = self.get_object() if series.frozen_results is not None: return series.frozen_results results = self.series_results(series) results.sort(key=itemgetter('total'), reverse=True) results = utils.rank_results(results) return Response(results, status=status.HTTP_201_CREATED)
def semester_results(semester): if semester.frozen_results is not None: return semester.frozen_results results = [] for registration in semester.eventregistration_set.all(): results.append(generate_result_row(registration, semester)) results.sort(key=itemgetter('total'), reverse=True) results = utils.rank_results(results) return results
def results(self, request, pk=None): series = self.get_object() if series.frozen_results is not None: return series.frozen_results results = [] for registration in series.semester.eventregistration_set.all(): results.append( generate_result_row(registration, only_series=series)) results.sort(key=itemgetter('total'), reverse=True) results = utils.rank_results(results) return Response(results, status=status.HTTP_200_OK)
def results_with_ranking(self, show_only_last_series_points=False): current_results = None curent_number_of_problems = 0 for series in self.series_set.all(): series_result = series.results() count = series.num_problems current_results = self._merge_results(current_results, series_result, curent_number_of_problems, count) curent_number_of_problems += count current_results.sort(key=itemgetter('total'), reverse=True) current_results = utils.rank_results(current_results) return current_results
def semester_results(semester): if semester.frozen_results is not None: return semester.frozen_results current_results = None curent_number_of_problems = 0 for series in semester.series_set.all(): series_result = SeriesViewSet.series_results(series) count = series.num_problems current_results = utils.merge_results( current_results, series_result, curent_number_of_problems, count) curent_number_of_problems += count current_results.sort(key=itemgetter('total'), reverse=True) current_results = utils.rank_results(current_results) return current_results
def results_with_ranking(self): if self.frozen_results is not None: return self.frozen_results current_results = None curent_number_of_problems = 0 for series in self.series_set.all(): series_result = series.results() count = series.num_problems current_results = self._merge_results(current_results, series_result, curent_number_of_problems, count) curent_number_of_problems += count current_results.sort(key=itemgetter('total'), reverse=True) current_results = utils.rank_results(current_results) return current_results
def results_with_ranking(self): results = self.results() results.sort(key=itemgetter('total'), reverse=True) results = utils.rank_results(results) return results
def results_with_ranking(self): results = self.results() results.sort(key=lambda x: x['total'], reverse=True) results = utils.rank_results(results) return results