top-3-service

Top3Service

Спільний модуль project-application-api для Top 3 операторів проєкту.

Задача

  1. За кожен із трьох останніх місяців підсумувати sum ProjectStatisticsRelation за operatorId.
  2. Відсортувати операторів за сумою та повернути перші три місця.
  3. Додати ім’я й nickname оператора зі Stack.

Frontend API

№ОпераціяEndpoint
1Top 3 операторів за поточний і два попередні місяціGET /projects/{project}/top-3

Один місяць повертає month і operators[]. Оператор містить operatorId, name, nickname та sum.

Рейтинг будується для всього проєкту. Оператор, тімлід і top manager бачать той самий результат.

Поточна реалізація

ПроєктTop 3
Golden✅
Prime—
Chathouse✅
Udate✅

Golden, Chathouse та Udate вже використовують однаковий розрахунок зі statistics relations. У Prime гілка запиту існує, але результат не розраховується.

У проєктних сервісах project-* цю логіку повторювати не потрібно: після імпорту ProjectStatisticsRelation Top3Service працює для будь-якого проєкту.

Сезонний рейтинг за виконаними цілями нових пар описаний окремо в NewYearTopListService.