Атестаційні завдання K2 ERP/Трансфери та таксі: відмінності між версіями

Первинна публікація
 
Немає опису редагування
 
Рядок 1: Рядок 1:
= Модуль обліку замовлень трансферів і таксі: бронювання, водії, автопарк, платежі =
{{DISPLAYTITLE:Атестаційні завдання K2 ERP/Трансфери та таксі}}
 
'''Атестаційне завдання K2 ERP — Трансфери та таксі''' — це практична задача для перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля обліку замовлень трансферів, таксі та корпоративних перевезень.
 
Модуль має забезпечувати повний цикл роботи сервісу перевезень: прийом бронювання, облік клієнтів, водіїв і автомобілів, розрахунок вартості поїздки, призначення водія, контроль статусів, оплату, сповіщення клієнтів, оцінювання поїздок і звітність.
 
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;">
'''Коротко.''' Потрібно реалізувати модуль для трансферів і таксі: клієнти, замовлення, водії, автомобілі, типи поїздок, маршрути, тарифи, бронювання на дату й час, призначення водія, статуси поїздки, оплата, квитанції, сповіщення, рейтинги та звіти.
</div>
 
__TOC__
 
== Назва завдання ==
 
'''Модуль обліку замовлень трансферів і таксі: бронювання, водії, автопарк, платежі'''.
 
== Мета завдання ==
 
Мета завдання — створити в K2 ERP модуль для автоматизації роботи компанії, яка надає послуги таксі, трансферів, оренди автомобілів з водієм або корпоративних перевезень.
 
Система повинна дозволяти:
 
* вести клієнтів;
* вести автомобілі;
* вести водіїв;
* вести типи поїздок;
* створювати замовлення вручну або через сайт;
* приймати попередні бронювання на дату і час;
* вказувати пункт відправлення і пункт призначення;
* розраховувати вартість поїздки;
* призначати водія і автомобіль;
* контролювати доступність водіїв і авто;
* змінювати статуси замовлення;
* фіксувати оплату;
* підтримувати готівкову, карткову і безготівкову оплату;
* надсилати клієнту сповіщення;
* давати клієнту можливість оцінити поїздку;
* формувати квитанції;
* формувати звіти по замовленнях, доходах, водіях і автомобілях.
 
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;">
'''Головний принцип.''' Замовлення поїздки має пройти зрозумілий шлях: заявка → призначення водія → подача авто → виконання → оплата → завершення → оцінка.
</div>


== Реальний бізнес-контекст ==
== Реальний бізнес-контекст ==
Компанія організовує:


* персональні трансфери, наприклад з аеропорту до готелю;
Компанія організовує пасажирські перевезення для приватних і корпоративних клієнтів.
* замовлення таксі по місту;
 
* корпоративні перевезення.
Це можуть бути:
 
* таксі по місту;
* трансфер з аеропорту до готелю;
* трансфер з вокзалу;
* міжміські поїздки;
* VIP-трансфери;
* корпоративні перевезення;
* оренда автомобіля з водієм по годинах;
* групові перевезення мінівенами або автобусами;
* регулярне обслуговування бізнес-клієнтів.
 
У роботі такої компанії важливо швидко приймати замовлення, правильно призначати вільного водія й автомобіль, контролювати статус поїздки, бачити оплату, уникати накладок у графіку та аналізувати ефективність роботи водіїв і автопарку.
 
== Основний бізнес-процес ==
 
Типовий процес роботи сервісу трансферів і таксі виглядає так:
 
# клієнт створює заявку через сайт, телефон або менеджера;
# менеджер або система створює замовлення;
# вказується тип поїздки;
# вказуються дата, час, адреса подачі й адреса призначення;
# система розраховує вартість;
# система або диспетчер підбирає доступного водія й автомобіль;
# клієнт отримує підтвердження;
# водій приймає замовлення;
# автомобіль подається клієнту;
# поїздка переходить у статус '''«Виконується»''';
# після прибуття поїздка завершується;
# фіксується оплата;
# клієнту надсилається квитанція;
# клієнт може оцінити поїздку;
# дані потрапляють у звіти.
 
== Основні об’єкти модуля ==
 
{| class="wikitable" style="width:100%;"
! Об’єкт
! Призначення
|-
| Клієнти
| Замовники поїздок
|-
| Автомобілі
| Транспортні засоби компанії
|-
| Водії
| Виконавці поїздок
|-
| Типи поїздок
| Таксі, трансфер, оренда з водієм, корпоративна поїздка
|-
| Замовлення
| Основний документ поїздки
|-
| Маршрути
| Пункти відправлення і призначення
|-
| Тарифи
| Правила розрахунку вартості
|-
| Оплати
| Готівка, картка, безготівковий розрахунок
|-
| Сповіщення
| Повідомлення клієнту і водію
|-
| Рейтинги
| Оцінка якості поїздки і водія
|-
| Квитанції
| Документ підтвердження оплати
|-
| Звіти
| Аналітика по замовленнях, доходах, водіях і авто
|}
 
== Довідник «Клієнти» ==
 
Клієнти — це фізичні або юридичні особи, які замовляють поїздки.
 
== Поля клієнта ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| ПІБ або назва компанії
| Ім’я клієнта або назва організації
|-
| Тип клієнта
| Приватний або корпоративний
|-
| Телефон
| Основний контактний номер
|-
| Email
| Для квитанцій і сповіщень
|-
| Коментар
| Особливі побажання або внутрішні примітки
|-
| Статус
| Активний, заблокований, архівний
|}
 
== Довідник «Автомобілі» ==
 
Довідник автомобілів містить транспорт, який може бути призначений на поїздки.
 
== Типи автомобілів ==
 
* седан;
* універсал;
* мінівен;
* мікроавтобус;
* автобус;
* бізнес-клас;
* VIP-клас.
 
== Поля автомобіля ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Номер авто
| Державний номер автомобіля
|-
| Марка і модель
| Наприклад: Toyota Camry, Mercedes Vito
|-
| Тип транспорту
| Седан, мінівен, автобус тощо
|-
| Кількість місць
| Скільки пасажирів може перевозити авто
|-
| Рік випуску
| Опціонально
|-
| Колір
| Для інформування клієнта
|-
| Статус авто
| Активний, у сервісі, недоступний, у поїздці
|-
| Водій за замовчуванням
| Якщо авто закріплене за конкретним водієм
|}
 
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;">
'''Важливо.''' Автомобіль зі статусом '''«У сервісі»''', '''«Недоступний»''' або '''«У поїздці»''' не повинен автоматично призначатися на нове замовлення.
</div>
 
== Довідник «Водії» ==
 
Довідник водіїв містить працівників або партнерів, які виконують поїздки.
 
== Поля водія ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| ПІБ
| Повне ім’я водія
|-
| Телефон
| Контактний номер
|-
| Фото
| Опціонально, для відображення клієнту
|-
| Категорії посвідчення
| B, D або інші категорії
|-
| Основний автомобіль
| Авто, з яким найчастіше працює водій
|-
| Рейтинг
| Середня оцінка поїздок
|-
| Статус
| Активний, зайнятий, не на зміні, заблокований
|-
| Примітки
| Службова інформація
|}
 
== Довідник «Типи поїздок» ==
 
Тип поїздки визначає сценарій обслуговування та принцип розрахунку.
 
== Приклади типів поїздок ==
 
* таксі містом;
* трансфер аеропорт — готель;
* трансфер готель — аеропорт;
* міжміський трансфер;
* оренда авто з водієм по годинах;
* корпоративна поїздка;
* груповий трансфер;
* VIP-трансфер.
 
== Поля типу поїздки ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва типу
| Наприклад: трансфер аеропорт — готель
|-
| Опис
| Коротке пояснення
|-
| Спосіб розрахунку
| Фіксована ціна, за кілометражем, погодинно
|-
| Мінімальна ціна
| Мінімальна вартість поїздки
|-
| Активність
| Чи доступний тип поїздки для нових замовлень
|}
 
== Тарифи ==
 
Тарифи визначають, як розраховується вартість поїздки.
 
== Варіанти тарифікації ==
 
* фіксована ціна;
* ціна за кілометр;
* ціна за годину;
* мінімальна вартість поїздки;
* доплата за очікування;
* доплата за нічний час;
* доплата за клас авто;
* індивідуальний корпоративний тариф.
 
== Поля тарифу ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва тарифу
| Наприклад: Місто, Аеропорт, VIP, Корпоративний
|-
| Тип поїздки
| До якого типу застосовується тариф
|-
| Базова ціна
| Стартова вартість
|-
| Ціна за км
| Для розрахунку за відстанню
|-
| Ціна за годину
| Для погодинної оренди
|-
| Мінімальна ціна
| Нижня межа вартості
|-
| Доплата за очікування
| Опціонально
|-
| Активність
| Чи діє тариф
|}
 
== База «Замовлення» ==
 
Замовлення — головний документ модуля.
 
== Колонки бази замовлень ==
 
{| class="wikitable" style="width:100%;"
! Колонка
! Опис
|-
| Номер замовлення
| Унікальний номер поїздки
|-
| Дата і час замовлення
| Коли створено заявку
|-
| Дата і час подачі
| Коли потрібно подати авто
|-
| Клієнт
| Замовник поїздки
|-
| Тип поїздки
| Таксі, трансфер, оренда з водієм
|-
| Пункт відправлення
| Звідки забрати клієнта
|-
| Пункт призначення
| Куди доставити клієнта
|-
| Автомобіль
| Призначене авто
|-
| Водій
| Призначений водій
|-
| Статус
| Нове, призначено, виконується, виконано, скасовано
|-
| Ціна поїздки
| Розрахована або встановлена вручну
|-
| Тип оплати
| Готівка, картка, безготівково
|}
 
== Поля замовлення ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Номер замовлення
| Генерується автоматично
|-
| Клієнт
| Хто замовляє поїздку
|-
| Контактний телефон
| Телефон пасажира
|-
| Тип поїздки
| Таксі, трансфер, оренда з водієм
|-
| Дата і час подачі
| Коли потрібен автомобіль
|-
| Пункт відправлення
| Адреса або точка старту
|-
| Пункт призначення
| Адреса або точка завершення
|-
| Кількість пасажирів
| Для підбору авто
|-
| Багаж
| Опціонально
|-
| Коментар клієнта
| Побажання до поїздки
|-
| Водій
| Призначений виконавець
|-
| Автомобіль
| Призначене авто
|-
| Ціна
| Вартість поїздки
|-
| Тип оплати
| Готівка, картка, безготівковий розрахунок
|-
| Статус
| Поточний стан замовлення
|}
 
== Статуси замовлення ==


Необхідно:
{| class="wikitable" style="width:100%;"
! Статус
! Значення
|-
| Нове
| Заявка створена, водій ще не призначений
|-
| Очікує підтвердження
| Замовлення потребує підтвердження менеджера або клієнта
|-
| Призначено
| Водій і автомобіль призначені
|-
| Водій прийняв
| Водій підтвердив виконання замовлення
|-
| Авто подано
| Автомобіль прибув до клієнта
|-
| Виконується
| Поїздка триває
|-
| Виконано
| Поїздку завершено
|-
| Оплачено
| Оплату підтверджено
|-
| Скасовано
| Замовлення не відбулося
|}
 
== Створення бронювання ==
 
Бронювання може створювати менеджер або сам клієнт через сайт.
 
== Кроки бронювання ==
 
# Клієнт або менеджер обирає тип поїздки.
# Вказує дату і час подачі авто.
# Вказує пункт відправлення.
# Вказує пункт призначення.
# Вказує кількість пасажирів.
# Обирає клас або тип автомобіля.
# Система розраховує орієнтовну ціну.
# Клієнт підтверджує заявку.
# Система створює замовлення.
# Менеджер або система призначає водія й автомобіль.
 
== Призначення водія і автомобіля ==
 
Призначення може бути ручним або автоматичним.


* приймати бронювання трансферів і таксі;
== Ручне призначення ==
* призначати водіїв і автомобілі;
* вести облік виконаних поїздок;
* виставляти рахунки або приймати оплату онлайн.


== Основні завдання ==
Диспетчер сам обирає водія й автомобіль зі списку доступних.


=== 1. Структура довідників ===
== Автоматичне призначення ==


==== Довідник «Автомобілі» ====
Система може підбирати водія й авто за параметрами:
Поля довідника:


* номер авто;
* статус водія;
* марка, модель;
* статус автомобіля;
* тип транспорту:
** седан;
** мінівен;
** автобус;
* кількість місць;
* кількість місць;
* статус авто:
* тип авто;
** активний;
* зайнятість на вказаний час;
** у сервісі;
* рейтинг водія;
** недоступний.
* прив’язка водія до автомобіля;
* відстань до точки подачі, якщо реалізовано мапу.
 
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
'''Критично.''' Один водій або автомобіль не повинні бути призначені на дві поїздки, які перетинаються за часом, без попередження диспетчера.
</div>
 
== Розрахунок вартості поїздки ==
 
Система має підтримувати кілька способів розрахунку.
 
== Фіксована ціна ==
 
Фіксована ціна застосовується для типових трансферів.
 
Приклад:
 
<pre>
Аеропорт → Готель = 900 грн
</pre>
 
== Розрахунок за кілометражем ==
 
<pre>
Ціна = Базова ціна + Відстань × Ціна за км
</pre>
 
== Погодинна оренда ==
 
<pre>
Ціна = Кількість годин × Ціна за годину
</pre>
 
== Очікування ==
 
Опціонально можна враховувати платне очікування.
 
<pre>
Доплата за очікування = Кількість хвилин понад норму × Тариф очікування
</pre>
 
== Оплати ==
 
Модуль має підтримувати різні типи оплати.
 
== Типи оплати ==


==== Довідник «Водії» ====
* готівка водію;
Поля довідника:
* банківська картка;
* онлайн-оплата;
* безготівковий розрахунок для корпоративного клієнта;
* передплата;
* післяплата.


* ПІБ;
== Статуси оплати ==
* телефон;
* категорії водійського посвідчення;
* фото — опціонально;
* статус:
** активний;
** заблокований.


==== Довідник «Типи поїздок» ====
{| class="wikitable" style="width:100%;"
Типи поїздок:
! Статус
! Значення
|-
| Не оплачено
| Оплата ще не отримана
|-
| Очікує оплати
| Клієнту виставлено рахунок або посилання на оплату
|-
| Частково оплачено
| Оплачена частина суми
|-
| Оплачено
| Оплата отримана повністю
|-
| Повернення
| Кошти повернено клієнту
|}
 
== Рахунок і квитанція ==


* таксі містом;
Для поїздки система може формувати рахунок або квитанцію.
* трансфер аеропорт-готель;
* оренда з водієм — годинами;
* корпоративна поїздка.


=== 2. База «Замовлення» ===
== Дані квитанції ==


==== Колонки бази ====
Квитанція має містити:


* номер замовлення;
* номер замовлення;
* дата і час замовлення;
* дату і час поїздки;
* клієнт;
* клієнта;
* тип поїздки;
* маршрут;
* пункт відправлення;
* водія;
* пункт призначення;
* автомобіль;
* автомобіль;
* водій;
* суму;
* статус:
* тип оплати;
** нове;
* статус оплати.
** призначено;
 
** виконується;
== Сповіщення клієнтів ==
** виконано;
 
** скасовано;
Система має надсилати клієнту повідомлення про ключові події.
* ціна поїздки;
 
* тип оплати:
== Події для сповіщень ==
** готівка;
 
** картка;
* замовлення створено;
** безготівковий розрахунок.
* замовлення підтверджено;
* водія призначено;
* авто подано;
* поїздку розпочато;
* поїздку завершено;
* оплату підтверджено;
* замовлення скасовано;
* запит на оцінку поїздки.
 
== Дані в повідомленні про призначення водія ==
 
Клієнту бажано показати:
 
* ім’я водія;
* телефон водія;
* марку і модель авто;
* номер авто;
* час подачі;
* орієнтовну вартість.
 
== Рейтинг і відгуки ==


==== Функціонал ====
Після завершення поїздки клієнт може оцінити сервіс.


* створення нового замовлення вручну або через сайт;
== Поля оцінки ==
* автоматичне або ручне призначення водія і авто;
* розрахунок ціни:
** фіксована ціна;
** за кілометражем.


=== 3. Процес обробки замовлення ===
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Замовлення
| До якої поїздки належить оцінка
|-
| Клієнт
| Хто залишив оцінку
|-
| Водій
| Кого оцінюють
|-
| Оцінка
| Наприклад, від 1 до 5
|-
| Коментар
| Текстовий відгук
|-
| Дата
| Коли залишено оцінку
|}
 
== Мапа і маршрути ==


==== Кроки ====
Опціонально можна інтегрувати мапу.


# Клієнт подає заявку через сайт або менеджер створює її вручну.
== Можливості мапи ==
# Система шукає вільного водія і машину за параметрами.
# Виконується призначення замовлення водію.
# Виконується поїздка і фіксується її завершення.
# Формується рахунок або підтверджується оплата.


=== 4. Додаткові функції ===
* відображення пункту відправлення;
* відображення пункту призначення;
* побудова маршруту;
* розрахунок відстані;
* розрахунок приблизного часу;
* відображення автомобілів, якщо реалізовано GPS-інтеграцію.


* робота через AJAX для бронювання без перезавантаження;
== Звіти ==
* підтримка попередніх замовлень на конкретну дату і час;
* автоматичне сповіщення клієнта:
** про підтвердження замовлення;
** про подачу авто;
** про завершення поїздки;
* можливість оцінювання поїздки — рейтинг водія;
* мобільна версія або адаптивна верстка для бронювання.


=== 5. Звіти ===
== Звіт «Замовлення по періодах» ==


==== Звіт «Замовлення по періодах» ====
Звіт показує кількість і суму замовлень за вибраний період.


У звіті потрібно відображати:
* дату;
* кількість замовлень;
* кількість замовлень;
* сума доходів;
* кількість виконаних;
* кількість скасованих замовлень.
* кількість скасованих;
* суму доходу;
* середній чек.


==== Звіт «Ефективність водіїв» ====
== Звіт «Ефективність водіїв» ==


* середня оцінка;
Звіт показує роботу водіїв.
 
У звіті потрібно відображати:
 
* водія;
* кількість виконаних замовлень;
* кількість виконаних замовлень;
* пробіг за період.
* кількість скасованих;
* середню оцінку;
* суму доходу;
* пробіг, якщо фіксується;
* кількість скарг, якщо реалізовано.
 
== Звіт «Доходи по автомобілях» ==
 
Звіт показує, скільки заробив кожен автомобіль.
 
У звіті потрібно відображати:
 
* автомобіль;
* кількість поїздок;
* суму доходу;
* середній дохід на поїздку;
* кількість годин у роботі;
* статус автомобіля.
 
== Звіт «Скасовані замовлення» ==
 
Звіт показує причини втрати замовлень.
 
У звіті потрібно відображати:
 
* номер замовлення;
* клієнта;
* дату;
* водія, якщо був призначений;
* причину скасування;
* хто скасував;
* час до подачі авто.
 
== Звіт «Оплати» ==
 
Звіт показує фінансовий стан поїздок.
 
У звіті потрібно відображати:
 
* номер замовлення;
* клієнта;
* суму;
* тип оплати;
* статус оплати;
* дату оплати;
* борг, якщо є.
 
== AJAX-інтерактив ==
 
Інтерфейс має працювати швидко та зручно для диспетчера, водія і клієнта.
 
Через AJAX мають працювати:
 
* створення бронювання;
* пошук клієнта;
* вибір адрес;
* розрахунок ціни;
* вибір водія;
* вибір автомобіля;
* зміна статусу замовлення;
* підтвердження поїздки;
* фіксація оплати;
* відправка сповіщення;
* оцінювання поїздки;
* фільтрація замовлень;
* оновлення звітів.
 
== Логування змін ==
 
Модуль повинен фіксувати важливі дії.
 
Журнал змін має зберігати:
 
* хто створив замовлення;
* хто змінив дату або час подачі;
* хто змінив маршрут;
* хто призначив водія;
* хто призначив автомобіль;
* хто змінив статус поїздки;
* хто змінив ціну;
* хто зафіксував оплату;
* хто скасував замовлення;
* хто змінив статус водія або авто;
* дату й час дії;
* старе та нове значення, якщо це можливо.


==== Звіт «Доходи по автомобілях» ====
== Права доступу ==


* скільки заробив кожен автомобіль.
Модуль має підтримувати розмежування прав.
 
{| class="wikitable" style="width:100%;"
! Роль
! Можливості
|-
| Клієнт
| Створює бронювання, переглядає свої поїздки, оплати й оцінки
|-
| Диспетчер
| Приймає замовлення, призначає водіїв і авто, контролює статуси
|-
| Водій
| Бачить свої замовлення, приймає поїздки, змінює статус виконання
|-
| Менеджер
| Працює з клієнтами, тарифами, корпоративними замовленнями
|-
| Бухгалтер
| Контролює оплати, рахунки, квитанції та борги
|-
| Керівник
| Переглядає звіти, доходи, ефективність водіїв і автопарку
|-
| Адміністратор
| Налаштовує права, тарифи, типи поїздок, авто, водіїв і службові параметри
|}


== Технічні вимоги ==
== Технічні вимоги ==
{| class="wikitable"
 
!Параметр
{| class="wikitable" style="width:100%;"
!Опис
! Параметр
! Опис
|-
| Бекенд
| K2 Cloud ERP на Python або PHP
|-
| База даних
| PostgreSQL або MySQL
|-
| Фронтенд
| HTML5, JavaScript
|-
| AJAX
| Fetch API або Axios
|-
| UI-компоненти
| DataTables для замовлень, Select2 для водіїв, авто і типів поїздок
|-
|-
|Бекенд
| Мапа
|K2 Cloud ERP на Python або PHP
| OpenStreetMap або Google Maps API, опціонально
|-
|-
|БД
| Сповіщення
|PostgreSQL або MySQL
| Email, SMS або месенджери, залежно від реалізації
|-
|-
|Фронтенд
| Оплати
|HTML5, JavaScript, AJAX, Fetch API або Axios
| Онлайн-оплата, готівка, картка, безготівково
|-
|-
|UI-компоненти
| Друк
|DataTables для замовлень, Select2 для водіїв / авто / типів поїздок, мапа для відображення маршрутів — опціонально через OpenStreetMap або Google Maps API
| PDF-квитанції або рахунки, опціонально
|-
|-
|Друк
| Адаптивність
|Генерація квитанцій у PDF, опціонально
| Мобільна версія для бронювання і роботи водія
|}
|}


== Критерії оцінки ==
== Рекомендовані сутності бази даних ==
{| class="wikitable"
 
!Критерій
Для реалізації задачі доцільно передбачити такі сутності:
!Бали
 
* клієнти;
* автомобілі;
* типи автомобілів;
* водії;
* типи поїздок;
* тарифи;
* замовлення;
* статуси замовлень;
* маршрути;
* адреси;
* оплати;
* квитанції;
* сповіщення;
* рейтинги;
* відгуки;
* скасування;
* журнал змін;
* звіти;
* права доступу.
 
== Практичне завдання ==
 
У межах атестації потрібно продемонструвати робочий сценарій.
 
Мінімальний сценарій:
 
# створити клієнта;
# створити кілька автомобілів;
# створити кілька водіїв;
# створити типи поїздок;
# створити тариф;
# створити нове замовлення;
# вказати дату, час, пункт відправлення і пункт призначення;
# розрахувати вартість поїздки;
# призначити водія й автомобіль;
# перевести замовлення у статус '''«Призначено»''';
# перевести замовлення у статус '''«Авто подано»''';
# перевести замовлення у статус '''«Виконується»''';
# завершити поїздку;
# зафіксувати оплату;
# сформувати квитанцію;
# залишити оцінку поїздки;
# перевірити рейтинг водія;
# створити скасоване замовлення з причиною;
# сформувати звіт замовлень за період;
# сформувати звіт ефективності водіїв;
# сформувати звіт доходів по автомобілях;
# сформувати звіт оплат;
# перевірити журнал змін.
 
== Критерії оцінювання ==
 
{| class="wikitable" style="width:100%;"
! Критерій
! Бали
! Що перевіряється
|-
| Реалізація бази автомобілів, водіїв і замовлень
| 20
| Клієнти, авто, водії, типи поїздок, тарифи, замовлення
|-
|-
|Реалізація бази автомобілів, водіїв і замовлень
| Створення бронювання і призначення водіїв
|20
| 20
| Бронювання на дату й час, вибір маршруту, підбір або ручне призначення водія й авто
|-
|-
|Створення бронювання і призначення водіїв
| Управління статусами поїздок і оплатою
|20
| 20
| Статуси замовлення, фіксація виконання, оплата, квитанція, скасування
|-
|-
|Управління статусами поїздок і оплатою
| Формування звітів по доходах і водіях
|20
| 20
| Замовлення за період, ефективність водіїв, доходи по авто, оплати, скасування
|-
|-
|Формування звітів по доходах і водіях
| Інтерактивність через AJAX і сповіщення клієнтів
|20
| 20
| AJAX-бронювання, зміна статусів, розрахунок ціни, сповіщення, оцінювання
|-
|-
|Інтерактивність через AJAX і сповіщення клієнтів
! Разом
|20
! 100
! Максимальна оцінка
|}
|}
== Шкала оцінювання ==
{| class="wikitable" style="width:100%;"
! Бали
! Рівень
! Опис
|-
| 90–100
| Відмінно
| Модуль повністю працює: клієнти, авто, водії, бронювання, призначення, статуси, оплати, сповіщення, рейтинги й звіти реалізовані коректно
|-
| 75–89
| Добре
| Основна логіка працює, є незначні недоліки, які не руйнують процес обліку поїздок
|-
| 60–74
| Зараховано
| Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання
|-
| 0–59
| Не зараховано
| Відсутня критична логіка: замовлення, водії, автомобілі, статуси, оплата або звіти
|}
== Критичні помилки ==
Критичними помилками вважаються ситуації, коли:
* неможливо створити клієнта;
* неможливо створити автомобіль;
* неможливо створити водія;
* неможливо створити замовлення;
* замовлення не має дати й часу подачі;
* замовлення не має пункту відправлення;
* неможливо призначити водія;
* неможливо призначити автомобіль;
* один водій призначається на дві одночасні поїздки без попередження;
* один автомобіль призначається на дві одночасні поїздки без попередження;
* статус поїздки не змінюється;
* виконана поїздка не фіксується;
* оплата не прив’язується до замовлення;
* скасоване замовлення показується як активне;
* рейтинг водія не оновлюється, якщо ця функція заявлена;
* звіти не відповідають фактичним замовленням і оплатам;
* зміни водія, авто, статусу або ціни не логуються.
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
'''Умова складання.''' Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл трансферу або таксі: клієнт → замовлення → водій → авто → поїздка → оплата → квитанція → звіт.
</div>
== Очікуваний результат ==
У результаті виконання атестаційного завдання має бути створений модуль трансферів і таксі в K2 ERP.
Модуль має підтримувати клієнтів, автомобілі, водіїв, типи поїздок, тарифи, замовлення, маршрути, бронювання, ручне або автоматичне призначення водія, статуси поїздок, розрахунок вартості, оплати, квитанції, сповіщення, рейтинги, звіти, AJAX-інтерактив і логування змін.


== Примітка ==
== Примітка ==
Модуль трансферів і таксі — незамінний для:


* невеликих таксомоторних служб;
Модуль трансферів і таксі потрібен таксомоторним службам, компаніям VIP-трансферів, корпоративним автопаркам, туристичним компаніям, готелям, аеропортам і сервісам персональних перевезень.
* VIP-трансферів;
 
* корпоративних автопарків;
Автоматизація бронювань дозволяє зменшити навантаження на диспетчерів, швидше призначати водіїв, краще контролювати виконання поїздок, бачити доходи та підвищувати якість обслуговування клієнтів.
* міжнародних аеропортів.
 
== Коротко ==
 
{| class="wikitable" style="width:100%;"
! Питання
! Відповідь
|-
| Що потрібно створити?
| Модуль обліку замовлень трансферів і таксі
|-
| Які довідники потрібні?
| Клієнти, автомобілі, водії, типи поїздок, тарифи
|-
| Який головний документ?
| Замовлення поїздки
|-
| Що має містити замовлення?
| Клієнта, дату, час, маршрут, водія, автомобіль, ціну, оплату і статус
|-
| Які статуси потрібні?
| Нове, призначено, авто подано, виконується, виконано, оплачено, скасовано
|-
| Які оплати потрібні?
| Готівка, картка, онлайн-оплата, безготівковий розрахунок
|-
| Які звіти потрібні?
| Замовлення за період, ефективність водіїв, доходи по автомобілях, оплати, скасування
|-
| Що є критичною вимогою?
| Повний цикл: бронювання → призначення → поїздка → оплата → звіт
|}
 
== Див. також ==


Правильна автоматизація бронювань дозволяє:
* [[K2 Cloud ERP|K2 ERP]]
* [[K2 ERP]]
* [[Атестаційні завдання K2 ERP]]
* [[Автоперевізник]]
* [[TMS]]
* [[CRM]]
* [[Таксі]]
* [[Трансфер]]
* [[Бронювання]]
* [[Водії]]
* [[Автопарк]]
* [[Рахунок на оплату]]
* [[Звітність]]
* [[AJAX]]


* зменшити навантаження на диспетчерів;
[[Категорія:K2 ERP]]
* підвищити швидкість обслуговування клієнтів.
[[Категорія:Атестаційні завдання K2]]
[[Категорія:Трансфери]]
[[Категорія:Таксі]]
[[Категорія:TMS]]
[[Категорія:Автопарк]]
[[Категорія:Корпоративна Wiki]]