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

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

Матеріал з K2 ERP Wiki
Первинна публікація
 
Немає опису редагування
 
Рядок 1: Рядок 1:
==== Кроки ====
</div>


{| class="wikitable"
! функції ERP
==== Оперативний контроль ====
 
[[Категорія:Пропускна система]]
 
== Звіт «Проходи за заходом» ==
Після сканування платформа має показати чіткий результат. платформа повинна дозволяти:
! |-
| Дата і час
| Коли була спроба
|-
| Введений код
| Що було відскановано або введено
|-
| Захід
| Для якого заходу виконувалася перевірка
|-
| Пункт входу
| Де була спроба
|-
| Контролер
| Хто виконував перевірку
|-
| Результат
| Дозволено або заборонено
|-
| Причина відмови
| Використаний, недійсний, не знайдено, інший захід тощо
|}
 
!== Поля заходу ==
 
Звіт показує навантаження на входи.== Журнал спроб входу ==
 
* камера не функціонує;
* QR-код пошкоджений;
* сканер не читає код;
* квиток надруковано неякісно;
* потрібно перевірити квиток за номером. ! Що перевіряється
 
* сканування QR-коду;
* ручна перевірка номера;
* пошук квитка;
* зміна статусу квитка;
* фіксація проходу;
* запис неуспішної спроби;
* оновлення версій статистики;
* оновлення версій оперативного екрану;
* фільтрація журналів. Колонка
|-
| Активний
| Квиток дійсний і готовий для проходу
|-
| Використаний
| За квитком уже здійснено прохід
|-
| Недійсний
| Квиток не здатна бути використаний
|-
| Не оплачений
| Квиток створено або заброньовано, але оплата не підтверджена
|-
| Скасований
| Квиток анульовано
|-
| Повернений
| Квиток повернено покупцем
|-
| Заблокований
| Квиток заблоковано адміністратором
|}
 
</div>
== Звіт «Дубльовані спроби» ==
== Поля квитка ==
 
Через AJAX мають працювати:
 
У звіті потрібно відображати:
 
== Колонки журналу спроб ==
 
[[Категорія:Атестаційні завдання K2]]
</div>
{| class="wikitable" style="width:100%;"
|-
| Назва пункту входу
| як приклад: Центральний вхід, Вхід №2, VIP-вхід
|-
| Захід
| До якого заходу належить пункт
|-
| Зал
| Де розташований вхід
|-
| Відповідальний
| Контролер або група контролерів
|-
| Статус
| Активний або неактивний
|}
 
Перевірка квитка повинна бути максимально швидкою. Без такої системи виникають черги, дублювання проходів, ризик використання скопійованих квитків, складність у підрахунку фактичної відвідуваності та проблеми з контролем залу. Журнал спроб входу має фіксувати не тільки успішні, а й неуспішні спроби.== Коротко ==
 
[[Категорія:Корпоративна Wiki]]
[[Категорія:Квитки]]
!== Приклади повідомлень ==
 
== Права доступу ==
 
== Основні об’єкти модуля ==
</pre>
компонент повинен фіксувати важливі дії. 100
{| class="wikitable" style="width:100%;"
 
== Технічні вимоги ==
 
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;">
 
Звіт показує всі успішні проходи на конкретний захід. ! У звіті потрібно відображати:
Інтерфейс має працювати оперативно та без перезавантаження сторінки. SEO-опис
 
Мета задача — створити в K2 ERP компонент для контролю входу на концерт, виставу, фестиваль, конференцію або інший захід. ! # платформа шукає квиток. У базовій реалізації достатньо стабільної онлайн-перевірки через AJAX. компонент має підтримувати розмежування прав.== Логування змін ==
 
Пропускна платформа потрібна для:
 
! |}
 
== Звіт «Статистика по пунктах входу» ==
 
{| class="wikitable" style="width:100%;"
! ! Залишок проходів = Дозволені проходи - Використані проходи
!== На екрані контролю потрібно бачити ==
 
== Шкала оцінювання ==
 
Журнал змін має зберігати:
! Поле
|-
| Номер квитка
| Унікальний номер квитка
|-
| QR-код
| Унікальний код для сканування
|-
| Захід
| На який захід діє квиток
|-
| Ряд
| Номер ряду, якщо застосовується для посадка
|-
| Місце
| Номер місця
|-
| Сектор
| Сектор залу, якщо виступає як
|-
| Покупець
| ПІБ або контакт покупця, якщо зберігається
|-
| Статус
| Активний, використаний, недійсний, скасований
|-
| Тип квитка
| Звичайний, VIP, Staff Pass, службовий
|-
| Кількість дозволених проходів
| Зазвичай 1, для спеціальних перепусток здатна бути більше
|}
 
== Робота при нестабільному інтернеті ==
 
== Формула залишку проходів ==
== Очікуваний результат ==
! Роль
 
'''Примітка.''' Офлайн-режим виступає як розширеною функцією. | компонент перевірки квитків і обліку проходів
|-
| Які довідники потрібні?<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
== Реальний бізнес-контекст ==
 
[[Категорія:QR-код]]
 
* змінити статус квитка на '''«Використаний»''';
* зафіксувати дату і час проходу;
* зафіксувати пункт входу;
* зафіксувати контролера;
* заборонити повторний вхід за тим самим квитком. Колонка
 
!== Статистика проходів ==
 
* VIP;
* Staff Pass;
* організаторів;
* технічного персоналу;
* охорони;
* преси. Ручне введення потрібне, якщо:
 
* заходи;
* зали;
* квитки;
* типи квитків;
* QR-коди;
* пункти входу;
* контролери;
* проходи;
* спроби входу;
* статуси квитків;
* спеціальні перепустки;
* статистика заходу;
* журнал змін;
* звіти;
* права доступу. платформа має показати попередження і записати спробу в журнал. Рівень
== Рекомендовані сутності бази даних ==
== Основні вимоги безпеки ==
|-
| Реалізація перевірки квитка і зміни статусу
| 20
| Пошук квитка, перевірка заходу, статусу, оплати, зміна на використаний після проходу
|-
| Логування проходів
| 20
| Успішні проходи, неуспішні спроби, контролер, пункт входу, дата і причина відмови
|-
| Інтерактивність і миттєве відображення результату
| 20
| Швидке сканування, зрозуміле повідомлення, AJAX-оновлення без перезавантаження
|-
| керування статистикою проходів
| 20
| Кількість пропущених, невикористаних, проблемних і повторних спроб у реальному часі
|-
| Робота з QR-кодами і ручний режим
| 20
| Сканування QR, ручне введення номера, технічна підтримка різних сценаріїв перевірки
|-
<pre>
компонент має підтримувати сканування QR-коду. SEO-опис
 
# адміністратор створює захід;
# для заходу створюються або імпортуються квитки;
# кожен квиток має унікальний номер або QR-код;
# контролер відкриває екран сканування;
# відвідувач показує квиток;
# контролер сканує QR-код або вводить номер вручну;
# платформа перевіряє квиток;
# якщо квиток активний і дійсний — прохід дозволено;
# статус квитка змінюється на '''«Використаний»''';
# фіксується час, пункт входу і контролер;
# якщо квиток уже використаний або недійсний — прохід заборонено;
# спроба входу записується в журнал;
# керівник бачить статистику проходів у реальному часі. ! # Контролер відкриває екран сканування.== Ручний режим ==
 
Для реалізації задачі доцільно передбачити такі сутності:
 
{| class="wikitable" style="width:100%;"
 
* хто створив захід;
* хто створив або імпортував квитки;
* хто змінив статус квитка;
* хто виконав успішний пропуск;
* хто виконав неуспішну перевірку;
* хто змінив пункт входу;
* хто змінив параметри спеціальної перепустки;
* дату й час дії;
* старе та нове значення, якщо це можливо. Статус
 
'''Умова складання.''' задача не здатна бути зараховане, якщо платформа не дає можливість пройти базовий цикл пропускної системи: квиток → сканування → перевірка → дозвіл або відмова → фіксація проходу → захист від повторного входу → звіт. Параметр
 
{| class="wikitable" style="width:100%;"
 
Критичними помилками вважаються ситуації, коли:
 
! ! '''компонент перевірки квитків і обліку проходів на заходах'''. SEO-опис
 
{| class="wikitable" style="width:100%;"
 
! Критерій
 
компонент має підтримувати заходи, зали, квитки, QR-коди, пункти входу, контролерів, сканування, ручне введення, перевірку статусу, фіксацію проходу, захист від повторного використання квитка, спеціальні перепустки, журнали проходів, журнали спроб, статистику, звіти, AJAX-інтерактив і логування змін. ! SEO-опис
!== Довідник «Пункти входу» ==
Мінімальний сценарій:
 
{| class="wikitable" style="width:100%;"
 
== Основні показники ==
 
== Колонки журналу проходів ==
 
[[Категорія:Події]]
== Результати перевірки ==
{| class="wikitable" style="width:100%;"
|-
| Дата і час
| Коли здійснено прохід
|-
| Захід
| На який захід пройшов відвідувач
|-
| Квиток
| Номер квитка або QR-код
|-
| Ряд і місце
| Місце відвідувача, якщо виступає як
|-
| Пункт входу
| Через який вхід пройшов відвідувач
|-
| Контролер
| Хто виконав перевірку
|-
| Результат
| Дозволено
|}


* контроль проходу в зал за допомогою сканування квитків;
* перевірку дійсності квитка:
** чи куплений;
** чи броньований;
** чи оплачений;
* відстеження кількості людей, що пройшли;
== Примітка ==
== Примітка ==


= компонент перевірки квитків і обліку проходів на заходах =
! Значення
__TOC__
!== Довідник «Заходи» ==
== Спеціальні перепустки ==
{| class="wikitable" style="width:100%;"
 
{| class="wikitable" style="width:100%;"
 
Для керівника або адміністратора потрібен екран контролю заходу. * поточну кількість пропущених гостей;
* залишок непройдених квитків;
* проблемні спроби входу;
* дубльовані спроби;
* активність по пунктах входу;
* останні сканування;
* загальний відсоток проходу. ! SEO-опис
|-
| Тип перепустки
| VIP, Staff Pass, Press, Organizer
|-
| Кількість дозволених проходів
| Скільки разів можна пройти
|-
| Кількість використаних проходів
| Скільки проходів уже зафіксовано
|-
| Залишок проходів
| Скільки проходів ще доступно
|}
 
== Повідомлення контролеру ==
 
'''Критично.''' Повторне сканування вже використаного квитка не повинно дозволяти прохід. | Проходи, неуспішні спроби, дублікати, статистика по входах
|-
| Що виступає як критичною вимогою?== Статуси квитка ==
 
компонент має забезпечувати швидку перевірку квитків на вході, сканування QR-кодів, ручне введення номера квитка, контроль статусу квитка, захист від повторного проходу, фіксацію всіх спроб входу, статистику відвідуваності та оперативний контроль заповненості залу. # Перевіряє, чи не був квиток уже використаний.== Довідник «Квитки» ==
 
* неможливо створити захід;
* неможливо створити квиток;
* квиток не має унікального номера або QR-коду;
* активний квиток не пропускається;
* використаний квиток повторно пропускається;
* квиток іншого заходу пропускається;
* недійсний або неоплачений квиток пропускається;
* після проходу статус квитка не змінюється;
* час проходу не фіксується;
* пункт входу не фіксується;
* контролер не фіксується;
* неуспішні спроби не логуються;
* статистика не відповідає фактичним проходам;
* ручний режим не функціонує;
* дубльовані спроби не відображаються у звіті. Повідомлення
 
{| class="wikitable" style="width:100%;"
 
== Безпека перевірки ==
 
* локальне кешування списку дійсних квитків перед заходом;
* локальна фіксація проходів;
* синхронізація після відновлення зв’язку;
* попередження про ризик дублювання при офлайн-режимі;
* блокування офлайн-режиму для квитків високого ризику. | Прохід заборонено, спроба записується в журнал
|-
| Які звіти потрібні? Поле
|-
| 90–100
| Відмінно
| компонент на 100% функціонує: QR-сканування, ручний режим, статуси, захист від повторного проходу, логи, статистика і звіти реалізовані коректно
|-
| 75–89
| Добре
| Основна логіка функціонує, виступає як незначні недоліки, які не руйнують бізнес-процес пропуску гостей
|-
| 60–74
| Зараховано
| Базовий сценарій функціонує, але частина функцій реалізована неповно або потребує доопрацювання
|-
| 0–59
| Не зараховано
| Відсутня критична логіка: перевірка квитка, зміна статусу, захист від повторного проходу або журнал спроб
|}
 
Звіт показує проблемні перевірки.== Оперативний екран контролю ==
 
== AJAX-інтерактив ==
 
! Він оптимізує уникати черг, запобігати повторному використанню квитків, контролювати фактичну відвідуваність і забезпечувати швидкий та зручний вхід для гостей. # Обирає захід і пункт входу. '''Коротко.''' Потрібно реалізувати пропускну систему для заходів: сканування QR-квитків, ручне введення номера, перевірка дійсності, фіксація проходу, заборона повторного входу, логування спроб і статистика проходів у реальному часі. # Перевіряє статус квитка. Разом
 
Пропускна в концертний зал''' — це практична задача; так само реалізовано контролю проходів і обліку відвідувачів на заходах виступає ключовою рисою перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля перевірки квитків забезпечується через '''Атестаційне задача K2 ERP. | Захист від повторного проходу за тим самим квитком
|}
 
{| class="wikitable" style="width:100%;"
 
* [[K2 Cloud ERP|K2 ERP]]
* [[K2 ERP]]
* [[Атестаційні завдання K2 ERP]]
* [[Бронювання квитків на події]]
* [[Квиток]]
* [[QR-код]]
* [[Концертний зал]]
* [[Подія]]
* [[Пропускна система]]
* [[Звітність]]
* [[AJAX]]
 
{{DISPLAYTITLE:Атестаційні завдання K2 ERP/Пропускна в концертний зал}}
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;">
<pre>
Один квиток = один прохід
Після продажу або бронювання квитків організатор заходу повинен забезпечити контроль входу в зал. платформа має оперативно визначати, чи виступає як квиток дійсним, чи він оплачений, чи належить саме цьому заходу, чи не був використаний раніше.== Практичне задача ==
У результаті виконання атестаційного задача має бути створений компонент пропускної системи в K2 ERP. |-
| Назва заходу
| Назва концерту, вистави, конференції або іншої події
|-
| Дата і час
| Коли відбувається захід
|-
| Зал проведення
| Місце проведення
|-
| Кількість місць
| Загальна кількість місць або доступних квитків
|-
| Статус
| Запланований, активний, завершений, скасований
|-
| Час відкриття входу
| Коли дозволено починати пропуск
|-
| Час закриття входу
| Коли пропуск завершується
|}
 
Опціонально можна реалізувати режим часткової роботи при нестабільному інтернеті. У звіті потрібно відображати:
!== базовий бізнес-процес ==
 
== Критерії оцінювання ==
 
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;">
 
* дату і час;
* введений код;
* захід;
* пункт входу;
* контролера;
* причину відмови. Бали
Базове правило:
</div>
|-
| Бекенд
| K2 Cloud ERP на Python або PHP
|-
| База даних
| PostgreSQL або MySQL
|-
| Фронтенд
| HTML5, JavaScript
|-
| AJAX
| Fetch API або Axios
|-
| Сканування QR-коду
| Через камеру пристрою або підключений сканер
|-
| Ручний режим
| Введення номера квитка вручну
|-
| UI
| Велике контрастне повідомлення: дозволено / заборонено
|-
| Друк
| Не обов’язково, основна робота виконується електронно
|-
| Експорт
| Excel або PDF для звітів
|}
 
Довідник заходів містить події, для яких потрібно перевіряти квитки. # Якщо прохід заборонено — записує неуспішну спробу. Ситуація
 
* камера мобільного пристрою;
* планшет;
* ноутбук із камерою;
* стаціонарний USB-сканер;
* ручне введення номера квитка як резервний варіант. # Перевіряє, чи належить квиток до обраного заходу. компонент пропускної системи критично важливий для концертів, фестивалів, вистав, конференцій, спортивних подій і великих масових заходів. Відповідь
|-
| Прохід дозволено
| Квиток активний, статус змінюється на використаний, прохід фіксується
|-
| Квиток уже використаний
| Прохід заборонено, показується попередження
|-
| Квиток недійсний
| Прохід заборонено, причина фіксується в журналі
|-
| Квиток не оплачений
| Прохід заборонено
|-
| Квиток не належить цьому заходу
| Прохід заборонено
|-
| Квиток не знайдено
| Прохід заборонено, спроба фіксується
|}
 
! !== Журнал проходів ==


!SEO-опис
== Звіт «Неуспішні спроби входу» ==


== Технічні вимоги ==
Квиток виступає як основним об’єктом перевірки. У звіті потрібно відображати:
Поля довідника:
 
Опціонально платформа здатна підтримувати квитки з кількома проходами. SEO-опис


* назва заходу;
Такі квитки можуть використовуватися для:
* дата і час;
== Сканування QR-кодів ==
* зал проведення;
== Логіка одного проходу ==
* кількість місць.== Критерії оцінки ==
|-
| Успішний прохід
| Прохід дозволено
|-
|-
|Бекенд
| Повторне сканування
|K2 Cloud ERP на Python або PHP
| Квиток уже використаний
|-
|-
|БД
| Недійсний квиток
|PostgreSQL або MySQL
| Квиток недійсний
|-
|-
|Фронтенд
| Інший захід
|HTML5, JavaScript, AJAX, Fetch API або Axios
| Квиток не належить цьому заходу
|-
|-
|Сканування QR-коду
| Неоплачений квиток
|Через камеру пристрою або підключений сканер
| Квиток не оплачений
|-
|-
|Друк
| Невідомий код
|Немає потреби у друку, тільки електронна перевірка
| Квиток не знайдено
|}
|}


компонент пропускної системи — критичний для проведення:
</div>
скасовано або не оплачено виступає ключовою рисою ** недійсний.=== 2. бізнес-процес перевірки квитка ===
 
платформа повинна показувати статистику в реальному часі. '''провідний принцип.''' Пропускна платформа повинна миттєво відповісти контролеру: пропустити людину чи ні.== Критичні помилки ==
 
Типовий бізнес-процес роботи пропускної системи виглядає так:


* технічна підтримка сканування QR-кодів через:
* номер квитка;
** мобільний пристрій;
* перший час проходу;
** стаціонарний сканер;
* час повторної спроби;
* технічна підтримка ручного введення номера квитка як запасний варіант;
* пункт входу;
* автоматичне оновлення версій інформації без перезавантаження сторінки через AJAX.=== 4. Логіка обмеження проходів ===
* контролера;
==== Статистика ====
* кількість повторних спроб. SEO-опис


* номер квитка — унікальний код або QR-код;
* захід;
* захід;
* номер ряду;
* дату і час проходу;
* номер місця;
* номер квитка;
* статус:
* ряд і місце;
** активний — готовий для проходу;
* пункт входу;
** використаний — пропуск уже здійснено;
* контролера. SEO-опис
== Реальний бізнес-контекст ==


=== 1. Структура довідників ===
Після успішного проходу платформа повинна:


{| class="wikitable"
! Поле
</div>
! * загальна кількість квитків;
* кількість активних квитків;
* кількість використаних квитків;
* кількість невикористаних квитків;
* кількість недійсних спроб;
* кількість повторних спроб;
* кількість проходів по кожному пункту входу;
* відсоток заповненості залу. | Один звичайний квиток — один прохід
|-
| Що має робити платформа після проходу? ! Дія системи


# Квиток сканується на вході:
! * унікальність QR-коду;
#* вводиться вручну номер квитка;
* перевірка належності квитка до заходу;
#* або сканується QR-код.=== 3. Технічні деталі ===
* перевірка статусу квитка;
==== Довідник «Квитки» ====
* заборона повторного проходу;
Пропуск має бути максимально швидким та надійним для великої кількості гостей. # платформа перевіряє статус квитка:
* логування всіх спроб;
#* якщо «Активний» → пропуск дозволено, статус змінюється на «Використаний»;
* валідація вхідних даних;
#* якщо «Використаний» → повідомлення: «Квиток вже використаний»;
* захист від кешування старого результату перевірки;
#* якщо «Недійсний» → повідомлення: «Квиток недійсний». Після купівлі або бронювання квитків необхідно організувати:
* фіксація контролера і пункту входу. Призначення
== формування звітів ==


!Критерій
== бізнес-процес перевірки квитка ==


* кількість пропущених глядачів;
'''критично.''' Для проходу має підходити тільки квиток зі статусом '''«Активний»''' або спеціальна перепустка з дозволеним залишком проходів. | Заходи, квитки, пункти входу, контролери
* кількість квитків, що залишились невикористаними.== Основні задача ==
|-
| Який провідний об’єкт?</pre>
{| class="wikitable" style="width:100%;"
|-
| Заходи
| Події, на які здійснюється пропуск
|-
| Зали
| Місця проведення заходів
|-
| Квитки
| Унікальні електронні або паперові квитки
|-
| QR-коди
| Коди для швидкої перевірки квитків
|-
| Пункти входу
| Входи, через які проходять відвідувачі
|-
| Контролери
| Працівники, які перевіряють квитки
|-
| Проходи
| Успішні факти входу за квитком
|-
| Спроби входу
| Усі успішні й неуспішні перевірки
|-
| Статистика
| інформаційні дані про кількість пропущених і непропущених гостей
|-
| Звіти
| аналітичні інструменти по проходах, квитках, пунктах входу і подіях
|}


* можливість швидкого перегляду стану залу у реальному часі;
На вході працюють контролери, які сканують квитки відвідувачів.== Варіанти сканування ==
* автоматичне виведення попереджень про дубльований прохід. # Фіксується:
#* час проходу;
#* пункт входу. !Бали


* обов’язкова валідація вхідних даних;
== Див. так само ==
* блокування кешування результатів запиту;
 
* робота системи навіть при короткочасних збоях інтернету, як приклад:
* пункт входу;
** кешування в браузері;
* кількість успішних проходів;
** синхронізація після відновлення зв’язку — Advanced. !Параметр
* кількість відмов;
=== 5. Додаткові функції ===
* кількість повторних спроб;
* середню швидкість проходу, якщо реалізовано. ! Бали
== Поля пункту входу ==
|-
|-
|Реалізація перевірки квитка і зміни статусу
| Контролер
|20
| Сканує квитки, бачить результат перевірки, фіксує проходи
|-
|-
|Логування проходів
| Старший контролер
|20
| Бачить статистику входу, проблемні спроби і дублікати
|-
|-
|Інтерактивність і миттєве відображення результату сканування
| Адміністратор заходу
|20
| Керує заходами, квитками, пунктами входу і контролерами
|-
|-
|керування статистикою проходів
| Каса / продажі та реалізація
|20
| Бачить статуси квитків, оплати і скасування
|-
|-
|Робота з QR-кодами і ручний режим
| Керівник
|20
| Переглядає звіти, відвідуваність і оперативну статистику
|-
| Адміністратор системи
| Налаштовує права, службові параметри і технічні інтеграції
|}
|}


==== Довідник «Заходи» ====
платформа повинна бути захищена від помилок і повторного використання квитків.<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;">
=== 6. Безпека і стабільність ===
 
== Кроки перевірки ==
 
[[Категорія:K2 ERP]]


* концертів;
* концертів;
* фестивалів;
* фестивалів;
* вистав;
* театральних вистав;
* великих заходів. Він оптимізує:
* конференцій;
* спортивних подій;
* виставок;
* закритих корпоративних заходів;
* лекцій і навчальних подій. | Змінити статус квитка на використаний і записати час проходу
|-
| Що має бути при повторному скануванні? Журнал проходів містить усі успішні проходи. Результат
У межах атестації потрібно продемонструвати робочий сценарій. Кожен квиток повинен мати унікальний ідентифікатор. Звіт показує повторні спроби проходу за вже використаним квитком. Усі деталі — статус квитка, повторний прохід, час, пункт входу і контролер — мають фіксуватися автоматизовано. * вести заходи;
* вести квитки по заходах;
* перевіряти квиток за QR-кодом;
* перевіряти квиток за ручним введенням номера;
* визначати статус квитка;
* дозволяти або забороняти прохід;
* змінювати статус квитка після проходу;
* запобігати повторному проходу за одним квитком;
* фіксувати час проходу;
* фіксувати пункт входу;
* фіксувати контролера;
* логувати всі успішні та неуспішні спроби входу;
* показувати статистику проходів у реальному часі;
* працювати оперативно на мобільному пристрої або стаціонарному сканері;
* підтримувати спеціальні типи перепусток, якщо потрібно;
* формувати звіти по відвідуваності, дублях і проблемних квитках.== Поля спеціальної перепустки ==
 
! | Квиток з унікальним номером або QR-кодом
|-
| Яке головне правило?== Можливі підходи ==
 
! # Якщо прохід дозволено — фіксує прохід. Об’єкт
 
== Мета задача ==
 
! # Сканує QR-код квитка або вводить номер вручну. # Показує результат перевірки. Питання
|-
| Що потрібно створити? Поле
 
Пункт входу — це місце, де здійснюється перевірка квитків. Максимальна оцінка


* один квиток — один прохід;
== Назва задача ==
* можливість окремо дозволяти кілька проходів для спеціальних квитків, як приклад:
** VIP;
** Staff Pass;
* логування усіх спроб входу, навіть неуспішних. * запобігання повторному проходу за тим самим квитком. Поля довідника:


* уникнути черг;
# створити захід;
* запобігати махінаціям із квитками;
# створити зал;
* забезпечити комфорт глядачам.
# створити кілька квитків;
# згенерувати або вказати QR-коди;
# створити пункт входу;
# створити контролера;
# відкрити екран сканування;
# перевірити активний квиток;
# дозволити прохід;
# перевірити зміну статусу на '''«Використаний»''';
# повторно просканувати той самий квиток;
# перевірити заборону повторного проходу;
# перевірити недійсний квиток;
# перевірити квиток, що не належить цьому заходу;
# виконати ручне введення номера квитка;
# створити спеціальну перепустку з кількома проходами;
# перевірити кілька проходів по спеціальній перепустці;
# переглянути журнал проходів;
# переглянути журнал неуспішних спроб;
# переглянути статистику заходу;
# сформувати звіт дубльованих спроб;
# сформувати звіт по пунктах входу. {| class="wikitable" style="width:100%;"
{| class="wikitable" style="width:100%;"

Поточна версія на 19:26, 1 травня 2026

! функції ERP

Звіт «Проходи за заходом»

Після сканування платформа має показати чіткий результат. платформа повинна дозволяти: ! |- | Дата і час | Коли була спроба |- | Введений код | Що було відскановано або введено |- | Захід | Для якого заходу виконувалася перевірка |- | Пункт входу | Де була спроба |- | Контролер | Хто виконував перевірку |- | Результат | Дозволено або заборонено |- | Причина відмови | Використаний, недійсний, не знайдено, інший захід тощо |}

!== Поля заходу ==

Звіт показує навантаження на входи.== Журнал спроб входу ==

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

|- | Активний | Квиток дійсний і готовий для проходу |- | Використаний | За квитком уже здійснено прохід |- | Недійсний | Квиток не здатна бути використаний |- | Не оплачений | Квиток створено або заброньовано, але оплата не підтверджена |- | Скасований | Квиток анульовано |- | Повернений | Квиток повернено покупцем |- | Заблокований | Квиток заблоковано адміністратором |}

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

Поля квитка

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

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

Колонки журналу спроб

Назва пункту входу як приклад: Центральний вхід, Вхід №2, VIP-вхід
Захід До якого заходу належить пункт
Зал Де розташований вхід
Відповідальний Контролер або група контролерів
Статус Активний або неактивний

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

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

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

компонент повинен фіксувати важливі дії. 100

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

Звіт показує всі успішні проходи на конкретний захід. ! У звіті потрібно відображати: Інтерфейс має працювати оперативно та без перезавантаження сторінки. SEO-опис

Мета задача — створити в K2 ERP компонент для контролю входу на концерт, виставу, фестиваль, конференцію або інший захід. ! # платформа шукає квиток. У базовій реалізації достатньо стабільної онлайн-перевірки через AJAX. компонент має підтримувати розмежування прав.== Логування змін ==

Пропускна платформа потрібна для:

компонент має підтримувати сканування QR-коду. SEO-опис

# адміністратор створює захід;
# для заходу створюються або імпортуються квитки;
# кожен квиток має унікальний номер або QR-код;
# контролер відкриває екран сканування;
# відвідувач показує квиток;
# контролер сканує QR-код або вводить номер вручну;
# платформа перевіряє квиток;
# якщо квиток активний і дійсний — прохід дозволено;
# статус квитка змінюється на '''«Використаний»''';
# фіксується час, пункт входу і контролер;
# якщо квиток уже використаний або недійсний — прохід заборонено;
# спроба входу записується в журнал;
# керівник бачить статистику проходів у реальному часі. ! # Контролер відкриває екран сканування.== Ручний режим ==

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

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

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

'''Умова складання.''' задача не здатна бути зараховане, якщо платформа не дає можливість пройти базовий цикл пропускної системи: квиток → сканування → перевірка → дозвіл або відмова → фіксація проходу → захист від повторного входу → звіт. Параметр

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

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

! ! '''компонент перевірки квитків і обліку проходів на заходах'''. SEO-опис

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

! Критерій

компонент має підтримувати заходи, зали, квитки, QR-коди, пункти входу, контролерів, сканування, ручне введення, перевірку статусу, фіксацію проходу, захист від повторного використання квитка, спеціальні перепустки, журнали проходів, журнали спроб, статистику, звіти, AJAX-інтерактив і логування змін. ! SEO-опис
!== Довідник «Пункти входу» ==
Мінімальний сценарій:

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

== Основні показники ==

== Колонки журналу проходів ==

[[Категорія:Події]]
== Результати перевірки ==
{| class="wikitable" style="width:100%;"
|-
| Дата і час
| Коли здійснено прохід
|-
| Захід
| На який захід пройшов відвідувач
|-
| Квиток
| Номер квитка або QR-код
|-
| Ряд і місце
| Місце відвідувача, якщо виступає як
|-
| Пункт входу
| Через який вхід пройшов відвідувач
|-
| Контролер
| Хто виконав перевірку
|-
| Результат
| Дозволено
|}

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

! Значення
__TOC__
!== Довідник «Заходи» ==
== Спеціальні перепустки ==
{| class="wikitable" style="width:100%;"

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

Для керівника або адміністратора потрібен екран контролю заходу. * поточну кількість пропущених гостей;
* залишок непройдених квитків;
* проблемні спроби входу;
* дубльовані спроби;
* активність по пунктах входу;
* останні сканування;
* загальний відсоток проходу. ! SEO-опис
|-
| Тип перепустки
| VIP, Staff Pass, Press, Organizer
|-
| Кількість дозволених проходів
| Скільки разів можна пройти
|-
| Кількість використаних проходів
| Скільки проходів уже зафіксовано
|-
| Залишок проходів
| Скільки проходів ще доступно
|}

== Повідомлення контролеру ==

'''Критично.''' Повторне сканування вже використаного квитка не повинно дозволяти прохід. | Проходи, неуспішні спроби, дублікати, статистика по входах
|-
| Що виступає як критичною вимогою?== Статуси квитка ==

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

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

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

== Безпека перевірки ==

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

Звіт показує проблемні перевірки.== Оперативний екран контролю ==

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

! Він оптимізує уникати черг, запобігати повторному використанню квитків, контролювати фактичну відвідуваність і забезпечувати швидкий та зручний вхід для гостей. # Обирає захід і пункт входу. '''Коротко.''' Потрібно реалізувати пропускну систему для заходів: сканування QR-квитків, ручне введення номера, перевірка дійсності, фіксація проходу, заборона повторного входу, логування спроб і статистика проходів у реальному часі. # Перевіряє статус квитка. Разом

Пропускна в концертний зал''' — це практична задача; так само реалізовано контролю проходів і обліку відвідувачів на заходах виступає ключовою рисою перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля перевірки квитків забезпечується через '''Атестаційне задача K2 ERP. | Захист від повторного проходу за тим самим квитком
|}

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

* [[K2 Cloud ERP|K2 ERP]]
* [[K2 ERP]]
* [[Атестаційні завдання K2 ERP]]
* [[Бронювання квитків на події]]
* [[Квиток]]
* [[QR-код]]
* [[Концертний зал]]
* [[Подія]]
* [[Пропускна система]]
* [[Звітність]]
* [[AJAX]]

{{DISPLAYTITLE:Атестаційні завдання K2 ERP/Пропускна в концертний зал}}
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;">
<pre>
Один квиток = один прохід
Після продажу або бронювання квитків організатор заходу повинен забезпечити контроль входу в зал. платформа має оперативно визначати, чи виступає як квиток дійсним, чи він оплачений, чи належить саме цьому заходу, чи не був використаний раніше.== Практичне задача ==
У результаті виконання атестаційного задача має бути створений компонент пропускної системи в K2 ERP. |-
| Назва заходу
| Назва концерту, вистави, конференції або іншої події
|-
| Дата і час
| Коли відбувається захід
|-
| Зал проведення
| Місце проведення
|-
| Кількість місць
| Загальна кількість місць або доступних квитків
|-
| Статус
| Запланований, активний, завершений, скасований
|-
| Час відкриття входу
| Коли дозволено починати пропуск
|-
| Час закриття входу
| Коли пропуск завершується
|}

Опціонально можна реалізувати режим часткової роботи при нестабільному інтернеті. У звіті потрібно відображати:
!== базовий бізнес-процес ==

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

<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;">

* дату і час;
* введений код;
* захід;
* пункт входу;
* контролера;
* причину відмови. Бали
Базове правило:
</div>
|-
| Бекенд
| K2 Cloud ERP на Python або PHP
|-
| База даних
| PostgreSQL або MySQL
|-
| Фронтенд
| HTML5, JavaScript
|-
| AJAX
| Fetch API або Axios
|-
| Сканування QR-коду
| Через камеру пристрою або підключений сканер
|-
| Ручний режим
| Введення номера квитка вручну
|-
| UI
| Велике контрастне повідомлення: дозволено / заборонено
|-
| Друк
| Не обов’язково, основна робота виконується електронно
|-
| Експорт
| Excel або PDF для звітів
|}

Довідник заходів містить події, для яких потрібно перевіряти квитки. # Якщо прохід заборонено — записує неуспішну спробу. Ситуація

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

! !== Журнал проходів ==

== Звіт «Неуспішні спроби входу» ==

Квиток виступає як основним об’єктом перевірки. У звіті потрібно відображати:

Опціонально платформа здатна підтримувати квитки з кількома проходами. SEO-опис

Такі квитки можуть використовуватися для:
== Сканування QR-кодів ==
== Логіка одного проходу ==
|-
| Успішний прохід
| Прохід дозволено
|-
| Повторне сканування
| Квиток уже використаний
|-
| Недійсний квиток
| Квиток недійсний
|-
| Інший захід
| Квиток не належить цьому заходу
|-
| Неоплачений квиток
| Квиток не оплачений
|-
| Невідомий код
| Квиток не знайдено
|}

</div>

платформа повинна показувати статистику в реальному часі. '''провідний принцип.''' Пропускна платформа повинна миттєво відповісти контролеру: пропустити людину чи ні.== Критичні помилки ==

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

* номер квитка;
* перший час проходу;
* час повторної спроби;
* пункт входу;
* контролера;
* кількість повторних спроб. SEO-опис

* захід;
* дату і час проходу;
* номер квитка;
* ряд і місце;
* пункт входу;
* контролера. SEO-опис

Після успішного проходу платформа повинна:

! Поле
</div>
! * загальна кількість квитків;
* кількість активних квитків;
* кількість використаних квитків;
* кількість невикористаних квитків;
* кількість недійсних спроб;
* кількість повторних спроб;
* кількість проходів по кожному пункту входу;
* відсоток заповненості залу. | Один звичайний квиток — один прохід
|-
| Що має робити платформа після проходу? ! Дія системи

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

== бізнес-процес перевірки квитка ==

'''критично.''' Для проходу має підходити тільки квиток зі статусом '''«Активний»''' або спеціальна перепустка з дозволеним залишком проходів. | Заходи, квитки, пункти входу, контролери
|-
| Який провідний об’єкт?
}

Звіт «Статистика по пунктах входу»

! Залишок проходів = Дозволені проходи - Використані проходи == На екрані контролю потрібно бачити ==

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

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

Поле
Номер квитка Унікальний номер квитка
QR-код Унікальний код для сканування
Захід На який захід діє квиток
Ряд Номер ряду, якщо застосовується для посадка
Місце Номер місця
Сектор Сектор залу, якщо виступає як
Покупець ПІБ або контакт покупця, якщо зберігається
Статус Активний, використаний, недійсний, скасований
Тип квитка Звичайний, VIP, Staff Pass, службовий
Кількість дозволених проходів Зазвичай 1, для спеціальних перепусток здатна бути більше

Робота при нестабільному інтернеті

Формула залишку проходів

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

Роль

Примітка. Офлайн-режим виступає як розширеною функцією. | компонент перевірки квитків і обліку проходів

Які довідники потрібні?

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

  • змінити статус квитка на «Використаний»;
  • зафіксувати дату і час проходу;
  • зафіксувати пункт входу;
  • зафіксувати контролера;
  • заборонити повторний вхід за тим самим квитком. Колонка
== Статистика проходів ==
  • VIP;
  • Staff Pass;
  • організаторів;
  • технічного персоналу;
  • охорони;
  • преси. Ручне введення потрібне, якщо:
  • заходи;
  • зали;
  • квитки;
  • типи квитків;
  • QR-коди;
  • пункти входу;
  • контролери;
  • проходи;
  • спроби входу;
  • статуси квитків;
  • спеціальні перепустки;
  • статистика заходу;
  • журнал змін;
  • звіти;
  • права доступу. платформа має показати попередження і записати спробу в журнал. Рівень

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

Основні вимоги безпеки

Реалізація перевірки квитка і зміни статусу 20 Пошук квитка, перевірка заходу, статусу, оплати, зміна на використаний після проходу
Логування проходів 20 Успішні проходи, неуспішні спроби, контролер, пункт входу, дата і причина відмови
Інтерактивність і миттєве відображення результату 20 Швидке сканування, зрозуміле повідомлення, AJAX-оновлення без перезавантаження
керування статистикою проходів 20 Кількість пропущених, невикористаних, проблемних і повторних спроб у реальному часі
Робота з QR-кодами і ручний режим 20 Сканування QR, ручне введення номера, технічна підтримка різних сценаріїв перевірки
Заходи Події, на які здійснюється пропуск
Зали Місця проведення заходів
Квитки Унікальні електронні або паперові квитки
QR-коди Коди для швидкої перевірки квитків
Пункти входу Входи, через які проходять відвідувачі
Контролери Працівники, які перевіряють квитки
Проходи Успішні факти входу за квитком
Спроби входу Усі успішні й неуспішні перевірки
Статистика інформаційні дані про кількість пропущених і непропущених гостей
Звіти аналітичні інструменти по проходах, квитках, пунктах входу і подіях

На вході працюють контролери, які сканують квитки відвідувачів.== Варіанти сканування ==

Див. так само

  • пункт входу;
  • кількість успішних проходів;
  • кількість відмов;
  • кількість повторних спроб;
  • середню швидкість проходу, якщо реалізовано. ! Бали

Поля пункту входу

Контролер Сканує квитки, бачить результат перевірки, фіксує проходи Старший контролер Бачить статистику входу, проблемні спроби і дублікати Адміністратор заходу Керує заходами, квитками, пунктами входу і контролерами Каса / продажі та реалізація Бачить статуси квитків, оплати і скасування Керівник Переглядає звіти, відвідуваність і оперативну статистику Адміністратор системи Налаштовує права, службові параметри і технічні інтеграції платформа повинна бути захищена від помилок і повторного використання квитків.

Кроки перевірки

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

|- | Що має бути при повторному скануванні? Журнал проходів містить усі успішні проходи. Результат У межах атестації потрібно продемонструвати робочий сценарій. Кожен квиток повинен мати унікальний ідентифікатор. Звіт показує повторні спроби проходу за вже використаним квитком. Усі деталі — статус квитка, повторний прохід, час, пункт входу і контролер — мають фіксуватися автоматизовано. * вести заходи;

  • вести квитки по заходах;
  • перевіряти квиток за QR-кодом;
  • перевіряти квиток за ручним введенням номера;
  • визначати статус квитка;
  • дозволяти або забороняти прохід;
  • змінювати статус квитка після проходу;
  • запобігати повторному проходу за одним квитком;
  • фіксувати час проходу;
  • фіксувати пункт входу;
  • фіксувати контролера;
  • логувати всі успішні та неуспішні спроби входу;
  • показувати статистику проходів у реальному часі;
  • працювати оперативно на мобільному пристрої або стаціонарному сканері;
  • підтримувати спеціальні типи перепусток, якщо потрібно;
  • формувати звіти по відвідуваності, дублях і проблемних квитках.== Поля спеціальної перепустки ==

! | Квиток з унікальним номером або QR-кодом |- | Яке головне правило?== Можливі підходи ==

! # Якщо прохід дозволено — фіксує прохід. Об’єкт

Мета задача

! # Сканує QR-код квитка або вводить номер вручну. # Показує результат перевірки. Питання |- | Що потрібно створити? Поле

Пункт входу — це місце, де здійснюється перевірка квитків. Максимальна оцінка

Назва задача

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