Статистика операторів
src/features/statistics/operators/ — помісячна таблиця результатів операторів із рольовими зрізами, робочими статусами, деталями по TU та family-залежною аналітикою.
Суть
Екран відповідає на три групи запитань:
- Скільки оператор або команда заробили в кожен день і за весь місяць.
- Коли оператор працював, був онлайн, мав вихідний, прогул, стажування або погоджену відсутність.
- Які TU були закріплені за оператором і що відбувалося в конкретний день.
Вигляд і базова поведінка спільні для всіх Family. Обсяг даних, доступні переходи, кнопки та аналітичні блоки залежать від ролі й Family.
Use cases
directorпорівнює всю фабрику або переходить у зріз конкретного Teamlead, HR чи TOP-manager.top_managerбачить операторів усіх своїх Teamlead або одного вибраного Teamlead, потім може відкрити конкретного оператора.team_leadбачить свою команду й відкриває оператора разом із його TU.hr_managerбачить список операторів у межах свого HR-доступу без переходу до детальної картки оператора.operatorпотрапляє одразу у власну статистику: свій рядок, свої TU та доступну для Family аналітику.
Де і як відкривається
Сторінка монтується ліниво. Рольовий застосунок передає у спільну точку входу фіксовані role і family, після чого конфігурація вибирає потрібну сторінку, API та family-розширення.
| Роль у конфігурації | URL | Доступні Family |
|---|---|---|
director | /ceo/{family}/operators_statistics | udate, talkytimes, golden, chathouse |
top_manager | /top_manager/{family}/operators_statistics | ті самі |
team_lead | /teamlead/{family}/operators_statistics | ті самі |
hr_manager | /hr/{family}/operators_statistics | ті самі |
operator_self | /operator/statistics | залежить від Family поточного оператора |
talkytimes — маршрутна/UI-назва Family, яка всередині модуля нормалізується до ключа prime. Це одна реалізація, а не дві різні Family.
Послідовність відкриття
- Рольовий роут завантажує спільний модуль статистики з уже відомими роллю та Family.
- Модуль вибирає рольову сторінку й family-конфігурацію.
- Початково встановлюються поточний місяць, режим
Balanceі агрегація онлайнуSHIFT. - Автоматичного запиту при монтуванні немає: до першого натискання
GNRмасив даних порожній, а сітка має технічну довжину 31 день. - Користувач натискає
GNR, після чого сторінка вперше завантажує або повторно будує таблицю за поточними фільтрами. - Для ролей із переходом у деталі клік по імені оператора замінює повний список на зріз одного оператора та його TU.
Спільна модель екрана
Режим повного списку
- Один рядок — один оператор.
- Колонки
1..28/29/30/31— дні вибраного місяця. - Денна клітинка показує баланс або онлайн залежно від перемикача.
- У режимі повного списку колонка
TUпоказує кількість TU оператора. All $показує суму за місяць.- Унизу є
TOTALіз підсумками всіх відображених операторів. - Поле в колонці
Nameфільтрує вже отриманий список заnameабоnickname. Нового API-запиту пошук не робить. - Рядки перед показом сортуються групами статусів
none→gray→red, а всередині кожної групи — за спаданням суми денних бонусів.
Режим одного оператора
Після відкриття оператора верхній рядок належить оператору, нижні рядки — його TU. Колонка в цьому режимі та в operator_self має назву TU ID: у рядках TU вона показує ідентифікатор, а у верхньому рядку оператора — кількість його TU. Для Udate під заголовком лишається перемикач ID/ULID. Пошук фільтрує тільки TU за name або ladyId; рядок оператора залишається. Денна сітка синхронізована по горизонталі із заголовком. Клік по імені відкритого оператора згортає детальний режим і очищає виділення.
Не кожна роль має цей режим: для hr_manager він навмисно відсутній.
Матриця доступів
| Можливість | director | top_manager | team_lead | hr_manager | operator |
|---|---|---|---|---|---|
| Усі оператори фабрики | ✓ | — | — | — | — |
| Оператори конкретного Teamlead | ✓ | ✓, лише у своєму TOP-контексті | ✓, лише власна команда | — | — |
| Оператори конкретного TOP-manager | ✓ | ✓, лише власний доступ | — | — | — |
| Оператори конкретного HR | ✓ | — | — | ✓, лише власний доступ | — |
| Відкрити одного оператора | ✓ | ✓ | ✓ | — | власна статистика одразу |
| Побачити TU оператора | ✓ | ✓ | ✓ | — | ✓ |
Виділити клітинки та порахувати Sum | ✓ | ✓ | ✓ | ✓ | — |
| Виставити статус дня | ✓ | ✓ | ✓, без Excused Absence | ✓ | — |
Details конкретної TU/дня | Golden, Chathouse | Golden, Chathouse | Golden, Chathouse | — | Golden, Chathouse |
| Аналітика одного оператора | залежить від зрізу й Family | залежить від Teamlead і Family | ✓ для підтримуваних Family | — | ✓ для підтримуваних Family |
Доступ визначається не кнопкою на екрані, а тим, яка рольова сторінка була змонтована. Фронт не дає довільно перемкнути власну роль.
Логіка за ролями
Director
Початковий рольовий фільтр — Teamlead.
- Якщо Teamlead не вибраний,
GNRзавантажує всіх операторів Family. - Якщо Teamlead вибраний, завантажується лише його команда.
- Роль
Hrвимагає вибрати HR; після цього з’являється додатковий Teamlead-фільтр зAll. Результат лишається списком, клік у режим одного оператора вимкнений. - Роль
TOP-managerвимагає вибрати TOP-manager. Далі можна вибратиALLабо конкретного Teamlead цього TOP-manager. - Після генерації застосовані фільтри фіксуються. Відкриття оператора використовує саме зафіксований зріз, а не ще не застосовані значення у контролах.
- У Golden і Chathouse аналітика директора показується лише тоді, коли вибраний контекст дозволяє однозначно визначити Teamlead; простий зріз «усі оператори» не відкриває повний набір графіків.
TOP-manager
- Початковий зріз — усі оператори всіх Teamlead, доступних цьому TOP-manager.
- У фільтрі Teamlead можна залишити
ALLабо вибрати конкретного Teamlead. - Клік по оператору відкриває його в тому самому, уже застосованому Teamlead-контексті.
- Для Golden і Chathouse повна аналітика одного оператора потребує конкретного
supervisorFamilyId; у зрізіALLграфіки, яким потрібен Teamlead, не показуються.
Teamlead
- Завантажується лише власна команда за family-id поточного Teamlead.
- Клік по імені відкриває оператора в контексті цього Teamlead.
- Можна ставити
Day Off,Absenteeism,Internship. Excused Absenceвідсутня на рівні конфігурації, а не просто disabled.
HR-manager
- Завантажується тільки список операторів, доступних поточному HR, з передачею активної Family.
- Є Teamlead-фільтр: список доступних Teamlead завантажується для поточного HR, місяця та Family;
Allозначає всіх доступних Teamlead. - Немає режиму одного оператора, TU,
Detailsта графіків. - Є режими
Balance/Online, місяць, виділення,Sum, зміна статусів дня таGNR.
Operator
- Немає проміжного списку команди: відразу завантажується власний оператор за family-id користувача.
- «Відразу» означає режим сторінки, а не автоматичний API-запит: дані з’являються після
GNR. - Видно власний рядок і власні TU.
- Статуси днів змінювати не можна.
- Кнопки
Sumнемає. Detailsдоступна лише у Golden/Chathouse і лише для однієї валідної клітинки TU.- Для Golden/Chathouse також враховується Teamlead зміни (
supervisor on shift) там, де це потрібно запитам онлайну й аналітики.
Toolbar і правила контролів
| Контрол | Логіка |
|---|---|
Balance / Online | Перемикає вміст денних клітинок. Початково Balance. |
Per: DAY / SHIFT | Перемикає агрегацію онлайну. DAY — календарна доба; SHIFT — робоча зміна. Початково SHIFT. |
| Month | Вибирає місяць статистики. |
| Role | Лише Director: Teamlead, Hr, TOP-manager. |
| Team / Teamlead | Залежно від ролі вибирає користувача, чию зону відповідальності потрібно завантажити. |
Day Off | Позначає вихідний. |
Absenteeism | Позначає прогул. |
Internship | Позначає стажування/навчання. |
Excused Absence | Позначає погоджену відсутність; недоступна Teamlead та Operator. |
Sum | Вмикає/вимикає плаваючий підсумок поточного виділення. |
Details | Завантажує деталізацію однієї клітинки TU; з’являється тільки там, де Family має відповідний API. |
GNR | Робить новий запит із поточними фільтрами та скидає пошук/виділення. |
Sum є у повних списках і в менеджерському детальному режимі, але відсутній у operator_self. Кнопки статусів дня є лише над повним списком; після відкриття одного оператора їх замінюють Sum, опційний Details і GNR.
Коли кнопки статусів disabled
- Не вибрано жодної клітинки.
- У виділення потрапила клітинка з
absenteeismAuto: автоматичний прогул не можна перезаписати вручну. - У виділенні є майбутня дата: Director, TOP-manager і HR можуть поставити тільки
Day OffабоExcused Absence; Teamlead — тількиDay Off. - Для
Detailsпотрібно вибрати рівно одну клітинку TU, у якій є дата, TU ID та family-id оператора. Клітинка рядка самого оператора не підходить.
Після успішної відповіді frontend застосовує отриманий список оновлених днів до локальної таблиці без повного повторного завантаження. Виділення очищається і при успіху, і при помилці.
Виділення клітинок і сума
- Виділення починається натисканням на денну клітинку й може продовжуватись перетягуванням.
- Повторне натискання на вже вибрану клітинку прибирає її з виділення.
- Блакитна заливка позначає вибрані клітинки; синя рамка малюється тільки по зовнішньому контуру суміжної фігури.
Sumне створює нове виділення, а лише показує або ховає підсумок уже вибраних клітинок.- Сума рахується з поля
sumвідповідних денних об’єктів. Для повного списку координата рядка посилається на оператора; у детальному режимі окремо враховуються рядок оператора та рядки TU. - Зміна місяця/фільтра або новий запит очищають тимчасове виділення.
Closeу панеліDetailsховає тільки завантажену деталізацію. Вибрана клітинка лишається активною, томуDetailsможна відкрити повторно без нового виділення.
Панель Details
У Golden і Chathouse після успішного запиту для однієї TU-клітинки за день під таблицею відкривається панель Details.
- Таблиця операцій має колонки
Date,RU,Type,Balance. Один рядок відповідає одній операції: час, family-залежний ідентифікатор RU, тип і сума з двома знаками після крапки. Totalпід таблицею показує суму всіх завантажених операцій у доларах. Якщо операцій немає, таблиця показуєNo operations for the selected day.- Блок
Balance typesпоказує donut-розбивкуTextChat,VideoChat,EmailSend,EmailRead,Otherу відсотках. Нульові категорії залишаються в підписах, аOtherзавжди іде останньою. - У Golden під розбивкою є
Mail senderіChat sender; кожен блок показує лічильникиNewтаFavorites. - У Chathouse блоки
Mail senderіChat senderприховані: доступні лише таблиця операцій,TotalіBalance types.
Значення кольорів таблиці
Базові стани оператора й дня
| Вигляд | Код кольору | Значення |
|---|---|---|
| Білий/прозорий | #ffffff / transparent | Активний оператор або звичайний робочий день без спеціальної мітки. |
| Сірий | #b7b7b7 | Оператор/день неактивний у поточному контексті доступу, наприклад оператор уже переведений. |
| Рожево-червоний | #ea9999 | Заблокований оператор або день зі статусом блокування. |
| Світло-блакитний | #add8e6 | Day Off. |
| Червона рамка | #ea9999 | Absenteeism; значення клітинки лишається видимим на прозорому фоні. |
| Червона рамка + кутовий маркер | рамка #ea9999 | absenteeismAuto, автоматично встановлений прогул; ручні дії над такою клітинкою заблоковані. |
| Фіолетовий | #b4a7d6 | Excused Absence. |
| Жовтий | #ffe599 | Internship. |
| Блакитне виділення | #e6effd | Клітинка входить у поточний selection. |
| Синя рамка виділення | #1a73e8 | Зовнішня межа вибраного діапазону. |
Сірий маркер wasActions | #d4d4d4 | У день були зафіксовані дії; використовується лише в конфігураціях із highlightWasActions. |
Колір імені повторює стан рядка: звичайний текст — активний, сірий — неактивний/переведений, червоний — заблокований. Стан відносний до вибраного керівника: той самий оператор може бути активним у нового Teamlead і сірим у попереднього.
Службові кольори інтерфейсу
| Колір | Код | Призначення |
|---|---|---|
| Фон сторінки | #8da7b9 | Зовнішній фон статистики. |
| Основний текст | #2c3e50 | Текст, темні маркери та частина рамок. |
| Активний темний контрол | #0a3d62 | Активні перемикачі/акценти. |
| Світлий фон кнопок | #f7f8fa | Базовий стан навігаційних контролів. |
| Hover контролів | #e2e8f0 | Наведення на доступну кнопку/опцію. |
| Заголовок таблиці | #f1f1f1 | Шапка таблиці та службові секції. |
Disabled-кнопки сірі (#ccc, текст #777) і не запускають дію.
Live-індикатор онлайну
У Golden і Chathouse для рядків, де конфігурація отримує live-стан:
- зелений індикатор із
play— оператор онлайн і активний; - червоний індикатор із
pause— оператор онлайн, але у sleep mode; - відсутність індикатора — оператор офлайн або цей family/рольовий зріз не підключає live-стан.
Це поточний live-стан, а не значення конкретної денної клітинки.
Відмінності між Family
| Режим | Udate | TalkyTimes / Prime | Golden | Chathouse |
|---|---|---|---|---|
operator_self | 5 графіків | 4 графіки, без Manual Actions | 5 графіків + TU activity + Details | 5 графіків + TU activity + Details |
| Teamlead, відкрито конкретного оператора | 5 графіків | 5 графіків | 5 графіків + TU activity + Details | 5 графіків + TU activity + Details |
| Top manager, вибрано Teamlead і відкрито оператора | 5 графіків | 5 графіків | 5 графіків + TU activity + Details | 5 графіків + TU activity + Details |
| Director, вибрано Teamlead і відкрито оператора | — | — | 5 графіків + TU activity + Details | 5 графіків + TU activity + Details |
| HR manager | — | — | — | — |
У Teamlead аналітика монтується після відкриття конкретного оператора. У Top manager повний набір із п’яти графіків не показується, доки не вибрано конкретного Teamlead. У Director він доступний тільки для Golden/Chathouse та вимагає вибраного Teamlead і оператора.
Golden/Chathouse TU activity є окремим family-розширенням і може рендеритися за валідного TU/operator context навіть тоді, коли рольовий прапорець ще не дозволяє повний набір із п’яти графіків.
Udate
- Дати таблиці порівнюються в ISO-форматі.
- У детальному режимі підтримується вибір типу TU ID.
- Для частини детальних таблиць TU ID рендериться компактно, а дні з діями можуть мати
wasActions. - Для
Completed on time,Number of tasksтаAverage processing speedдоступний селектор типу задач.Operator's Online (min)показується без такого селектора. Number of tasks,Operator's Online (min)іManual Actionsвраховують вибраний режимDAY/WORK_HOURS.
TalkyTimes / Prime
- URL і меню використовують
talkytimes, API та внутрішня конфігурація —prime. - Для всіх перших чотирьох графіків доступний селектор типу задач, включно з
Operator's Online (min). Number of tasksіOperator's Online (min)не передають режимDAY/WORK_HOURSу Prime API.Manual Actionsдоступний тільки у Teamlead і Top manager, завжди запитується заWORK_HOURSта не показується в operator self або Director.- Немає
Detailsпо клітинці TU та блокуTU activity.
Golden
- Доступні live online/sleep індикатори.
- Доступна деталізація роботи по конкретній TU й дню.
- Є повний набір аналітичних графіків і
TU activity. TU activityпоказує також подіїStream.
Chathouse
- За можливостями близький до Golden: live-стан,
Details, повна аналітика,TU activity. - Запит деталей додатково прив’язаний до
operatorFamilyId, дати йladyId. - У
TU activityнемає категоріїStream.
Аналітика одного оператора
Після відкриття аналітики графіки не завантажують дані автоматично: користувач вибирає потрібні фільтри й натискає GNR у заголовку конкретного графіка. У кожний запит передаються відкритий оператор, вибраний місяць і, для менеджерських зрізів, вибраний Teamlead.
| Графік | Період | Контроли | Family-відмінності |
|---|---|---|---|
Completed on time | увесь вибраний місяць | тип задач + GNR | Golden показує три серії: Closed on Time, Closed Out Time, Closed by System; Udate, Prime і Chathouse — одну серію Completed on time, % |
Number of tasks | один день вибраного місяця, погодинно | день + тип задач + GNR | Golden показує Closed on Time / Closed out Time / Closed by System; Udate, Prime і Chathouse — Created / Completed by operator / Canceled by system. Режим DAY/WORK_HOURS передається в Udate, Golden і Chathouse, але не в Prime |
Average processing speed | увесь вибраний місяць | тип задач + GNR | для кожного дня показує середній час обробки та кількість оброблених задач |
Operator's Online (min) | один день вибраного місяця, погодинно | день + GNR; у Prime також тип задач | режим DAY/WORK_HOURS передається в Udate, Golden і Chathouse, але не в Prime; якщо API повертає sleep-розбивку, графік показує окремі серії Online і Sleep |
Manual Actions | один день вибраного місяця, погодинно | день + GNR; у Golden також All types / Chat messages / Mails | у Udate, Prime і Chathouse заголовок показує total і speed; у Golden — тільки Manual Actions. У Prime графік завжди використовує WORK_HOURS і відсутній в operator self |
TU activity показується перед цими графіками тільки у Golden та Chathouse. Golden додатково показує події Stream; Chathouse — без Stream.
Operator's Online (min) показує хвилини онлайну: вісь Y містить числові значення без повторюваного суфікса m, а tooltip додає min. Серії залишаються Online та, коли відповідь має окрему розбивку, Sleep.
Для Udate, Prime та Chathouse точний формат заголовка ручних дій: Manual Actions (total: {total}, speed: {speed} sec).
У Golden три серії завершення показуються накопичувальними областями: Closed on Time знизу, Closed out Time посередині, Closed by System зверху. Tooltip показує округлені до цілого відсотки кожної серії.
У Golden Number of Tasks використовує один накопичувальний bar на часовий bucket: Closed on Time знизу, Closed out Time посередині, Closed by System зверху, а пунктирна синя лінія показує середню кількість задач за непорожню годину. У Chathouse зберігаються три окремі bars: Created, Canceled by system, Completed by operator, тому що старий API не повертає golden-series.
Місячні графіки будуються на шкалі від першого до останнього дня місяця та мають X-риску для кожного дня. Hover прив’язується до найближчого дня або часового bucket, підсвічує відповідний горизонтальний діапазон і для bar-графіків — усю колонку bucket.
Кольори графіків
| Графік/серія | Колір | Код |
|---|---|---|
| Golden completion: Closed on Time | зелений | #55A65C |
| Golden completion: Closed out Time | жовтий | #F2C245 |
| Golden completion: Closed by System | червоний | #D8665E |
| Chathouse: Completed on time | синій | #4A7FEC |
| Average processing speed | синій | #4A7FEC |
| Golden tasks: Closed on Time | зелений | #55A65C |
| Golden tasks: Closed out Time | жовтий | #F2C245 |
| Golden tasks: Closed by System | червоний | #D8665E |
| Chathouse tasks: Created | синій | #4A7FEC |
| Chathouse tasks: Completed by operator | зелений | #55A65C |
| Chathouse tasks: Canceled by system | червоний | #D8665E |
| Operator’s Online (min): Online | зелений | #55A65C |
| Operator’s Online (min): Sleep | червоний | #D8665E |
| Manual sending: 7+ actions | зелений | #55A65C |
| Manual sending: 4–6 actions | жовтий | #F2C245 |
| Manual sending: 1–3 actions | червоний | #D8665E |
| TU activity: Online | синій | #4A7FEC |
| TU activity: Messages 40+ | рожевий | #DE72A6 |
| TU activity: Messages 1–39 | світло-рожевий | #EAA0BA |
| TU activity: Stream | зелений | #55A65C |
| TU activity: Kick | червоний | #D8665E |
Stream рендериться тільки для Golden. Kick показується вертикальною пунктирною лінією.
Loading, empty та error-стани
- На час запитів використовується глобальний loader застосунку.
- Помилки завантаження та зміни статусу дня показуються через global notification; попередній успішний результат таблиці зазвичай не очищається.
- Після нового запиту очищаються пошук, selection і відкритий підсумок.
- До першого
GNRі після порожньої відповіді рядків немає; UI показуєThe statistics result is empty. Check the selected criteria., аmonthLength = 31використовується лише як fallback для структури заголовка. - Аналітичні секції самі керують своїми запитами після того, як є валідний контекст оператора/Teamlead.
Пошук, сортування та копіювання
| Режим | Пошук | Сортування | Копіювання колонок |
|---|---|---|---|
| Повний список | name, nickname | статус, потім місячна сума за спаданням | Name і All $ |
| Один оператор | TU за name, ladyId; оператор не ховається | TU за тим самим правилом статус/сума | Name і All $ |
| Operator self | як для одного оператора | TU за статусом/сумою | Name і All $ |
Копіювання формує багаторядковий текст у порядку видимих рядків і пише його в clipboard. Успіх або помилка показуються через global notification. Для All $ у списку сума обчислюється як сума day.sum; у детальному режимі рядок оператора бере готове operator.total, а TU — суму їхніх днів.
Точна логіка запитів за зрізом
| Роль/режим | Умова | Який зріз запитується |
|---|---|---|
| Director / Teamlead | Team = All | усі оператори Family |
| Director / Teamlead | вибраний Teamlead | оператори цього Teamlead |
| Director / Hr | вибраний HR, Team = All | оператори HR за повний місяць |
| Director / Hr | вибраний HR і Teamlead | оператори HR, звужені до Teamlead |
| Director / TOP-manager | вибраний TOP, Team = All | оператори всіх Teamlead цього TOP |
| Director / TOP-manager | вибраний TOP і Teamlead | оператори конкретного Teamlead в контексті TOP |
| TOP-manager | Team = All | оператори всіх доступних Teamlead |
| TOP-manager | вибраний Teamlead | оператори цього Teamlead |
| Teamlead | без додаткового фільтра | оператори власної команди |
| HR-manager | Team = All | усі оператори в HR-доступі |
| HR-manager | вибраний Teamlead | оператори цього Teamlead в HR-доступі |
| Operator self | власний family-id | один поточний оператор і його TU |
Для місячних family-запитів дата передається як перший день місяця. HR-зріз використовує межі dateFrom від першого дня до dateTo останнього дня місяця. У operator_self Golden/Chathouse supervisorFamilyId додається лише для SHIFT; для DAY він не передається.
Важливі нюанси
Balance/OnlineіDAY/SHIFT— різні перемикачі: перший змінює метрику клітинки, другий — спосіб агрегації онлайну.- Значення фільтрів не застосовуються автоматично; джерелом таблиці стає остання успішна генерація через
GNR. - Перехід до оператора має зберігати контекст керівника, інакше статистика та графіки можуть бути неоднозначними.
Details— це деталізація TU за день, а не загальна картка оператора.absenteeismAutoвідрізняється від ручногоAbsenteeism: його створює система, він має кутовий маркер і захищений від ручного перезапису.- Family впливає не лише на URL API, а й на формат дат, доступність TU ID, live-стан, деталізацію та склад графіків.
Frontend-відповідальність
Документ описує тільки frontend: вибір гілки запиту, параметри, локальний state, доступність контролів і рендеринг отриманих даних. Він не пояснює, як сервер обчислює баланс, онлайн, статуси або аналітичні метрики.
Frontend у цьому модулі:
- вибирає рольову сторінку та family-конфігурацію;
- нормалізує маршрутну Family
talkytimesдо внутрішнього ключаprime; - вибирає endpoint-гілку відповідно до ролі, Family і застосованого зрізу;
- формує дати,
onlineTypeта потрібні ідентифікатори для запиту; - керує фільтрами, selection, пошуком, сортуванням, копіюванням і відкритими деталями;
- показує global loader та global notification;
- локально застосовує підтверджені зміни статусів днів;
- монтує family-залежні details та графіки лише за наявності відповідних прапорців конфігурації.
Поза межами документа: формули балансів і метрик, структура відповідей, правила формування сервером доступного набору операторів та серверна авторизація.
Зв’язки
- TU Statistics — споріднений помісячний зріз по TU
- Основні POST-зрізи використовують префікси
/golden/statistics/v2,/prime/statistics/v2,/statisticsUdate/v2або/chathouse/statistics/v2із role-залежними операціями/operators,/operator,/supervisor-operators,/supervisor-operator,/top-supervisors-operators,/top-supervisors-operator. - HR-зріз —
POST /statistics/getHrOperatorStatistics; зміна статусів днів —POST /statistics/setOperatorDays. - Списки для фільтрів —
POST /supervisor/getSupervisorsByMonth,POST /top-manager/getTopsByMonth,POST /hr/getHrsByMonth. - Details:
POST /golden/statistics/showDetailsіPOST /chathouse/statistics/v2/showDetails. - Основні analytics operations:
- Udate і Prime — відповідно
POST /udate/analyst/*таPOST /prime/analyst/*:getPercentageCompletedTasksMounthByDate,getAverageProcessingSpeedMounthByDate,getCreatedAndAnsweredTasksByDay,getOnlineOperatorDayByDate; - Golden і Chathouse — відповідно
POST /golden/analyst/*таPOST /chathouse/analyst/*: ті самі business operations, але з фактичним написаннямMonthзамість legacyMounth; - manual actions —
POST /udate/operator/getManualActionOperator,/prime/operator/getManualActionOperator,/golden/operator/getManualActionOperator; Chathouse фактично використовуєPOST /chathouse/analyst/getManualActionOperator; TU activity—POST /golden/statistics/showOnlineDetailsабоPOST /chathouse/analyst/showOnlineDetails.
- Udate і Prime — відповідно
- Golden Swagger: Statistics V2. Для інших операцій тут зафіксовані фактичні frontend paths без вигаданих operation deeplink.
- TODO: додати перевірені operation deeplink-и для не-Golden statistics, selectors, details та analytics operations.