Атестаційні завдання K2 ERP/Автоперевізник


Атестаційне завдання K2 ERP — Автоперевізник — це практична задача для перевірки навичок розробника або впроваджувача K2 ERP у створенні модуля обліку автоперевезень вантажів і пасажирів.

Модуль має забезпечувати повний цикл роботи транспортної компанії: облік автопарку, водіїв, маршрутів, рейсів, витрат, палива, оплат клієнтів, рахунків, актів виконаних перевезень, планового ТО та прибутковості рейсів.

Коротко. Потрібно реалізувати модуль для автоперевізника: транспорт, водії, маршрути, рейси, паливо, витрати, дохід, прибутковість, рахунки клієнтам, акти виконаних перевезень, календар планування і контроль технічного обслуговування.

Назва завдання

Модуль обліку автоперевезень вантажів і пасажирів.

Мета завдання

Мета завдання — створити в K2 ERP модуль для автоматизації роботи транспортної компанії.

Система повинна дозволяти:

  • вести довідник автотранспорту;
  • вести довідник водіїв;
  • вести маршрути;
  • вести типи перевезень;
  • створювати рейси;
  • призначати автомобіль і водія на рейс;
  • фіксувати плановий і фактичний пробіг;
  • обліковувати паливо;
  • обліковувати додаткові витрати;
  • рахувати собівартість рейсу;
  • рахувати чистий прибуток;
  • формувати рахунки клієнтам;
  • формувати акти виконаних перевезень;
  • планувати рейси на календарі;
  • контролювати завантаження транспорту;
  • контролювати роботу водіїв;
  • нагадувати про планове ТО;
  • формувати звіти по рейсах, транспорту, водіях, витратах і прибутковості.

Головний принцип. Рейс — це центральний документ автоперевізника. Він поєднує клієнта, транспорт, водія, маршрут, пробіг, паливо, витрати, дохід, документи і фінансовий результат.

Реальний бізнес-контекст

Транспортна компанія виконує вантажні або пасажирські перевезення автомобільним транспортом. Компанія має власний автопарк, водіїв, постійні або разові маршрути, клієнтів, витрати на паливо, обслуговування, дорожні збори, стоянки та інші операційні витрати.

У роботі автоперевізника потрібно контролювати:

  • який транспорт доступний;
  • який водій призначений на рейс;
  • який маршрут виконується;
  • коли рейс заплановано;
  • який пробіг зафіксовано на старті і фініші;
  • скільки палива витрачено;
  • які додаткові витрати були в рейсі;
  • яку суму має сплатити клієнт;
  • чи прибутковий конкретний рейс;
  • коли транспорту потрібно пройти технічне обслуговування;
  • скільки рейсів виконав кожен водій.

Без автоматизації облік рейсів часто ведеться в таблицях, паперових шляхових листах або месенджерах. Це ускладнює контроль витрат, прибутковості, пального, завантаження транспорту і своєчасного обслуговування автопарку.

Основний бізнес-процес

Типовий процес роботи автоперевізника виглядає так:

  1. менеджер створює клієнта або обирає наявного;
  2. створюється або вибирається маршрут;
  3. планується рейс;
  4. на рейс призначається автомобіль;
  5. на рейс призначається водій;
  6. фіксується планова вартість перевезення;
  7. при виїзді фіксується дата, час і показник одометра;
  8. під час рейсу вносяться витрати на паливо, дороги, стоянки або інші витрати;
  9. після завершення фіксується кінцевий одометр;
  10. система розраховує фактичний пробіг;
  11. система рахує витрати і прибутковість;
  12. формується рахунок клієнту;
  13. формується акт виконаного перевезення;
  14. рейс переходить у статус «Завершений»;
  15. дані потрапляють у звіти.

Основні об’єкти модуля

Об’єкт Призначення
Автотранспорт Автомобілі, вантажівки, автобуси, мікроавтобуси
Водії Працівники, які виконують рейси
Маршрути Напрями перевезення з відстанню і проміжними пунктами
Клієнти Замовники перевезень
Типи перевезень Вантажні, пасажирські, спеціальні доставки
Рейси Основні документи виконання перевезень
Витрати рейсу Паливо, платні дороги, стоянки, штрафи, ремонт у дорозі
Паливо Планова і фактична витрата палива
Рахунки Документи для оплати перевезення клієнтом
Акти виконаних перевезень Документи, що підтверджують виконання послуги
ТО транспорту Планове технічне обслуговування автомобілів
Календар рейсів Планування завантаження транспорту і водіїв
Звіти Аналітика по рейсах, витратах, водіях і прибутковості

Довідник «Автотранспорт»

Довідник автотранспорту містить усі транспортні засоби компанії.

Типи транспорту

  • вантажівка;
  • автобус;
  • мікроавтобус;
  • легковий автомобіль;
  • рефрижератор;
  • тягач;
  • причіп;
  • спецтранспорт.

Поля автотранспорту

Поле Опис
Номер автомобіля Державний номер транспортного засобу
Марка і модель Наприклад: Mercedes Sprinter, MAN, Volvo, Богдан
Тип транспорту Вантажівка, автобус, мікроавтобус тощо
Вантажопідйомність Для вантажного транспорту
Кількість пасажирських місць Для пасажирського транспорту
Номер техпаспорта Дані реєстраційного документа
Витрата палива Норма л/100 км
Тип палива Дизель, бензин, газ, електро
Поточний пробіг Останній зафіксований показник одометра
Статус Доступний, у рейсі, на ремонті, неактивний

Важливо. Транспорт, який перебуває в рейсі або на ремонті, не повинен призначатися на новий рейс без окремого підтвердження.

Довідник «Водії»

Довідник водіїв містить працівників, які виконують перевезення.

Поля водія

Поле Опис
ПІБ Повне ім’я водія
Телефон Контактний номер
Номер водійського посвідчення Номер документа
Категорії допуску B, C, D, CE або інші
Дата завершення посвідчення Для контролю строку дії
Статус Доступний, у рейсі, у відпустці, неактивний
Примітки Додаткова інформація

Довідник «Маршрути»

Маршрут описує напрям перевезення.

Поля маршруту

Поле Опис
Початкова точка Місто, адреса або склад відправлення
Кінцева точка Місто, адреса або пункт призначення
Відстань, км Планова довжина маршруту
Проміжні пункти Через які міста або точки проходить маршрут
Опис маршруту Додаткові умови або примітки
Плановий час у дорозі Орієнтовна тривалість рейсу

Довідник «Типи вантажів/послуг»

Тип перевезення допомагає розділяти рейси за видом послуг.

Приклади типів

  • вантажні перевезення;
  • пасажирські перевезення;
  • спеціальні доставки;
  • регулярні маршрути;
  • експрес-доставка;
  • міжнародні перевезення;
  • міжміські перевезення;
  • локальна доставка.

Клієнти

Клієнти — це замовники перевезень.

Поля клієнта

Поле Опис
Назва клієнта / ПІБ Компанія або фізична особа
Тип клієнта Фізична або юридична особа
Телефон Контактний номер
Email Електронна адреса
Адреса Адреса клієнта
Договір Номер або посилання на договір, якщо є
Умови оплати Передплата, післяплата, безготівково тощо

Журнал «Рейси»

Журнал рейсів є головним робочим екраном модуля.

Колонки журналу рейсів

Колонка Опис
Номер рейсу Унікальний номер рейсу
Дата виїзду Планова або фактична дата старту
Клієнт Замовник перевезення
Автомобіль Призначений транспорт
Водій Призначений водій
Маршрут Напрям перевезення
Тип перевезення Вантажне, пасажирське, спеціальне
Вартість перевезення Дохід по рейсу
Фактичний пробіг Різниця між кінцевим і стартовим одометром
Витрати на паливо Фактичні витрати палива
Додаткові витрати Дороги, стоянки, штрафи, інше
Статус рейсу Запланований, у процесі, завершений, скасований

Статуси рейсу

Статус Значення
Запланований Рейс створено, але ще не розпочато
Підтверджений Транспорт і водій призначені, рейс погоджено
У процесі Рейс виконується
Очікує документів Рейс завершено, але документи ще не оформлені
Завершений Рейс виконано, витрати внесено, документи сформовано
Скасований Рейс не відбувся

Створення рейсу

При створенні рейсу потрібно вказати основні параметри перевезення.

Поля рейсу

Поле Опис
Номер рейсу Генерується автоматично або вводиться вручну
Клієнт Замовник перевезення
Маршрут Вибір із довідника маршрутів
Автомобіль Вибір доступного транспорту
Водій Вибір доступного водія
Тип перевезення Вантажне, пасажирське або інше
Дата виїзду Планова дата старту
Дата прибуття Планова дата завершення
Вартість перевезення Дохід по рейсу
Коментар Додаткові умови

Процес виконання рейсу

1. Планування

На етапі планування менеджер:

  • обирає маршрут;
  • обирає транспорт;
  • обирає водія;
  • вказує клієнта;
  • вказує планову дату виїзду;
  • задає вартість перевезення.

2. Виїзд

При старті рейсу потрібно зафіксувати:

  • дату і час виїзду;
  • показник одометра на старті;
  • залишок палива, опціонально;
  • статус рейсу «У процесі».

3. Виконання рейсу

Під час рейсу можна додавати витрати:

  • паливо;
  • платні дороги;
  • стоянки;
  • штрафи;
  • ремонт у дорозі;
  • добові;
  • інші витрати.

4. Завершення рейсу

Після завершення рейсу потрібно зафіксувати:

  • дату і час прибуття;
  • кінцевий показник одометра;
  • фактичний пробіг;
  • остаточні витрати;
  • фінансовий результат.

Облік палива

Паливо є однією з ключових витрат автоперевізника.

Поля паливної операції

Поле Опис
Рейс До якого рейсу належить витрата
Дата Дата заправки
Тип палива Дизель, бензин, газ тощо
Кількість літрів Обсяг палива
Ціна за літр Вартість одиниці
Сума Кількість × ціна
АЗС Опціонально, місце заправки
Коментар Додаткова інформація

Планова витрата палива

Планова витрата розраховується за нормою транспорту.

Планове паливо = Відстань маршруту × Норма витрати / 100

Фактична витрата палива

Фактична витрата береться з внесених паливних операцій.

Фактичне паливо = Сума літрів по рейсу

Порівняння плану і факту

Система повинна показувати відхилення:

Відхилення = Фактичне паливо - Планове паливо

Додаткові витрати рейсу

Окрім палива, у рейсі можуть бути інші витрати.

Приклади витрат

  • платні дороги;
  • стоянки;
  • штрафи;
  • ремонт у дорозі;
  • мийка;
  • добові водія;
  • навантаження або розвантаження;
  • інші операційні витрати.

Поля витрати

Поле Опис
Рейс До якого рейсу належить витрата
Дата Коли виникла витрата
Тип витрати Паливо, дорога, стоянка, ремонт, штраф тощо
Сума Сума витрати
Валюта UAH, USD, EUR або інша
Документ Чек, квитанція, фото або інший файл
Коментар Пояснення витрати

Розрахунок прибутковості рейсу

Система повинна автоматично рахувати фінансовий результат рейсу.

Загальні витрати рейсу

Загальні витрати = Паливо + Додаткові витрати

Чистий прибуток рейсу

Чистий прибуток = Дохід від перевезення - Загальні витрати

Рентабельність рейсу

Рентабельність = Чистий прибуток / Дохід від перевезення × 100%

Практичний сенс. Один рейс може виглядати вигідним за сумою оплати, але стати збитковим після врахування палива, простоїв, платних доріг і додаткових витрат.

Календар планування рейсів

Календар потрібен для контролю завантаження транспорту і водіїв.

У календарі потрібно бачити

  • заплановані рейси;
  • транспорт у рейсі;
  • водіїв у рейсі;
  • вільний транспорт;
  • конфлікти призначення;
  • рейси, що перетинаються по датах;
  • завершені та скасовані рейси.

Контроль конфліктів

Система повинна попереджати, якщо:

  • автомобіль уже призначений на інший рейс у цей час;
  • водій уже призначений на інший рейс;
  • автомобіль перебуває на ремонті;
  • водій неактивний або у відпустці;
  • категорія водія не відповідає типу транспорту.

Критично. Один і той самий автомобіль або водій не повинні бути призначені на два рейси, які виконуються одночасно.

Технічне обслуговування транспорту

Модуль має контролювати планове ТО транспорту.

ТО може плануватися за

  • пробігом;
  • датою;
  • мотогодинами, якщо застосовується;
  • рекомендаціями сервісу;
  • внутрішніми правилами компанії.

Дані ТО

Поле Опис
Автомобіль Транспорт, для якого планується ТО
Тип ТО Планове, позапланове, ремонт
Планова дата Коли потрібно виконати ТО
Плановий пробіг При якому пробігу потрібно виконати ТО
Фактична дата Коли ТО виконано
Вартість Сума обслуговування
Коментар Деталі виконаних робіт

Документи по рейсу

Рахунок клієнту

Рахунок формується на основі рейсу.

Рахунок має містити:

  • номер рахунку;
  • дату;
  • клієнта;
  • маршрут;
  • дату рейсу;
  • тип перевезення;
  • суму до оплати;
  • реквізити для оплати.

Акт виконаних перевезень

Акт підтверджує факт надання послуги.

Акт має містити:

  • номер акта;
  • дату;
  • клієнта;
  • маршрут;
  • транспорт;
  • водія;
  • дату виконання рейсу;
  • вартість перевезення;
  • підписи сторін.

Звітність

Звіт «Рейси за період»

Звіт показує виконані рейси за вибраний період.

У звіті потрібно відображати:

  • номер рейсу;
  • дату;
  • клієнта;
  • маршрут;
  • автомобіль;
  • водія;
  • дохід;
  • витрати;
  • чистий прибуток;
  • статус.

Звіт «Витрати на транспорт»

Звіт показує витрати по кожному автомобілю.

У звіті потрібно відображати:

  • автомобіль;
  • витрати на паливо;
  • витрати на обслуговування;
  • платні дороги;
  • стоянки;
  • інші витрати;
  • загальну суму витрат.

Звіт «Робота водіїв»

Звіт показує активність водіїв.

У звіті потрібно відображати:

  • водія;
  • кількість рейсів;
  • загальний пробіг;
  • кількість завершених рейсів;
  • кількість скасованих рейсів;
  • суму доходу по рейсах;
  • кількість прострочених або проблемних рейсів.

Звіт «Прибутковість рейсів»

Звіт показує фінансовий результат рейсів.

У звіті потрібно відображати:

  • рейс;
  • дохід;
  • паливо;
  • додаткові витрати;
  • загальні витрати;
  • чистий прибуток;
  • рентабельність.

Звіт «Планове ТО»

Звіт показує транспорт, якому потрібно технічне обслуговування.

У звіті потрібно відображати:

  • автомобіль;
  • поточний пробіг;
  • плановий пробіг ТО;
  • залишок км до ТО;
  • планову дату ТО;
  • статус ТО.

AJAX-інтерактив

Інтерфейс має працювати швидко та зручно для диспетчера і менеджера.

Через AJAX мають працювати:

  • вибір клієнта;
  • вибір маршруту;
  • вибір транспорту;
  • вибір водія;
  • створення рейсу;
  • зміна статусу рейсу;
  • внесення одометра;
  • додавання витрат;
  • додавання паливних операцій;
  • розрахунок прибутковості;
  • оновлення календаря;
  • формування рахунку;
  • формування акта;
  • фільтрація журналів;
  • оновлення звітів.

Логування змін

Модуль повинен фіксувати важливі зміни.

Журнал змін має зберігати:

  • хто створив рейс;
  • хто змінив маршрут;
  • хто призначив автомобіль;
  • хто призначив водія;
  • хто змінив дату рейсу;
  • хто змінив статус рейсу;
  • хто вніс стартовий одометр;
  • хто вніс кінцевий одометр;
  • хто додав витрати;
  • хто додав паливо;
  • хто сформував рахунок;
  • хто сформував акт;
  • дату й час зміни;
  • старе та нове значення, якщо це можливо.

Права доступу

Модуль має підтримувати розмежування прав.

Роль Можливості
Диспетчер Планує рейси, призначає транспорт і водіїв, контролює виконання
Водій Бачить свої рейси, може передавати дані по витратах і пробігу
Менеджер Працює з клієнтами, вартістю рейсу, рахунками і актами
Бухгалтер Контролює оплату, рахунки, акти і фінансові документи
Механік Контролює ТО, ремонт і технічний стан транспорту
Керівник Переглядає звіти, прибутковість, витрати і завантаження автопарку
Адміністратор Налаштовує довідники, права, маршрути, типи витрат і службові параметри

Технічні вимоги

Параметр Опис
Бекенд K2 Cloud ERP на Python або PHP
База даних PostgreSQL або MySQL
Фронтенд HTML5, JavaScript
AJAX Axios або Fetch API
UI-компоненти DataTables для рейсів, Select2 для вибору транспорту, водіїв і маршрутів
Календар Календар для планування рейсів
Файли Фото чеків, квитанцій, документів по витратах
Друк PDF-рахунки, акти виконаних перевезень, маршрутні листи
Експорт Excel або PDF для звітів

Рекомендовані сутності бази даних

Для реалізації задачі доцільно передбачити такі сутності:

  • автотранспорт;
  • типи транспорту;
  • водії;
  • категорії водійських посвідчень;
  • маршрути;
  • клієнти;
  • типи перевезень;
  • рейси;
  • статуси рейсів;
  • паливні операції;
  • типи витрат;
  • витрати рейсів;
  • рахунки;
  • акти виконаних перевезень;
  • технічне обслуговування;
  • календар рейсів;
  • документи рейсу;
  • журнал змін;
  • звіти;
  • права доступу.

Практичне завдання

У межах атестації потрібно продемонструвати робочий сценарій.

Мінімальний сценарій:

  1. створити транспорт;
  2. створити водія;
  3. створити маршрут;
  4. створити клієнта;
  5. створити типи перевезень;
  6. створити рейс;
  7. призначити автомобіль і водія;
  8. вказати планову вартість перевезення;
  9. перевести рейс у статус «У процесі»;
  10. зафіксувати стартовий одометр;
  11. додати паливну операцію;
  12. додати додаткові витрати;
  13. завершити рейс;
  14. зафіксувати кінцевий одометр;
  15. перевірити розрахунок фактичного пробігу;
  16. перевірити розрахунок планового і фактичного палива;
  17. перевірити розрахунок прибутковості рейсу;
  18. сформувати рахунок клієнту;
  19. сформувати акт виконаного перевезення;
  20. перевірити календар рейсів;
  21. створити планове ТО для автомобіля;
  22. сформувати звіт рейсів за період;
  23. сформувати звіт витрат на транспорт;
  24. сформувати звіт роботи водіїв;
  25. сформувати звіт прибутковості рейсів.

Критерії оцінювання

Критерій Бали Що перевіряється
Реалізація обліку транспорту, водіїв і маршрутів 20 Автопарк, водії, категорії допуску, маршрути, клієнти, типи перевезень
Управління створенням і виконанням рейсів 20 Створення рейсу, призначення транспорту і водія, статуси, старт і завершення
Облік витрат і підрахунок прибутковості рейсів 20 Паливо, додаткові витрати, пробіг, собівартість, чистий прибуток, рентабельність
Формування рахунків і звітності 20 Рахунок клієнту, акт виконаних перевезень, звіти по рейсах, транспорту і водіях
Інтерактивність через AJAX і планування на календарі 20 AJAX-створення рейсів, витрат, статусів, оновлення календаря і звітів
Разом 100 Максимальна оцінка

Шкала оцінювання

Бали Рівень Опис
90–100 Відмінно Модуль повністю працює: транспорт, водії, маршрути, рейси, витрати, паливо, прибутковість, документи, календар і звіти реалізовані коректно
75–89 Добре Основна логіка працює, є незначні недоліки, які не руйнують процес обліку автоперевезень
60–74 Зараховано Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання
0–59 Не зараховано Відсутня критична логіка: транспорт, водії, маршрути, рейси, витрати, документи або розрахунок прибутковості

Критичні помилки

Критичними помилками вважаються ситуації, коли:

  • неможливо створити автомобіль;
  • неможливо створити водія;
  • неможливо створити маршрут;
  • неможливо створити рейс;
  • рейс не має автомобіля або водія;
  • один автомобіль призначається на два одночасні рейси без попередження;
  • один водій призначається на два одночасні рейси без попередження;
  • неможливо внести стартовий або кінцевий одометр;
  • фактичний пробіг не розраховується;
  • витрати рейсу не враховуються;
  • паливо не враховується в собівартості;
  • прибутковість рейсу не розраховується;
  • рахунок клієнту не формується;
  • акт виконаного перевезення не формується;
  • звіти не відповідають фактичним рейсам і витратам;
  • зміни статусів і фінансових даних не логуються.

Умова складання. Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл автоперевізника: транспорт → водій → маршрут → рейс → витрати → завершення → прибутковість → рахунок → акт → звіт.

Очікуваний результат

У результаті виконання атестаційного завдання має бути створений модуль автоперевізника в K2 ERP.

Модуль має підтримувати автотранспорт, водіїв, маршрути, клієнтів, типи перевезень, рейси, статуси, паливні операції, додаткові витрати, одометри, розрахунок пробігу, планову і фактичну витрату палива, прибутковість рейсів, рахунки, акти виконаних перевезень, календар планування, технічне обслуговування, звіти, AJAX-інтерактив і логування змін.

Примітка

Модуль для автоперевізників потрібен логістичним компаніям, вантажним перевізникам, автобусним компаніям, службам доставки, підприємствам із власним автопарком і компаніям, які виконують регулярні перевезення.

Автоматизація обліку рейсів дозволяє мінімізувати втрати, контролювати паливо, бачити реальну прибутковість, оптимізувати логістику і підвищувати ефективність використання транспорту.

Коротко

Питання Відповідь
Що потрібно створити? Модуль обліку автоперевезень вантажів і пасажирів
Які довідники потрібні? Автотранспорт, водії, маршрути, клієнти, типи перевезень
Який головний документ? Рейс
Що має містити рейс? Клієнта, маршрут, транспорт, водія, пробіг, витрати, дохід і статус
Що потрібно рахувати? Фактичний пробіг, паливо, загальні витрати, чистий прибуток і рентабельність
Які документи потрібні? Рахунок клієнту і акт виконаних перевезень
Які звіти потрібні? Рейси за період, витрати на транспорт, робота водіїв, прибутковість рейсів, планове ТО
Що є критичною вимогою? Повний цикл: рейс → виконання → витрати → прибутковість → документи → звіт

Див. також