Dashboard
(UI-екран Family-меню) — набір аналітичних графіків по одній Family за потижневими інтервалами.
Продуктовий концепт — dashboard.
Суть
Сторінка line-графіків по одній Family. Кожен графік показує тренд показника по тижнях у вибраному вікні (пів-року). Дані порожні, поки не натиснути GNR.
Набір графіків і скоуп даних залежать від ролі × Family.
Use cases
Кожна роль із доступом бачить зведення у межах своєї зони відповідальності — від усієї Family (director) до власних показників (operator). Деталі по ролях — у Доступах.
Доступи
Dashboard є тільки для 4 ролей. У client_manager, hr, recruiter family-дашборда нема.
Скоуп задається селекторами в toolbar (рядки) — хто який зріз може відкрити:
| Зріз | director | top-manager | supervisor | operator |
|---|---|---|---|---|
| Вся Family (всі тімліди) | ✓ | — | — | — |
| Конкретний тімлід | ✓ (дропдаун Teamlead) | свої тімліди | свій (авто) | — |
| Конкретний оператор | — | ✓ (дропдаун) | ✓ (дропдаун) | свій (авто) |
- director — стартує на всій Family; дропдаун
Teamleadзвужує до одного тімліда (переходу на окремого оператора нема). - top-manager — свої тімліди + оператори під ними (два селектори).
- supervisor — свій id автоматично; дропдаун операторів своєї команди.
- operator — без селекторів, одразу власні показники.
Toolbar і період
| Контрол | Що робить | Ролі |
|---|---|---|
| ← / → | Гортання вікна на 4 тижні назад/вперед. | усі |
| Період (текст) | Поточне вікно — від понеділка пів-року тому до вибраної неділі. | усі |
| Teamlead / Operator | Селектор зрізу (див. Доступи). | усі крім operator |
| GNR | ”Generate” — застосувати фільтри і завантажити графіки. До натискання сторінка порожня. | усі |
Період:
- Вікно — потижневі бакети за пів-року (кінець = вибрана неділя, початок = понеділок 6 місяців назад).
- Крок гортання — 4 тижні.
- Нижня межа —
2024-07-01(«All time»): назад далі не гортається (стрілка←гасне), а бек наdate ≤ 2024-07-01повертає пустий масив. Тобто це старт історичних даних дашборда.
Графіки
Базовий набір (усі ролі, усі Family)
Назви — як на дашборді (заголовок графіка).
| # | Графік | Що показує |
|---|---|---|
| 1 | Balance per week | Сумарний $ заробіток за тиждень. |
| 2 | Online per week | Сумарний час онлайн (години) за тиждень. Накладена червона область Sleep mode — скільки з онлайну було в режимі сну; тултіп показує години сну і % від загального онлайну. |
| 3 | Unique men per week | Кількість унікальних RU: new (нові) і all (усі). |
| 4 | Ladies average balance | Середній баланс TU по рівнях NEW / LOW / MID / TOP. (TODO: що означають рівні — сегментація TU за заробітком?) |
| 5 | Tasks per week | Кількість тасків по типах за тиждень. Набір типів — свій на кожній Family (див. нижче). |
| 6 | % of task processing | % опрацьованих тасків. (TODO: уточнити формулу/сенс) |
| 7 | Average tasks processing speed | Середня швидкість опрацювання тасків. (TODO: уточнити одиниці і сенс) |
| 8 | Quantity of sending messages | Кількість відправлених повідомлень. (TODO: усі чи тільки мануальні) |
Набори типів тасків (Tasks per week):
golden—NeedToWriteMessage/NeedToWriteMail/ActiveChatWriteHim/ActiveChatUnanswered/Likeprime,udate,chathouse—Like/LimitsAreOpened/NeedToWrite/Unanswered
Графіки-варіації
| # | Графік | golden | prime | udate | chathouse | Примітка |
|---|---|---|---|---|---|---|
| 9 | Types of balance | ✓ | тільки director | ✓ | ✓ | Розподіл $ по типах активності (%, + сума). Категорії різні по Family. |
| 10 | Created Chats | — | ✓ | — | — | Кількість створених чатів за тиждень. |
| 11 | Total users online + Average number of users online | director | — | — | — | Онлайн: усі TU / наші TU / RU (men). |
| 12 | Number of users online | — | director | director + top | director + top | Середня к-сть онлайн TU; клік по графіку → 24-год розклад. |
| 13 | Average online users during the day | director | director | director | director | Середній онлайн по годинах доби. Drill-down з графіка онлайну (не окремий віджет). |
Категорії Types of balance (різні по Family):
golden—TextChat/VideoChat/EmailSend/EmailRead/otherudate,chathouse—ChatMessage/ChatMedia/ChatAudio/ChatSticker/VirtualGift/Mail/MailMedia/otherprime— те саме що udate/chathouse, але безChatAudio
API
Графіки (нумерація з таблиць вище) наповнюються кількома запитами — один запит часто дає одразу кілька графіків. Суфікс роуту однаковий на всіх Family; deeplink стоїть там, де ендпоінт уже в Swagger UI (поки лише golden), решта — *TODO*.
1. Головний info-endpoint (по ролі)
Графіки з цього запиту: golden — 1, 2, 3, 4, 9, 11 · prime — 1, 2, 3, 4, 9, 10 · udate / chathouse — 1, 2, 4, 9.
| Family | director | top-manager | supervisor | operator |
|---|---|---|---|---|
golden | getForDirector | getForTopManager | getForSupervisor | getForOperator |
prime | TODO | TODO | TODO | TODO |
udate | TODO | TODO | TODO | TODO |
chathouse | TODO | TODO | TODO | TODO |
Платники (3 —
Unique men per week) на golden/prime приходять прямо звідси (charts[].man); udate/chathouse тягнуть окремим викликом (#3 нижче). Типи балансу (9) і Created Chats (10) — лише для відповідних ролей/Family згідно таблиці варіацій.
2. Tasks (графіки 5, 6, 7, 8)
| Family | Endpoint |
|---|---|
golden | getTask |
prime | TODO |
udate | TODO |
chathouse | TODO |
3. Unique men per week (графік 3)
Графік 3 є на всіх Family — відрізняється лише джерело даних. На golden/prime він приходить з головного info-endpoint (#1), окремого виклику нема; udate/chathouse тягнуть його окремо (getUniqueFavorite).
| Family | Endpoint |
|---|---|
golden | — (з info-endpoint #1) |
prime | — (з info-endpoint #1) |
udate | TODO (getUniqueFavorite) |
chathouse | TODO (getUniqueFavorite) |
4. Number of users online (графік 12)
Графік 12 є на prime / udate / chathouse (на golden замість нього — графік 11, з info-endpoint). Джерело — окремий виклик getOnlineLadies.
| Family | Endpoint |
|---|---|
golden | — (графік 11 з info-endpoint #1) |
prime | TODO (getOnlineLadies) |
udate | TODO (getOnlineLadies) |
chathouse | TODO (getOnlineLadies) |
5. 24-год розклад (drill-down, графік 13)
| Family | Endpoint |
|---|---|
golden | getDayOnline |
prime | TODO (getDayOnlineLadies) |
udate | TODO (getDayOnlineLadies) |
chathouse | TODO (getDayOnlineLadies) |
6. Селектори періоду (дропдауни, не графіки)
| Family | Тімліди (director) | Оператори (supervisor) | Тімліди (top) | Оператори (top) |
|---|---|---|---|---|
golden | getSupervisorsByPeriod | getOperatorsByPeriod | getSupervisorsByPeriodForTopManager | getOperatorsByPeriodForTopManager |
prime | TODO | TODO | TODO | TODO |
udate | TODO | TODO | TODO | TODO |
chathouse | TODO | TODO | TODO | TODO |
Нюанси
top-managerна golden/prime не має блоку онлайн-користувачів (на udate/chathouse — маєNumber of users online). 24-год розклад — лише на director.