Атестаційні завдання K2 ERP/Інтернет-магазин: відмінності між версіями
R (обговорення | внесок) Пененос з Гугл док. |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
== Рекомендовані сутності бази даних == | |||
== | Мета задача — створити в K2 ERP компонент інтернет-магазину, який надає можливість компанії продавати товари онлайн і паралельно з цим не відривати сайт від облікової системи.; Поле | ||
==== | <div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | ||
{| class="wikitable" style="width:100%;" | |||
Адміністративний інтерфейс повинен підтримувати керування товарами, категоріями, фото, залишками та замовленнями.; !; {| class="wikitable" style="width:100%;" | |||
== Акційні товари == | |||
Кошик повинен підтримувати: | |||
!; Після оформлення замовлення покупець має отримати підтвердження.;</div> | |||
== Довідник «Категорії товарів» == | |||
</div> | |||
Акційний товар має показувати основну ціну й акційну ціну.; характеристика | |||
== Кошик == | |||
== Імпорт товарів CSV або Excel == | |||
* номер замовлення; | |||
* покупця; | |||
* телефон; | |||
* суму; | |||
* спосіб оплати; | |||
* список товарів; | |||
* посилання на замовлення в адмінці.;== Email покупцю == | |||
!; !; !; !; Значення | |||
'''центральний принцип.''' Інтернет-магазин у K2 ERP — це не окрема “вітрина”, яка живе сама по собі.; Статус | |||
У межах атестації потрібно продемонструвати робочий сценарій.; * додавання товару; | |||
* редагування товару; | |||
* видалення товару; | |||
* зміна статусу товару; | |||
* керування категоріями; | |||
* додавання товару в кошик; | |||
* зміна кількості в кошику; | |||
* перерахунок суми кошика; | |||
* оформлення замовлення; | |||
* зміна статусу замовлення; | |||
* завантаження фото товарів.; {| class="wikitable" style="width:100%;" | |||
компонент має забезпечувати керування каталогом товарів.; 100 | |||
{| class="wikitable" style="width:100%;" | |||
=== | == Робота із залишками == | ||
{| class="wikitable" style="width:100%;" | |||
* | * виведення списку товарів за категоріями; | ||
* | * фільтрацію за ціною; | ||
* | * фільтрацію за наявністю; | ||
* | * фільтрацію за акційними пропозиціями; | ||
* | * пошук товарів по назві; | ||
* пошук товарів по коду або артикулу; | |||
* сортування за ціною; | |||
* сортування за назвою; | |||
* сортування за популярністю або датою додавання, якщо така логіка реалізована.; характеристика | |||
Категорії повинні підтримувати ієрархію.; | Оплата при отриманні та онлайн-оплата | |||
|- | |||
| Які платіжні системи можна використати?; Довідник товарів містить усі товари, які можуть продаватися через інтернет-магазин.; Для товарів потрібно реалізувати завантаження зображень через FilePond або аналогічний інструмент.; Відповідь | |||
|- | |||
| Назва товару | |||
| Основна назва товару | |||
|- | |||
| характеристика товару | |||
| HTML-опис через WYSIWYG-редактор | |||
|- | |||
| Код товару або артикул | |||
| Внутрішній код, SKU або артикул | |||
|- | |||
| Категорія | |||
| Категорія каталогу | |||
|- | |||
| Ціна | |||
| Основна ціна продажу | |||
|- | |||
| Акційна ціна | |||
| Опціональна знижена ціна | |||
|- | |||
| Залишок на складі | |||
| Доступна кількість товару | |||
|- | |||
| Статус товару | |||
| Активний або прихований | |||
|- | |||
| Прев’ю-зображення | |||
| Основне фото товару | |||
|- | |||
| Додаткові фото | |||
| Галерея зображень товару | |||
|- | |||
| SEO title | |||
| SEO-заголовок сторінки товару | |||
|- | |||
| SEO description | |||
| SEO-опис сторінки товару | |||
|- | |||
| URL | |||
| Адреса сторінки товару | |||
|} | |||
== Очікуваний результат == | |||
У результаті виконання атестаційного задача має бути створений компонент інтернет-магазину K2 ERP.;== Поля товару == | |||
|- | |||
| Що потрібно створити?; Менеджер у K2 ERP має бачити замовлення в адміністративній частині, контролювати статус, оплату, залишки, відправлення та історію змін.; Статус | |||
{| class="wikitable" style="width:100%;" | |||
|- | |||
| Бекенд | |||
| K2 ERP на Python або PHP | |||
|- | |||
| База даних | |||
| PostgreSQL або MySQL | |||
|- | |||
| Фронтенд | |||
| HTML5, JavaScript | |||
|- | |||
| AJAX | |||
| Fetch або Axios | |||
|- | |||
| UI-компоненти | |||
| DataTables, Select2, WYSIWYG-редактор для опису товару | |||
|- | |||
| Платіжні шлюзи | |||
| WayForPay, LiqPay або Stripe | |||
|- | |||
| Медіа | |||
| Завантаження зображень через FilePond або аналог | |||
|- | |||
| Імпорт | |||
| CSV або Excel | |||
|} | |||
== | {| class="wikitable" style="width:100%;" | ||
!; перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля онлайн-продажів забезпечується через '''Атестаційне задача K2 ERP — Інтернет-магазин''' — це практична задача; додатково реалізовано інтегрованого з ERP-системою.; У листі потрібно показати: | |||
== Коротко == | |||
Журнал замовлень повинен бути доступний в адміністративній частині K2 ERP.; характеристика | |||
* категорії товарів; | |||
* товари; | * товари; | ||
* фото товарів; | * фото товарів; | ||
| Рядок 64: | Рядок 165: | ||
* email-сповіщення; | * email-сповіщення; | ||
* імпорт товарів; | * імпорт товарів; | ||
* SEO-налаштування.; | * SEO-налаштування.; Після оформлення платформа повинна створити замовлення в адміністративній частині та надіслати підтвердження покупцю.; * основне фото; | ||
* додаткові фото; | |||
* видалення фото; | |||
* сортування фото; | |||
* прив’язку фото до товару; | |||
* прев’ю фото в адміністративній частині.; !; Це частина ERP: товар, ціна, залишок, замовлення, оплата, замовник і складський облік мають бути пов’язані в одній системі.; Якщо товар продано, платформа повинна відобразити це у складському обліку.; !; Покупець повинен чітко бачити, що товар продається зі знижкою.; | WayForPay, LiqPay, Stripe або іншу платіжну систему | |||
|- | |||
| Що має бути в адмінці?; Потрібно реалізувати завантаження великої кількості товарів через CSV або Excel.;<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
!; Разом | |||
== Оформлення замовлення == | |||
!; характеристика | |||
== Реальний бізнес-контекст == | |||
'''Критично.''' Прихований або архівний товар не повинен бути доступний для покупки.;== Фронтенд магазину для покупців == | |||
Медіаблок має підтримувати: | |||
Товар повинен мати не лише назву й ціну, а й характеристика, артикул, фото, статус, залишок, SEO-поля та зв’язок із категоріями.; Призначення | |||
* фото з можливістю збільшення; | * фото з можливістю збільшення; | ||
* додаткові фото; | |||
* назву товару; | * назву товару; | ||
* артикул або код; | |||
* характеристика; | * характеристика; | ||
* ціну; | * ціну; | ||
* кнопку '''«Додати у кошик»'''.; * | * акційну ціну, якщо вона є собою; | ||
* | * наявність; | ||
* | * кнопку '''«Додати у кошик»'''; | ||
* | * пов’язані або рекомендовані товари, опціонально.; !; | Каталог, сторінку товару, кошик і форму оформлення замовлення | ||
* | |- | ||
* | | Які способи оплати потрібні?; Товар без залишку не повинен продаватися, якщо в системі не дозволено продаж “під замовлення”.; | Товари, категорії, замовлення, статуси, платежі, імпорт і залишки | ||
** | |- | ||
* | | Що має працювати через AJAX?; Поле | ||
== Примітка == | |||
!; Максимальна оцінка | |||
|- | |||
| Реалізація довідника товарів і категорій | |||
| 20 | |||
| Категорії, товари, ціни, акції, фото, SEO, статуси | |||
|- | |||
| Робота кошика і оформлення замовлення | |||
| 20 | |||
| Додавання товарів, зміна кількості, перерахунок сум, форма замовлення | |||
|- | |||
| інтеграційні функціональні можливості з платіжною системою | |||
| 20 | |||
| Онлайн-оплата, статус платежу, зв’язок платежу із замовленням | |||
|- | |||
| Журнал замовлень і керування статусами | |||
| 20 | |||
| Адмінка, фільтри, деталі замовлення, статуси, історичний розвиток змін | |||
|- | |||
| Інтерактивність через AJAX | |||
| 10 | |||
| Каталог, кошик, адмінка, товари, категорії, замовлення без перезавантаження | |||
|- | |||
| Збереження структури і логіки бізнес-процесів | |||
| 10 | |||
| Зв’язок магазину зі складом, залишками, оплатами, покупцями й статусами | |||
|- | |||
== Статуси платежу == | |||
Сторінка товару повинна містити всю інформацію, необхідну для прийняття рішення для бізнесу про покупку.;== Поля категорії товарів == | |||
|- | |||
| Номер замовлення | |||
| Унікальний номер замовлення | |||
|- | |||
| Дата замовлення | |||
| Дата й час оформлення | |||
|- | |||
| Покупець | |||
| Ім’я покупця або клієнта | |||
|- | |||
| Телефон | |||
| Контактний номер покупця | |||
|- | |||
| Email | |||
| Email покупця | |||
|- | |||
| Сума | |||
| Загальна сума замовлення | |||
|- | |||
| Статус | |||
| Нове, в обробці, відправлено, завершено, скасовано | |||
|- | |||
| Тип оплати | |||
| Оплата при отриманні або онлайн | |||
|- | |||
| Статус платежу | |||
| Очікує оплати, оплачено, помилка, повернено | |||
|} | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
!; Питання | |||
== Довідник «Товари» == | |||
платформа повинна дозволяти: | |||
* перелік товарів у кошику; | |||
* кількість кожного товару; | |||
* ціну товару; | |||
* суму по кожному рядку; | |||
* загальну суму замовлення; | |||
* можливість змінити кількість товару; | |||
* можливість видалити товар із кошика; | |||
* автоматичний перерахунок загальної суми; | |||
* кнопку '''«Оформити замовлення»'''.; |- | |||
| Категорії товарів | |||
| Ієрархія каталогу інтернет-магазину | |||
|- | |||
| Товари | |||
| Основні одиниці продажу | |||
|- | |||
| Фото товарів | |||
| Прев’ю та додаткові зображення товару | |||
|- | |||
| Залишки товарів | |||
| інформаційні дані про доступну кількість товару на складах | |||
|- | |||
| Склади | |||
| Місця зберігання товарів | |||
|- | |||
| Кошик | |||
| Тимчасовий список товарів, які покупець хоче придбати | |||
|- | |||
| Рядки кошика | |||
| Конкретні товари, кількість і суми в кошику | |||
|- | |||
| Замовлення | |||
| ключовий документ онлайн-продажу | |||
|- | |||
| Рядки замовлення | |||
| Товари, кількість, ціни й суми в замовленні | |||
|- | |||
| Покупці | |||
| інформаційні дані клієнтів, які оформили замовлення | |||
|- | |||
| Способи оплати | |||
| Оплата при отриманні, онлайн-оплата та інші варіанти | |||
|- | |||
| Платежі | |||
| інформаційні дані про оплату замовлення | |||
|- | |||
| Статуси замовлень | |||
| Поточний стан обробки замовлення | |||
|- | |||
| Email-сповіщення | |||
| Повідомлення покупцям і співробітникам | |||
|- | |||
| Імпорт товарів | |||
| Масове завантаження товарів із CSV або Excel | |||
|- | |||
| SEO-налаштування | |||
| URL, Title, Description для категорій і товарів | |||
|} | |||
'''Умова складання.''' задача не має змогу бути зараховане, якщо платформа не надає можливість пройти базовий цикл онлайн-продажу: товар → кошик → оформлення замовлення → оплата → зміна статусу → списання залишку → журнал замовлень.; !; Журнал замовлень має підтримувати: | |||
== Основні об’єкти модуля == | |||
Інтернет-магазин є собою важливим модулем для багатьох бізнесів незалежно від розміру компанії.;<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;"> | |||
'''істотно.''' Кількість у кошику не повинна перевищувати доступний залишок, якщо продаж понад залишок не дозволений правилами магазину.; * відображати залишки в реальному часі; | |||
* не дозволяти купити товар у кількості, більшій за доступний залишок; | |||
* автономно зменшувати залишок товару після покупки або після підтвердження замовлення — залежно від налаштувань; | |||
* показувати статус '''«Немає в наявності»'''; | |||
* підтримувати окремі склади, якщо магазин функціонує з кількома складами.;</div> | |||
'''Правильна логіка.''' Замовлення в інтернет-магазині має впливати на обліковий облік залишків.; Критерій | |||
[[Категорія:Атестаційні завдання K2]] | |||
Потрібно реалізувати: | |||
{| class="wikitable" style="width:100%;" | |||
== ключовий бізнес-процес == | |||
!; !; Категоріями потрібно керувати без перезавантаження сторінки.;</div> | |||
|} | |||
== Колонки журналу замовлень == | |||
Форма оформлення замовлення повинна містити контактні інформаційні дані покупця, адресу доставки, коментар і спосіб оплати.; * створення категорій; | |||
* редагування категорій; | |||
* зміну батьківської категорії; | |||
* сортування; | |||
* приховування категорій; | |||
* керування SEO-полями категорії.; завдяки наявності Такий компонент користувачі можуть компаніям вийти в онлайн-продажі без залучення сторонніх платформ і паралельно з цим зберегти зв’язок із внутрішнім обліком, складом, оплатами та клієнтською базою.;== Деталі замовлення == | |||
== Назва задача == | |||
* назву товару; | |||
* артикул; | |||
* категорію; | |||
* характеристика; | |||
* ціну; | |||
* акційну ціну; | |||
* залишок; | |||
* статус; | |||
* SEO-поля; | |||
* посилання або назву фото, якщо це передбачено форматом.; Бали | |||
* неможливо створити товар; | |||
* товар не відображається в каталозі; | |||
* неможливо додати товар у кошик; | |||
* сума кошика розраховується неправильно; | |||
* неможливо оформити замовлення; | |||
* замовлення не потрапляє в адміністративну частину; | |||
* статус замовлення не змінюється; | |||
* оплата не пов’язується із замовленням; | |||
* після успішної оплати статус не оновлюється; | |||
* залишки не зменшуються після покупки; | |||
* можна купити товар у кількості, більшій за доступний залишок, якщо це не дозволено правилами; | |||
* покупець не отримує підтвердження; | |||
* співробітники не бачать нового замовлення; | |||
* імпорт товарів спотворює інформаційні дані або створює дублікати без контролю.; Поле | |||
!; Каталог товарів повинен підтримувати: | |||
!;== Каталог товарів == | |||
[[Категорія:Онлайн-оплата]] | |||
* Електроніка; | |||
* Електроніка → Ноутбуки; | |||
* Електроніка → Смартфони; | |||
* Одяг → Чоловічий одяг; | |||
* Одяг → Жіночий одяг.; характеристика | |||
Платіж має бути пов’язаний із замовленням, сумою, способом оплати, датою, статусом і відповіддю платіжної системи.; організація хоче продавати товари через власний сайт, не використовуючи сторонні маркетплейси або окремі SaaS-платформи.;== Функціональність журналу замовлень == | |||
Ключові дії мають виконуватися без зайвого перезавантаження сторінок.; | компонент інтернет-магазину | |||
|- | |||
| Які довідники потрібні?; Бали | |||
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;"> | |||
[[Категорія:K2 ERP]] | |||
|- | |||
| Нове | |||
| Замовлення щойно створено | |||
|- | |||
| В обробці | |||
| Менеджер прийняв замовлення в роботу | |||
|- | |||
| Відправлено | |||
| Замовлення передано на доставку | |||
|- | |||
| Завершено | |||
| Замовлення виконано | |||
|- | |||
| Скасовано | |||
| Замовлення скасовано | |||
|} | |||
== Практичне задача == | |||
Адміністративний інтерфейс має підтримувати: | |||
* фільтрацію за статусом; | * фільтрацію за статусом; | ||
* фільтрацію за періодом; | * фільтрацію за періодом; | ||
* фільтрацію за типом оплати; | |||
* фільтрацію за статусом платежу; | |||
* пошук за номером замовлення; | |||
* пошук за телефоном або email покупця; | |||
* перегляд деталей замовлення; | * перегляд деталей замовлення; | ||
* зміну статусу замовлення.;==== | * зміну статусу замовлення; | ||
{| class="wikitable" | * перегляд історії зміни статусів; | ||
* експорт списку замовлень, якщо потрібно.; Типовий бізнес-процес роботи інтернет-магазину виглядає так: | |||
== Медіафайли товарів == | |||
</div> | |||
компонент має підтримувати каталог товарів і категорій, сторінки товарів, кошик, оформлення замовлення, онлайн-оплату, журнал замовлень, керування статусами, email-сповіщення, обліковий облік залишків, акційні товари, імпорт CSV/Excel та AJAX-адміністрування.;== Технічні вимоги == | |||
[[Категорія:Каталог товарів]] | |||
'''компонент Інтернет-магазин: керування товарами, кошиком, замовленнями та оплатою'''.; Статус | |||
Для реалізації задачі доцільно передбачити такі сутності: | |||
Критичними помилками вважаються ситуації, коли: | |||
|- | |||
| Оплата при отриманні | |||
| Покупець оплачує товар під час отримання | |||
|- | |||
| Оплата онлайн | |||
| Покупець оплачує замовлення через платіжну систему | |||
|} | |||
!; характеристика | |||
Потрібно передбачити щонайменше два способи оплати: | |||
Інтернет-магазин має бути пов’язаний зі складським обліком.; Параметр | |||
|- | |||
| Очікує оплати | |||
| Замовлення створене, але оплата ще не проведена | |||
|- | |||
| Оплачено | |||
| Платіж успішно підтверджено платіжною системою | |||
|- | |||
| Помилка оплати | |||
| Платіж не пройшов | |||
|- | |||
| Повернено | |||
| Оплату повернуто покупцю | |||
|} | |||
== Див.; додатково == | |||
== Журнал замовлень в адміністративній частині == | |||
Довідник категорій товарів потрібен для побудови каталогу інтернет-магазину.;== Поля форми замовлення == | |||
Потрібно реалізувати email-сповіщення.;== Критерії оцінювання == | |||
!; платформа повинна: | |||
Імпорт має підтримувати: | |||
!; Фронтенд магазину — це публічна частина, яку бачить покупець.; Потрібно передбачити окрему категорію або фільтр '''«Акції»''' для товарів з акційною ціною.; {| class="wikitable" style="width:100%;" | |||
!; характеристика | |||
У листі потрібно показати: | |||
# створити категорію товарів; | |||
# створити товар із ціною, описом, фото й залишком; | |||
# створити акційний товар; | |||
# перевірити відображення товару в каталозі; | |||
# відкрити сторінку товару; | |||
# додати товар у кошик; | |||
# змінити кількість у кошику; | |||
# перевірити автоматичний перерахунок суми; | |||
# оформити замовлення; | |||
# обрати спосіб оплати; | |||
# перевірити створення замовлення в адмінці; | |||
# виконати або змоделювати онлайн-оплату; | |||
# перевірити автоматичну зміну статусу платежу; | |||
# перевірити зміну статусу замовлення; | |||
# перевірити зменшення залишку товару; | |||
# отримати email-підтвердження покупцю; | |||
# отримати email-сповіщення співробітнику; | |||
# імпортувати товари з CSV або Excel; | |||
# змінити товар через AJAX-адмінку; | |||
# показати журнал замовлень із фільтрами.; Спосіб оплати | |||
# адміністратор створює категорії товарів; | |||
# додає товари, фото, ціни, описи та SEO-поля; | |||
# платформа показує товари на сайті; | |||
# покупець відкриває каталог або сторінку товару; | |||
# додає товар у кошик; | |||
# змінює кількість товарів у кошику; | |||
# переходить до оформлення замовлення; | |||
# вводить контактні інформаційні дані та адресу доставки; | |||
# обирає спосіб оплати; | |||
# платформа створює замовлення; | |||
# покупець отримує email-підтвердження; | |||
# співробітники отримують повідомлення про нове замовлення; | |||
# після успішної оплати статус змінюється автономно; | |||
# товар списується із залишків згідно з правилами обліку; | |||
# менеджер обробляє, відправляє та завершує замовлення.; | Категорії товарів і товари | |||
|- | |||
| Що має бачити покупець?;== Статуси замовлення == | |||
|- | |||
| Активний | |||
| Товар доступний у каталозі | |||
|- | |||
| Прихований | |||
| Товар не показується покупцям, але зберігається в системі | |||
|- | |||
| Немає в наявності | |||
| Товар можна показувати, але не можна купити | |||
|- | |||
| Архівний | |||
| Товар більше не продається | |||
|} | |||
!;[[Категорія:Інтернет-магазин]] | |||
== Мета задача == | |||
* додавання товарів через AJAX; | |||
* редагування товарів через AJAX; | |||
* видалення товарів через AJAX; | |||
* завантаження фото товарів; | |||
* редагування опису через WYSIWYG-редактор; | |||
* зміну ціни; | |||
* зміну акційної ціни; | |||
* зміну статусу товару; | |||
* керування SEO-полями.; Об’єкт | |||
У картці замовлення потрібно показати: | |||
* вести каталог товарів; | |||
* керувати категоріями; | |||
* створювати сторінки товарів; | |||
* завантажувати фото й медіафайли; | |||
* показувати залишки товарів; | |||
* додавати товари в кошик; | |||
* оформлювати замовлення; | |||
* приймати оплату онлайн або при отриманні; | |||
* автономно змінювати статус замовлення після оплати; | |||
* зменшувати залишки після покупки; | |||
* повідомляти покупця та співробітників про нове замовлення; | |||
* керувати товарами, категоріями й замовленнями з адміністративної частини; | |||
* завантажувати велику кількість товарів через CSV або Excel.; Після успішної оплати платформа повинна автономно змінювати статус замовлення.; Значення | |||
Потрібно реалізувати підключення до однієї з популярних платіжних платформ: | Потрібно реалізувати підключення до однієї з популярних платіжних платформ: | ||
== | |||
!; * номер замовлення; | |||
* дату; | |||
* список товарів; | |||
* суму; | |||
* спосіб оплати; | |||
* адресу доставки; | |||
* контактну інформацію магазину.;== Email-сповіщення == | |||
|- | |- | ||
| | | 90–100 | ||
| | | Відмінно | ||
| Інтернет-магазин в цілому функціонує: каталог, кошик, замовлення, оплата, залишки, адмінка, імпорт і сповіщення реалізовані коректно | |||
|- | |- | ||
| | | 75–89 | ||
| | | Добре | ||
| Основна логіка функціонує, є собою незначні недоліки, які не руйнують бізнес-процес продажу | |||
|- | |- | ||
| | | 60–74 | ||
| | | Зараховано | ||
| Базовий сценарій функціонує, але частина функцій реалізована неповно або потребує доопрацювання | |||
|- | |- | ||
| | | 0–59 | ||
| | | Не зараховано | ||
| Відсутня критична логіка: каталог, кошик, замовлення, оплата, залишки або журнал замовлень | |||
|} | |||
Менеджер має бачити всі замовлення, їхні статуси, покупців, суми, спосіб оплати та поточний етап обробки.; * WayForPay; | |||
* LiqPay; | |||
* Stripe; | |||
* інша платіжна платформа.; Окремо варто відзначити категоріями, кошиком, оформленням замовлень, онлайн-оплатою, залишками, медіафайлами, email-сповіщеннями і адміністративним інтерфейсом.; '''Коротко.''' Потрібно реалізувати інтернет-магазин на базі K2 ERP: каталог товарів, сторінку товару, кошик, оформлення замовлення, оплату, журнал замовлень, зміну статусів, списання залишків і адміністративне керування товарами.; Значення | |||
[[Категорія:Складський облік]] | |||
|- | |- | ||
| | | Ім’я та прізвище покупця | ||
| | | Хто оформлює замовлення | ||
|- | |- | ||
| | | Телефон | ||
| | | ключовий контактний номер | ||
|- | |||
| Email | |||
| Email для підтвердження замовлення | |||
|- | |||
| Адреса доставки | |||
| Куди потрібно доставити товар | |||
|- | |||
| Коментар до замовлення | |||
| Додаткова відомості від покупця | |||
|- | |||
| Спосіб оплати | |||
| Оплата при отриманні або онлайн | |||
|} | |} | ||
Покупець повинен зайти на сайт, знайти товар у каталозі, переглянути картку товару, додати позиції в кошик, оформити замовлення, обрати спосіб оплати та отримати підтвердження.; Колонка | |||
! | Співробітники магазину повинні отримати повідомлення про нове замовлення.; !; {| class="wikitable" style="width:100%;" | ||
== | !; | Товари, категорії, кошик, замовлення, зміна статусів і завантаження фото | ||
|- | |||
| Що є собою критичною вимогою?; Що перевіряється | |||
== Шкала оцінювання == | |||
|- | |- | ||
| | | Назва категорії | ||
| | | Назва, яку бачить покупець | ||
|- | |- | ||
| | | Батьківська категорія | ||
| | | Для побудови ієрархії каталогу | ||
|- | |- | ||
| | | Сортування | ||
| | | Порядок показу категорій | ||
|- | |- | ||
| | | URL | ||
| | | Частина адреси категорії | ||
|- | |- | ||
| | | Title | ||
| | | SEO-заголовок категорії | ||
|- | |- | ||
| | | Description | ||
| | | SEO-опис категорії | ||
|- | |- | ||
| Статус | |||
| Активна або прихована | |||
|} | |} | ||
{| class="wikitable" style="width:100%;" | |||
На сторінці товару потрібно показати: | |||
[[Категорія:Корпоративна Wiki]] | |||
== Сторінка товару == | |||
{| class="wikitable" style="width:100%;" | |||
== Керування категоріями == | |||
!; {| class="wikitable" style="width:100%;" | |||
!;== AJAX-інтерактив == | |||
== Адміністративний інтерфейс == | |||
Мінімальний сценарій: | |||
!; Вона повинна бути простою, зрозумілою та швидкою: каталог, фільтри, пошук, сторінка товару, кошик і оформлення замовлення.; як ілюстрація: | |||
Перед імпортом платформа повинна перевіряти файл і показувати помилки.; Рівень | |||
__TOC__ | |||
* інформаційні дані покупця; | |||
* адресу доставки; | |||
* спосіб оплати; | |||
* статус платежу; | |||
* список товарів; | |||
* кількість; | |||
* ціни; | |||
* суми; | |||
* загальну суму; | |||
* коментар покупця; | |||
* історію зміни статусів.;{{DISPLAYTITLE:Атестаційні завдання K2 ERP/Інтернет-магазин}} | |||
== інтеграційні функціональні можливості з платіжною системою == | |||
!; | Повний цикл онлайн-продажу з оплатою, статусами й залишками | |||
|} | |||
! | |||
== Керування товарами == | |||
* [[K2 Cloud ERP|K2 ERP]] | * [[K2 Cloud ERP|K2 ERP]] | ||
* [[K2 ERP]] | |||
* [[Атестаційні завдання K2 ERP]] | * [[Атестаційні завдання K2 ERP]] | ||
* [[Інтернет-магазин]] | * [[Інтернет-магазин]] | ||
| Рядок 191: | Рядок 698: | ||
* [[Stripe]] | * [[Stripe]] | ||
* [[Складський облік]] | * [[Складський облік]] | ||
* [[Залишки товарів]] | |||
* [[CSV]] | |||
* [[Excel-імпорт]] | |||
== Способи оплати == | |||
Через AJAX мають працювати: | |||
== Статуси товару == | |||
</div> | |||
== Критичні помилки == | |||
== Email співробітникам == | |||
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;"> | |||
Поточна версія на 18:28, 1 травня 2026
Рекомендовані сутності бази даних
Мета задача — створити в K2 ERP компонент інтернет-магазину, який надає можливість компанії продавати товари онлайн і паралельно з цим не відривати сайт від облікової системи.; Поле
Акційні товари
Кошик повинен підтримувати:
; Після оформлення замовлення покупець має отримати підтвердження.;
Довідник «Категорії товарів»Акційний товар має показувати основну ціну й акційну ціну.; характеристика КошикІмпорт товарів CSV або Excel
|
; !; !; !; Значення
центральний принцип. Інтернет-магазин у K2 ERP — це не окрема “вітрина”, яка живе сама по собі.; Статус У межах атестації потрібно продемонструвати робочий сценарій.; * додавання товару;
компонент має забезпечувати керування каталогом товарів.; 100 Робота із залишками
Очікуваний результатУ результаті виконання атестаційного задача має бути створений компонент інтернет-магазину K2 ERP.;== Поля товару == | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Що потрібно створити?; Менеджер у K2 ERP має бачити замовлення в адміністративній частині, контролювати статус, оплату, залишки, відправлення та історію змін.; Статус
Статуси платежуСторінка товару повинна містити всю інформацію, необхідну для прийняття рішення для бізнесу про покупку.;== Поля категорії товарів ==
|
; Питання
Довідник «Товари»платформа повинна дозволяти:
|
Категорії товарів | Ієрархія каталогу інтернет-магазину | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Товари | Основні одиниці продажу | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Фото товарів | Прев’ю та додаткові зображення товару | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Залишки товарів | інформаційні дані про доступну кількість товару на складах | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Склади | Місця зберігання товарів | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Кошик | Тимчасовий список товарів, які покупець хоче придбати | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Рядки кошика | Конкретні товари, кількість і суми в кошику | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Замовлення | ключовий документ онлайн-продажу | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Рядки замовлення | Товари, кількість, ціни й суми в замовленні | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Покупці | інформаційні дані клієнтів, які оформили замовлення | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Способи оплати | Оплата при отриманні, онлайн-оплата та інші варіанти | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Платежі | інформаційні дані про оплату замовлення | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Статуси замовлень | Поточний стан обробки замовлення | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Email-сповіщення | Повідомлення покупцям і співробітникам | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Імпорт товарів | Масове завантаження товарів із CSV або Excel | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SEO-налаштування | URL, Title, Description для категорій і товарів |
Умова складання. задача не має змогу бути зараховане, якщо платформа не надає можливість пройти базовий цикл онлайн-продажу: товар → кошик → оформлення замовлення → оплата → зміна статусу → списання залишку → журнал замовлень.; !; Журнал замовлень має підтримувати:
Основні об’єкти модуля
істотно. Кількість у кошику не повинна перевищувати доступний залишок, якщо продаж понад залишок не дозволений правилами магазину.; * відображати залишки в реальному часі;
- не дозволяти купити товар у кількості, більшій за доступний залишок;
- автономно зменшувати залишок товару після покупки або після підтвердження замовлення — залежно від налаштувань;
- показувати статус «Немає в наявності»;
- підтримувати окремі склади, якщо магазин функціонує з кількома складами.;
Правильна логіка. Замовлення в інтернет-магазині має впливати на обліковий облік залишків.; Критерій
Потрібно реалізувати:
ключовий бізнес-процес
| ; !; Категоріями потрібно керувати без перезавантаження сторінки.; |
|---|
Колонки журналу замовлень
Форма оформлення замовлення повинна містити контактні інформаційні дані покупця, адресу доставки, коментар і спосіб оплати.; * створення категорій;
- редагування категорій;
- зміну батьківської категорії;
- сортування;
- приховування категорій;
- керування SEO-полями категорії.; завдяки наявності Такий компонент користувачі можуть компаніям вийти в онлайн-продажі без залучення сторонніх платформ і паралельно з цим зберегти зв’язок із внутрішнім обліком, складом, оплатами та клієнтською базою.;== Деталі замовлення ==
Назва задача
- назву товару;
- артикул;
- категорію;
- характеристика;
- ціну;
- акційну ціну;
- залишок;
- статус;
- SEO-поля;
- посилання або назву фото, якщо це передбачено форматом.; Бали
- неможливо створити товар;
- товар не відображається в каталозі;
- неможливо додати товар у кошик;
- сума кошика розраховується неправильно;
- неможливо оформити замовлення;
- замовлення не потрапляє в адміністративну частину;
- статус замовлення не змінюється;
- оплата не пов’язується із замовленням;
- після успішної оплати статус не оновлюється;
- залишки не зменшуються після покупки;
- можна купити товар у кількості, більшій за доступний залишок, якщо це не дозволено правилами;
- покупець не отримує підтвердження;
- співробітники не бачать нового замовлення;
- імпорт товарів спотворює інформаційні дані або створює дублікати без контролю.; Поле
- Електроніка;
- Електроніка → Ноутбуки;
- Електроніка → Смартфони;
- Одяг → Чоловічий одяг;
- Одяг → Жіночий одяг.; характеристика
Платіж має бути пов’язаний із замовленням, сумою, способом оплати, датою, статусом і відповіддю платіжної системи.; організація хоче продавати товари через власний сайт, не використовуючи сторонні маркетплейси або окремі SaaS-платформи.;== Функціональність журналу замовлень == Ключові дії мають виконуватися без зайвого перезавантаження сторінок.; | компонент інтернет-магазину
Які довідники потрібні?; БалиПрактичне задача
Адміністративний інтерфейс має підтримувати:
- фільтрацію за статусом;
- фільтрацію за періодом;
- фільтрацію за типом оплати;
- фільтрацію за статусом платежу;
- пошук за номером замовлення;
- пошук за телефоном або email покупця;
- перегляд деталей замовлення;
- зміну статусу замовлення;
- перегляд історії зміни статусів;
- експорт списку замовлень, якщо потрібно.; Типовий бізнес-процес роботи інтернет-магазину виглядає так:
Медіафайли товарів
компонент має підтримувати каталог товарів і категорій, сторінки товарів, кошик, оформлення замовлення, онлайн-оплату, журнал замовлень, керування статусами, email-сповіщення, обліковий облік залишків, акційні товари, імпорт CSV/Excel та AJAX-адміністрування.;== Технічні вимоги == компонент Інтернет-магазин: керування товарами, кошиком, замовленнями та оплатою.; Статус Для реалізації задачі доцільно передбачити такі сутності: Критичними помилками вважаються ситуації, коли: |- | Оплата при отриманні | Покупець оплачує товар під час отримання |- | Оплата онлайн | Покупець оплачує замовлення через платіжну систему |}
!; характеристика
Потрібно передбачити щонайменше два способи оплати:
Інтернет-магазин має бути пов’язаний зі складським обліком.; Параметр |- | Очікує оплати | Замовлення створене, але оплата ще не проведена |- | Оплачено | Платіж успішно підтверджено платіжною системою |- | Помилка оплати | Платіж не пройшов |- | Повернено | Оплату повернуто покупцю |}
Див.; додатково
Журнал замовлень в адміністративній частині
Довідник категорій товарів потрібен для побудови каталогу інтернет-магазину.;== Поля форми замовлення ==
Потрібно реалізувати email-сповіщення.;== Критерії оцінювання ==
!; платформа повинна:
Імпорт має підтримувати:
!; Фронтенд магазину — це публічна частина, яку бачить покупець.; Потрібно передбачити окрему категорію або фільтр «Акції» для товарів з акційною ціною.; {| class="wikitable" style="width:100%;" !; характеристика
У листі потрібно показати:
- створити категорію товарів;
- створити товар із ціною, описом, фото й залишком;
- створити акційний товар;
- перевірити відображення товару в каталозі;
- відкрити сторінку товару;
- додати товар у кошик;
- змінити кількість у кошику;
- перевірити автоматичний перерахунок суми;
- оформити замовлення;
- обрати спосіб оплати;
- перевірити створення замовлення в адмінці;
- виконати або змоделювати онлайн-оплату;
- перевірити автоматичну зміну статусу платежу;
- перевірити зміну статусу замовлення;
- перевірити зменшення залишку товару;
- отримати email-підтвердження покупцю;
- отримати email-сповіщення співробітнику;
- імпортувати товари з CSV або Excel;
- змінити товар через AJAX-адмінку;
- показати журнал замовлень із фільтрами.; Спосіб оплати
- адміністратор створює категорії товарів;
- додає товари, фото, ціни, описи та SEO-поля;
- платформа показує товари на сайті;
- покупець відкриває каталог або сторінку товару;
- додає товар у кошик;
- змінює кількість товарів у кошику;
- переходить до оформлення замовлення;
- вводить контактні інформаційні дані та адресу доставки;
- обирає спосіб оплати;
- платформа створює замовлення;
- покупець отримує email-підтвердження;
- співробітники отримують повідомлення про нове замовлення;
- після успішної оплати статус змінюється автономно;
- товар списується із залишків згідно з правилами обліку;
- менеджер обробляє, відправляє та завершує замовлення.; | Категорії товарів і товари
|- | Що має бачити покупець?;== Статуси замовлення == |- | Активний | Товар доступний у каталозі |- | Прихований | Товар не показується покупцям, але зберігається в системі |- | Немає в наявності | Товар можна показувати, але не можна купити |- | Архівний | Товар більше не продається |}
!;
Мета задача
- додавання товарів через AJAX;
- редагування товарів через AJAX;
- видалення товарів через AJAX;
- завантаження фото товарів;
- редагування опису через WYSIWYG-редактор;
- зміну ціни;
- зміну акційної ціни;
- зміну статусу товару;
- керування SEO-полями.; Об’єкт
У картці замовлення потрібно показати:
- вести каталог товарів;
- керувати категоріями;
- створювати сторінки товарів;
- завантажувати фото й медіафайли;
- показувати залишки товарів;
- додавати товари в кошик;
- оформлювати замовлення;
- приймати оплату онлайн або при отриманні;
- автономно змінювати статус замовлення після оплати;
- зменшувати залишки після покупки;
- повідомляти покупця та співробітників про нове замовлення;
- керувати товарами, категоріями й замовленнями з адміністративної частини;
- завантажувати велику кількість товарів через CSV або Excel.; Після успішної оплати платформа повинна автономно змінювати статус замовлення.; Значення
Потрібно реалізувати підключення до однієї з популярних платіжних платформ:
!; * номер замовлення;
- дату;
- список товарів;
- суму;
- спосіб оплати;
- адресу доставки;
- контактну інформацію магазину.;== Email-сповіщення ==
|- | 90–100 | Відмінно | Інтернет-магазин в цілому функціонує: каталог, кошик, замовлення, оплата, залишки, адмінка, імпорт і сповіщення реалізовані коректно |- | 75–89 | Добре | Основна логіка функціонує, є собою незначні недоліки, які не руйнують бізнес-процес продажу |- | 60–74 | Зараховано | Базовий сценарій функціонує, але частина функцій реалізована неповно або потребує доопрацювання |- | 0–59 | Не зараховано | Відсутня критична логіка: каталог, кошик, замовлення, оплата, залишки або журнал замовлень |}
Менеджер має бачити всі замовлення, їхні статуси, покупців, суми, спосіб оплати та поточний етап обробки.; * WayForPay;
- LiqPay;
- Stripe;
- інша платіжна платформа.; Окремо варто відзначити категоріями, кошиком, оформленням замовлень, онлайн-оплатою, залишками, медіафайлами, email-сповіщеннями і адміністративним інтерфейсом.; Коротко. Потрібно реалізувати інтернет-магазин на базі K2 ERP: каталог товарів, сторінку товару, кошик, оформлення замовлення, оплату, журнал замовлень, зміну статусів, списання залишків і адміністративне керування товарами.; Значення
|- | Ім’я та прізвище покупця | Хто оформлює замовлення |- | Телефон | ключовий контактний номер |- | Email | Email для підтвердження замовлення |- | Адреса доставки | Куди потрібно доставити товар |- | Коментар до замовлення | Додаткова відомості від покупця |- | Спосіб оплати | Оплата при отриманні або онлайн |}
Покупець повинен зайти на сайт, знайти товар у каталозі, переглянути картку товару, додати позиції в кошик, оформити замовлення, обрати спосіб оплати та отримати підтвердження.; Колонка
Співробітники магазину повинні отримати повідомлення про нове замовлення.; !; {| class="wikitable" style="width:100%;" !; | Товари, категорії, кошик, замовлення, зміна статусів і завантаження фото |- | Що є собою критичною вимогою?; Що перевіряється
Шкала оцінювання
|- | Назва категорії | Назва, яку бачить покупець |- | Батьківська категорія | Для побудови ієрархії каталогу |- | Сортування | Порядок показу категорій |- | URL | Частина адреси категорії |- | Title | SEO-заголовок категорії |- | Description | SEO-опис категорії |- | Статус | Активна або прихована |}
На сторінці товару потрібно показати:Сторінка товару
Керування категоріями
| class="wikitable" style="width:100%;" | ;== AJAX-інтерактив ==
Адміністративний інтерфейсМінімальний сценарій: |
; Вона повинна бути простою, зрозумілою та швидкою: каталог, фільтри, пошук, сторінка товару, кошик і оформлення замовлення.; як ілюстрація:
Перед імпортом платформа повинна перевіряти файл і показувати помилки.; Рівень
інтеграційні функціональні можливості з платіжною системою |
Повний цикл онлайн-продажу з оплатою, статусами й залишками |
|---|
Керування товарами
- K2 ERP
- K2 ERP
- Атестаційні завдання K2 ERP
- Інтернет-магазин
- Каталог товарів
- Кошик
- Онлайн-оплата
- WayForPay
- LiqPay
- Stripe
- Складський облік
- Залишки товарів
- CSV
- Excel-імпорт
Способи оплати
Через AJAX мають працювати: