Атестаційні завдання K2 ERP/Продаж запчастин на авто: відмінності між версіями

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


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


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


* новими та б/в запчастинами;
У продажу можуть бути:
* оригінальними запчастинами та аналогами;
* працює з роздрібними покупцями і корпоративними клієнтами;
* має фізичний склад і планує онлайн-продаж.


Потрібно:
* нові запчастини;
* б/в запчастини;
* відновлені запчастини;
* оригінальні деталі;
* аналоги;
* витратні матеріали;
* аксесуари;
* кузовні елементи;
* електроніка;
* деталі двигуна, ходової, гальмівної системи та салону.


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


== Основні завдання ==
== Основний бізнес-процес ==


=== 1. Структура довідників ===
Типовий процес продажу автозапчастин виглядає так:
 
# клієнт звертається із запитом на запчастину;
# менеджер шукає товар по артикулу, бренду, категорії, моделі авто або VIN-коду;
# система показує доступні запчастини, аналоги, фото, стан і залишки;
# менеджер додає позицію до замовлення;
# система перевіряє залишок на складі;
# товар резервується під замовлення;
# клієнт обирає спосіб оплати і доставки;
# формується рахунок на оплату;
# після оплати замовлення переходить у статус '''«Оплачене»''';
# запчастини списуються зі складу;
# формується видаткова накладна;
# товар передається клієнту або відправляється службою доставки;
# дані потрапляють у звіти.
 
== Основні об’єкти модуля ==
 
{| class="wikitable" style="width:100%;"
! Об’єкт
! Призначення
|-
| Марки авто
| BMW, Audi, Toyota, Ford та інші бренди автомобілів
|-
| Моделі авто
| Конкретні моделі автомобілів
|-
| Категорії запчастин
| Двигун, ходова, кузов, електрика, салон тощо
|-
| Запчастини
| Основний каталог товарів
|-
| Аналоги
| Альтернативні деталі до основної запчастини
|-
| Сумісність
| Зв’язок запчастини з марками, моделями або VIN
|-
| Склади
| Місця зберігання товару
|-
| Залишки
| Кількість запчастин по складах
|-
| Клієнти
| Покупці: фізичні особи, компанії, СТО
|-
| Замовлення
| Продажі клієнтам
|-
| Оплати
| Готівка, картка, банківський переказ, онлайн-оплата
|-
| Доставка
| Самовивіз, Нова Пошта, кур’єр
|-
| Документи
| Рахунок, видаткова накладна, чек або інші документи
|-
| Звіти
| Продажі, залишки, популярні товари, дефіцит
|}


==== Довідник «Марки і моделі авто» ====
== Довідник «Марки і моделі авто» ==


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


* бренд, наприклад:
== Поля марки авто ==
** BMW;
** Audi;
** Toyota;
* модель, наприклад:
** E90;
** A4;
** Corolla.


==== Довідник «Категорії запчастин» ====
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва бренду
| BMW, Audi, Toyota, Volkswagen тощо
|-
| Країна виробника
| Опціонально
|-
| Статус
| Активна або архівна марка
|}


Категорії:
== Поля моделі авто ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Марка
| До якого бренду належить модель
|-
| Модель
| Наприклад: E90, A4, Corolla, Golf
|-
| Покоління
| Опціонально, якщо потрібно точніше визначати сумісність
|-
| Роки випуску
| Період виробництва моделі
|-
| Тип кузова
| Седан, універсал, SUV, хетчбек тощо
|-
| Двигун
| Опціонально, якщо сумісність залежить від двигуна
|}
 
== Довідник «Категорії запчастин» ==
 
Категорії допомагають структурувати каталог і швидко знаходити потрібні товари.
 
== Приклади категорій ==


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


==== Довідник «Запчастини» ====
== Результати пошуку ==


Поля довідника:
У результатах пошуку потрібно показувати:


* назва;
* фото;
* назву;
* артикул;
* артикул;
* опис;
* бренд;
* марка / модель авто;
* стан;
* категорія;
* сумісність;
* наявність на складі;
* ціну;
* ціна;
* залишок;
* стан:
* склад;
** нова;
* аналоги;
** б/в;
* кнопку додавання до замовлення.
** відновлена;
 
* фото запчастини — опціонально.
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;">
'''Практичний сенс.''' Менеджер повинен за кілька секунд побачити, чи є потрібна деталь, скільки вона коштує, на якому складі лежить і чи є доступний аналог.
</div>
 
== Складський облік ==
 
Модуль має підтримувати облік запчастин по складах.
 
== Поля залишку ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Запчастина
| Товар, по якому ведеться залишок
|-
| Склад
| Місце зберігання
|-
| Кількість
| Поточний залишок
|-
| Зарезервовано
| Кількість, заблокована під замовлення
|-
| Доступно
| Кількість, доступна для продажу
|-
| Мінімальний залишок
| Рівень, нижче якого потрібна закупівля
|}
 
== Формула доступного залишку ==
 
<pre>
Доступно = Залишок - Зарезервовано
</pre>
 
== Контроль нестачі ==
 
При оформленні замовлення система повинна перевіряти, чи достатньо товару.
 
Якщо товару не вистачає, потрібно показати попередження і не дозволити продати більше, ніж доступно.
 
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
'''Критично.''' Система не повинна дозволяти продати або зарезервувати більше запчастин, ніж доступно на складі.
</div>
 
== Журнал «Продажі» ==
 
Журнал продажів показує всі замовлення клієнтів.
 
== Колонки журналу продажів ==
 
{| class="wikitable" style="width:100%;"
! Колонка
! Опис
|-
| Номер замовлення
| Унікальний номер продажу
|-
| Дата
| Дата створення замовлення
|-
| Клієнт
| Покупець
|-
| Перелік запчастин
| Товари в замовленні
|-
| Сума замовлення
| Загальна сума продажу
|-
| Статус
| Нове, оплачене, відправлено, завершено, скасовано
|-
| Оплата
| Спосіб і статус оплати
|-
| Доставка
| Самовивіз, Нова Пошта, кур’єр
|}
 
== Статуси замовлення ==
 
{| class="wikitable" style="width:100%;"
! Статус
! Значення
|-
| Нове
| Замовлення створене, але ще не оплачене
|-
| Зарезервовано
| Товар зарезервовано на складі
|-
| Очікує оплати
| Рахунок сформовано, оплата ще не отримана
|-
| Оплачене
| Оплата отримана
|-
| Відправлено
| Замовлення передано в доставку
|-
| Завершено
| Замовлення виконано повністю
|-
| Скасовано
| Замовлення скасовано
|}
 
== Процес продажу ==
 
== Кроки продажу ==
 
# Менеджер або клієнт шукає запчастину.
# Система показує результати пошуку.
# Потрібна запчастина додається до кошика або замовлення.
# Система перевіряє доступний залишок.
# Клієнт вводить або підтверджує контактні дані.
# Обирається спосіб оплати.
# Обирається спосіб доставки.
# Система формує рахунок.
# Після оплати замовлення переходить у статус '''«Оплачене»'''.
# Запчастини списуються зі складу.
# Формується видаткова накладна.
# Замовлення відправляється або видається клієнту.
 
== Поля замовлення ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Номер замовлення
| Генерується автоматично
|-
| Дата
| Дата створення
|-
| Клієнт
| Покупець
|-
| Телефон
| Контактний номер
|-
| Email
| Електронна адреса
|-
| Спосіб оплати
| Готівка, картка, банківський переказ, онлайн-оплата
|-
| Спосіб доставки
| Самовивіз, Нова Пошта, кур’єр
|-
| Статус
| Поточний стан замовлення
|-
| Загальна сума
| Сума всіх позицій
|}
 
== Рядки замовлення ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Запчастина
| Товар із каталогу
|-
| Артикул
| Код запчастини
|-
| Кількість
| Скільки одиниць продається
|-
| Ціна
| Ціна продажу
|-
| Знижка
| Опціонально
|-
| Сума
| Кількість × ціна - знижка
|-
| Склад
| Звідки списується товар
|}
 
== Резервування товару ==
 
Після створення замовлення товар може резервуватися.
 
Резерв потрібен для того, щоб інший менеджер не продав той самий товар.
 
Система повинна:
 
* збільшити кількість у резерві;
* зменшити доступний залишок;
* прив’язати резерв до замовлення;
* зняти резерв при скасуванні замовлення;
* списати резерв при оплаті або відвантаженні.
 
== Оплата ==
 
Модуль має підтримувати різні способи оплати.
 
== Способи оплати ==
 
* готівка;
* банківська картка;
* банківський переказ;
* післяплата;
* онлайн-оплата через платіжну систему.
 
== Онлайн-оплата ==
 
Опціонально можна підключити платіжні системи:
 
* LiqPay;
* WayForPay;
* Stripe;
* інші платіжні сервіси.
 
== Доставка ==
 
Модуль має підтримувати різні способи доставки.
 
== Способи доставки ==
 
* самовивіз;
* Нова Пошта;
* кур’єр;
* доставка транспортною компанією;
* доставка на СТО.
 
== Поля доставки ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Спосіб доставки
| Самовивіз, Нова Пошта, кур’єр
|-
| Отримувач
| ПІБ або компанія
|-
| Телефон отримувача
| Контактний номер
|-
| Місто
| Місто доставки
|-
| Відділення / адреса
| Адреса або відділення служби доставки
|-
| ТТН
| Номер транспортної накладної
|-
| Статус доставки
| Очікує, відправлено, доставлено, повернено
|}
 
== Рахунок на оплату ==
 
Рахунок формується на основі замовлення.
 
== Дані рахунку ==
 
Рахунок має містити:
 
* номер рахунку;
* дату;
* клієнта;
* перелік запчастин;
* артикули;
* кількість;
* ціни;
* знижки;
* загальну суму;
* реквізити для оплати.
 
== Видаткова накладна ==
 
Видаткова накладна підтверджує передачу товару клієнту.
 
== Дані накладної ==
 
Накладна має містити:
 
* номер;
* дату;
* клієнта;
* запчастини;
* артикули;
* кількість;
* ціни;
* суму;
* склад;
* підписи сторін.
 
== Історія продажів клієнта ==
 
У картці клієнта потрібно бачити всі попередні покупки.
 
Історія має показувати:
 
* дату замовлення;
* номер замовлення;
* запчастини;
* суму;
* статус;
* спосіб доставки;
* оплату.
 
== Фото запчастин ==
 
Модуль має підтримувати фото запчастин.


=== 2. Журнал «Продажі» ===
Фото потрібні особливо для:


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


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


==== Функціонал ====
Звіт показує активність клієнтів.


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


=== 3. Процес продажу ===
* клієнта;
* кількість замовлень;
* суму покупок;
* останню дату покупки;
* середній чек.


==== Кроки ====
== AJAX-інтерактив ==


# Пошук запчастини по артикулу, VIN-коду авто або категорії.
Інтерфейс має працювати швидко та зручно для менеджера.
# Додавання запчастини до кошика.
# Оформлення замовлення:
#* ПІБ або компанія клієнта;
#* телефон;
#* email;
#* спосіб оплати;
#* спосіб доставки:
#** самовивіз;
#** Нова Пошта;
#** кур'єр.
# Генерація рахунку для оплати.
# Після оплати — зміна статусу на «Оплачене» і списання запчастин зі складу.


=== 4. Додаткові функції ===
Через AJAX мають працювати:


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


=== 5. Звіти ===
== Логування змін ==


==== Звіт «Продажі по періодах» ====
Модуль повинен фіксувати важливі зміни.


* кількість проданих запчастин;
Журнал змін має зберігати:
* дохід.


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


* актуальні залишки;
== Права доступу ==
* попередження про закінчення складу.


==== Звіт «Популярні запчастини» ====
Модуль має підтримувати розмежування прав.


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


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


{| class="wikitable"
{| class="wikitable" style="width:100%;"
! Параметр
! Параметр
! Опис
! Опис
Рядок 134: Рядок 835:
| K2 Cloud ERP на Python або PHP
| K2 Cloud ERP на Python або PHP
|-
|-
| БД
| База даних
| PostgreSQL або MySQL
| PostgreSQL або MySQL
|-
|-
| Фронтенд
| Фронтенд
| HTML5, JavaScript, AJAX, Axios або Fetch API
| HTML5, JavaScript
|-
| AJAX
| Axios або Fetch API
|-
|-
| UI-компоненти
| UI-компоненти
| DataTables, Select2, Fancybox або аналог для фото
| DataTables, Select2
|-
| Фото
| Fancybox або аналог для перегляду зображень
|-
| Склад
| Облік залишків, резервів і списань
|-
|-
| Друк
| Друк
| Генерація рахунків і накладних у PDF
| PDF-рахунки та видаткові накладні
|-
| Експорт
| Excel або PDF для звітів
|}
|}


== Критерії оцінки ==
== Рекомендовані сутності бази даних ==


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


== Примітка ==
== Примітка ==


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


* автомагазинів;
== Див. також ==
* автосервісів;
* СТО;
* постачальників автокомплектуючих.


Системний облік запчастин дозволяє:
* [[K2 Cloud ERP|K2 ERP]]
* [[K2 ERP]]
* [[Атестаційні завдання K2 ERP]]
* [[СТО]]
* [[Сервісний центр]]
* [[Складський облік]]
* [[Запчастини]]
* [[CRM]]
* [[Рахунок на оплату]]
* [[Видаткова накладна]]
* [[Інтернет-магазин]]
* [[Автоматизація бізнесу]]


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