Перейти до вмісту

Атестаційні завдання K2 ERP/TMS

Матеріал з K2 ERP Wiki

!== Практичне задача ==

У системі потрібно вести обліковий облік: ! У ньому потрібно показати:

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

Примітка

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

|- | Замовник | Контрагент через AJAX-пошук |- | Контактна особа | Представник замовника |- | Пункт відправлення | Пошук адреси або ручне введення |- | Пункт призначення | Адреса доставки |- | Планова дата завантаження | Коли потрібно завантажити товар |- | Планова дата доставки | Коли потрібно доставити товар |- | Примітки | Додаткові умови перевезення |- | Статус | Поточний статус замовлення |}

Довідник водіїв містить інформацію про людей, які виконують перевезення. | компонент керування транспортними перевезеннями |- | Які довідники потрібні? Що перевіряється

Операції зі статусами

! ! * кількість замовлень;

  • загальну вартість перевезень;
  • кількість доставлених замовлень;
  • кількість скасованих замовлень. {| class="wikitable" style="width:100%;"
  • транспортні засоби;
  • водії;
  • контрагенти-замовники;
  • замовлення на перевезення;
  • статуси замовлень;
  • маршрути;
  • точки маршруту;
  • тарифи;
  • додаткові витрати;
  • транспортні накладні;
  • акти виконаних робіт;
  • журнали змін статусів;
  • права доступу менеджерів;
  • склади або зони відповідальності.== Заголовок замовлення ==

Можливі варіанти тарифікації:

! |}

Потрібно логувати зміни в замовленнях і статусах. ! | Транспортні засоби та водії |- | Який провідний документ? ! * пошук за номером замовлення;

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

Контроль доступу

Зміна статусів має виконуватися через зрозумілі дії користувача. Транспортний засіб має брати участь у виборі доступних машин на дату перевезення. Разом

  • кількість замовлень;
  • суми за перевезення;
  • витрати по транспорту;
  • кількість доставлених замовлень;
  • кількість скасованих замовлень;
  • коефіцієнт використання транспорту.== Мета задача ==

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

Вибір транспортного засобу

  • транспортний засіб;
  • кількість перевезень;
  • доходи;
  • витрати;
  • прибуток;
  • рентабельність. Максимальна оцінка
Потрібно реалізувати такі статуси замовлення:

Вибір водія

== Статуси замовлення ==

Мета задача — створити в K2 ERP компонент для керування доставками та транспортною логістикою. |-

Зберегти замовлення Статус «Нове»
Призначити машину й водія Статус «Призначено»
Натиснути «Почати доставку» Статус «В дорозі»
Натиснути «Завершити доставку» Статус «Доставлено»
Натиснути «Скасувати» Статус «Скасовано»

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

У заголовку замовлення потрібно передбачити: Критично. Статуси доставки мають відображати реальний стан перевезення. Параметр

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

ПІБ Прізвище, ім’я та по батькові водія Телефон Контактний номер Водійське посвідчення Номер або інформаційні дані посвідчення Закріплений транспортний засіб Машина, за якою закріплений водій Статус Активний, відпустка, недоступний

Довідник транспортних засобів містить інформацію про автомобілі, які можуть виконувати перевезення. Менеджери повинні мати можливість призначати машини на замовлення, бачити доступність транспорту, контролювати статуси перевезень у реальному часі та отримувати документи після завершення доставки. Бали Журнал змін має фіксувати:

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

! {| class="wikitable" style="width:100%;"

У результаті виконання атестаційного задача має бути створений TMS-модуль K2 ERP. Правильна реалізація TMS-модуля дає можливість контролювати весь ланцюжок доставки та оптимізувати витрати на транспорт. {| class="wikitable" style="width:100%;"

Функціональність журналу

Звіт «Перевезення за період»

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

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

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

! Приклад формули:

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

Звіт має показувати ефективність використання кожного транспортного засобу. ! Поле

Активний Машина доступна для призначення на перевезення
На ремонті Машина тимчасово недоступна
Недоступний Машина не здатна використовуватися в роботі

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

Назва задача

Потрібно реалізувати вибір із вільних машин, доступних на дату перевезення. Результат

! Питання

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

  • номер замовлення;
  • машину;
  • водія;
  • замовника;
  • пункт відправлення;
  • пункт призначення;
  • планову або фактичну дату доставки;
  • список товарів, якщо потрібен;
  • підписи водія і представника замовника. {| class="wikitable" style="width:100%;"
  1. створити транспортний засіб;
  2. створити водія;
  3. прив’язати водія до транспортного засобу;
  4. створити замовника;
  5. створити замовлення на перевезення;
  6. вказати пункт відправлення та пункт призначення;
  7. вказати планову дату завантаження й доставки;
  8. обрати доступну машину;
  9. перевірити фільтр за вантажопідйомністю;
  10. обрати або автоматизовано підтягнути водія;
  11. перевести замовлення в статус «Призначено»;
  12. натиснути «Почати доставку»;
  13. перевести замовлення в статус «В дорозі»;
  14. натиснути «Завершити доставку»;
  15. перевести замовлення в статус «Доставлено»;
  16. розрахувати вартість перевезення;
  17. додати додаткові витрати;
  18. сформувати транспортну накладну;
  19. сформувати акт виконаних робіт;
  20. сформувати звіт перевезень за період;
  21. сформувати звіт рентабельності транспорту;
  22. показати журнал змін статусів. критично. Машина, яка перебуває на ремонті або вже зайнята на інше перевезення в той самий час, не повинна пропонуватися як доступна для нового замовлення. Дія

! Рівень ! як приклад, якщо вага вантажу становить 5 тонн, платформа не повинна пропонувати машину з вантажопідйомністю 2 тонни. ! компонент має підтримувати:

|- | Нове | Замовлення створене, але ще не призначено машину й водія |- | Призначено | Обрано машину та водія |- | В дорозі | Машина вирушила, статус встановлюється кнопкою «Почати доставку» |- | Доставлено | Машина прибула, статус встановлюється кнопкою «Завершити доставку» |- | Скасовано | Замовлення скасоване |}

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

Журнал має підтримувати:

Маршрути та карти

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

Мінімальний складський облік даних:

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

Колонки журналу

Форма замовлення повинна містити всю інформацію, необхідну для планування та виконання доставки. SEO-опис

Транспортна накладна

|- | Бекенд | K2 ERP на Python або PHP |- | База даних | PostgreSQL або MySQL |- | Фронтенд | HTML5, JavaScript |- | AJAX | Fetch API або Axios |- | UI-компоненти | DataTables, Select2 для автопошуку |- | Карти, опціонально | Google Maps API або OpenStreetMap для розрахунку відстаней |- | Друк | Stimulsoft Reports або внутрішній PDF-генератор |}

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

! Окремо варто відзначити який дає можливість створювати замовлення на перевезення, призначати машину й водія, контролювати статус доставки, розраховувати вартість перевезення, друкувати транспортну накладну і аналізувати рентабельність транспорту. {| class="wikitable" style="width:100%;"

Див. так само

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

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

Довідник «Транспортні засоби»

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

платформа повинна враховувати:

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

Формула розрахунку вартості

Журнал замовлень на перевезення відображає всі доставки та їхній поточний стан. При цьому користувач системи повинен мати можливість вибрати іншого водія, якщо це потрібно.== Основні об’єкти модуля == платформа повинна допомагати компанії контролювати весь бізнес-процес перевезення: від створення замовлення до завершення доставки, формування документів і аналізу витрат.

У результаті компонент має дозволяти:

Колонка Транспортна накладна та акт виконаних робіт
- Державний номер Реєстраційний номер транспортного засобу
Марка та модель як приклад, MAN, Mercedes-Benz, Ford, Renault
Тип кузова Тент, фургон, рефрижератор, бортовий, контейнеровоз тощо
Вантажопідйомність Максимальна вага вантажу
Власник транспорту компанія-користувач або підрядник
Стан Активний, на ремонті, недоступний
Примітки Додаткова інформаційні матеріали по машині

Водій не повинен бути зайнятий в іншому перевезенні на той самий період. Не можна завершити доставку, якщо машина й водій не були призначені. Поле

Такий компонент критично важливий для компаній із логістикою: служб доставки товарів, будівельних компаній, сервісних служб, складів, ТРЦ і транспортних агентств. Вартість = Відстань × Тариф за 1 км + Додаткові витрати

так само потрібно реалізувати автоматичний фільтр за вантажопідйомністю.== Критерії оцінювання ==


* дату та час перевезення;
* зайнятість машини в інших замовленнях;
* стан транспортного засобу;
* вантажопідйомність;
* тип кузова, якщо він важливий для доставки. Статус
|-
| Що потрібно створити? До додаткових витрат можуть належати:
! ! SEO-опис
== Розрахунок вартості перевезення ==
|-
| Реалізація журналу замовлень
| 20
| Список перевезень, пошук, фільтри, статуси, підсумки за період
|-
| Форма замовлення з вибором машини і водія
| 20
| AJAX-пошук замовника, адреси, доступні машини, фільтр вантажопідйомності, вибір водія
|-
| Логіка статусів доставки
| 20
| Нове, призначено, в дорозі, доставлено, скасовано; зміна через кнопки та AJAX
|-
| Розрахунок вартості перевезення
| 15
| Тариф за км, фіксована ціна, відстань, додаткові витрати, підсумкова сума
|-
| Друковані документи
| 15
| Транспортна накладна та акт виконаних робіт
|-
| формування звітів і аналітичні інструменти
| 10
| Перевезення за період, рентабельність транспорту, підсумки
|-
Опціонально можна використовувати Google Maps API або OpenStreetMap для пошуку адрес і розрахунку відстані. Звіт має показувати загальну картину виконаних перевезень за вибраний період. Стан
== Критичні помилки ==

платформа повинна пропонувати водія, який закріплений за обраною машиною, але так само має дозволяти вибрати іншого водія. Можливі правила:
== Акт виконаних робіт ==
|-
| Номер замовлення
| Унікальний номер перевезення
|-
| Дата створення
| Дата створення замовлення
|-
| Замовник
| Контрагент, який замовив перевезення
|-
| Пункт відправлення
| Адреса завантаження
|-
| Пункт призначення
| Адреса доставки
|-
| Дата та час завантаження
| Плановий або фактичний час завантаження
|-
| Дата та час доставки
| Плановий або фактичний час доставки
|-
| Машина
| Призначений транспортний засіб
|-
| Водій
| Призначений водій
|-
| Статус
| Нове, призначено, в дорозі, доставлено, скасовано
|-
| Вартість
| Розрахована сума перевезення
|}

== Стани транспортного засобу ==

Після вибору транспортного засобу платформа повинна пропонувати водія, який закріплений за машиною. SEO-опис

У журналі менеджер повинен оперативно бачити, які замовлення нові, які вже в дорозі, які завершені, а які скасовані. Це платформа керування доставкою: замовлення → маршрут → машина → водій → статус → витрати → документи → аналітичні інструменти. Транспортна накладна — це друкований документ, який супроводжує перевезення. Значення

Акт виконаних робіт формується після завершення доставки. ! | За фіксованим тарифом або за формулою: відстань × тариф за км + додаткові витрати
|-
| Які друковані документи потрібні?== Журнал «Замовлення на перевезення» ==

<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;">

* замовлень на доставку;
* автомобілів;
* водіїв;
* маршрутів;
* витрат на перевезення;
* статусів виконання доставки;
* друкованих документів;
* рентабельності транспорту. | Нове, призначено, в дорозі, доставлено, скасовано
|-
| Як розраховується вартість? компанія-користувач здійснює доставку товарів власним або залученим транспортом. __TOC__

У звіті потрібно відображати:
'''компонент керування транспортними перевезеннями (TMS)'''. | Повний цикл доставки зі статусами, документами й звітами
|}

{| class="wikitable" style="width:100%;"

* [[K2 Cloud ERP|K2 ERP]]
* [[K2 ERP]]
* [[Атестаційні завдання K2 ERP]]
* [[TMS]]
* [[Логістика]]
* [[Транспортна накладна]]
* [[Акт виконаних робіт]]
* [[OpenStreetMap]]
* [[Google Maps API]]
* [[Перевезення]]
* [[Рентабельність транспорту]]

== Форма створення замовлення на перевезення ==
! '''провідний принцип.''' TMS — це не без зусиль список машин і водіїв. ! Об’єкт

'''Коротко.''' Потрібно реалізувати TMS-модуль. | Замовлення на перевезення
|-
| Які статуси потрібні? TMS''' — це практична задача для перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля керування транспортними перевезеннями виступає ключовою рисою '''Атестаційне задача K2 ERP. Мінімальний складський облік даних:

{{DISPLAYTITLE:Атестаційні завдання K2 ERP/TMS}}

Рентабельність = (Доходи - Витрати) / Витрати × 100%

  • замовника;
  • номер замовлення;
  • маршрут;
  • дату виконання;
  • вартість перевезення;
  • додаткові витрати;
  • підсумкову суму;
  • реквізити сторін;
  • місце для підписів. Критичними помилками вважаються ситуації, коли:

SEO-опис

Звіт «Рентабельність транспорту»


У транспортній накладній потрібно виводити:

* очікування;
* навантаження;
* розвантаження;
* платні дороги;
* додаткові заїзди;
* інші витрати, пов’язані з перевезенням. | Перевезення за період і рентабельність транспорту


Що виступає як критичною вимогою? Критерій

# менеджер створює замовлення на перевезення;
# вказує замовника, пункт відправлення і пункт призначення;
# задає планову дату завантаження та доставки;
# платформа пропонує доступні транспортні засоби;
# менеджер обирає машину та водія;
# замовлення переходить у статус «Призначено»;
# водій або менеджер запускає доставку;
# замовлення переходить у статус «В дорозі»;
# після завершення доставки замовлення переходить у статус «Доставлено»;
# платформа формує транспортну накладну та акт виконаних робіт;
# інформаційні дані потрапляють у звіти по перевезеннях, витратах і рентабельності. Поле

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