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

Атестаційні завдання K2 ERP/Готель

Матеріал з K2 ERP Wiki Ukraine — База знань з автоматизації та санкцій в Україні


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

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

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

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

Комплексна система обліку готелю з рестораном: бронювання, поселення, обслуговування гостей, замовлення їжі та оплата.

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

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

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

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

Головний принцип. Гість має пройти повний цикл обслуговування в одній системі: бронювання → поселення → проживання → додаткові послуги → ресторан або замовлення в номер → фінальний рахунок → оплата → виїзд.

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

Готель надає гостям проживання та супутні послуги. У складі готелю може працювати ресторан, бар, СПА-зона, паркінг, трансферна служба, конференц-зали або інші сервіси.

Гість може:

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

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

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

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

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

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

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

Довідник «Типи номерів»

Тип номера визначає категорію, місткість і базову ціну.

Приклади типів номерів

  • стандарт;
  • покращений стандарт;
  • люкс;
  • напівлюкс;
  • апартаменти;
  • сімейний номер;
  • одномісний номер;
  • двомісний номер;
  • хостельне місце.

Поля типу номера

Поле Опис
Назва типу Наприклад: Стандарт, Люкс, Апартаменти
Кількість місць Скільки гостей може проживати
Площа Площа номера
Базова ціна за добу Стандартна вартість проживання
Опис Коротка характеристика номера
Фото Опціонально для сайту бронювання
Активність Чи доступний тип номера для бронювання

Довідник «Номери»

Довідник номерів містить конкретні кімнати готелю.

Поля номера

Поле Опис
Номер кімнати Наприклад: 101, 202, A-15
Тип номера Стандарт, люкс, апартаменти тощо
Поверх На якому поверсі знаходиться номер
Корпус Якщо готель має кілька корпусів
Кількість місць Може успадковуватись із типу номера
Статус Вільний, заброньований, зайнятий, прибирання, ремонт
Коментар Особливості номера

Статуси номера

Статус Значення
Вільний Номер доступний для поселення або бронювання
Заброньований Номер зарезервовано на майбутні дати
Зайнятий У номері проживає гість
Прибирання Номер потребує підготовки після виїзду
Ремонт Номер тимчасово недоступний
Заблокований Номер вручну закритий для продажу

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

Довідник «Гості»

Довідник гостей містить клієнтів готелю.

Поля гостя

Поле Опис
ПІБ Ім’я гостя
Телефон Контактний номер
Email Для підтверджень і рахунків
Документ Паспорт або інший документ, якщо потрібно
Країна Країна гостя
Компанія Якщо гість проживає від імені організації
Коментар Особливі побажання або примітки
Статус Активний, VIP, чорний список, архівний

Бронювання номерів

Бронювання фіксує резервування номера на певний період.

Поля бронювання

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

Статуси бронювання

Статус Значення
Нове Бронювання створено, але ще не підтверджено
Очікує передоплати Потрібна оплата для підтвердження
Підтверджене Номер зарезервовано
Заселене Гість фактично заселився
Скасоване Бронювання скасовано
Не заїхав Гість не приїхав
Завершене Проживання завершено

Календар зайнятості номерів

Календар показує доступність номерів за датами.

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

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

Поселення гостя

Поселення переводить бронювання в фактичне проживання.

Кроки поселення

  1. адміністратор знаходить бронювання;
  2. перевіряє дані гостя;
  3. перевіряє готовність номера;
  4. фіксує фактичну дату й час заїзду;
  5. змінює статус бронювання на «Заселене»;
  6. змінює статус номера на «Зайнятий»;
  7. відкриває рахунок проживання гостя.

Виїзд гостя

Виїзд завершує проживання й формує фінальний розрахунок.

Кроки виїзду

  1. адміністратор відкриває картку проживання;
  2. перевіряє всі нарахування;
  3. додає ресторанні замовлення, якщо вони були перенесені на номер;
  4. додає додаткові послуги;
  5. формує фінальний рахунок;
  6. приймає оплату;
  7. закриває проживання;
  8. змінює статус номера на «Прибирання»;
  9. після прибирання номер повертається в статус «Вільний».

Додаткові послуги готелю

Готель може надавати послуги, які додаються до рахунку гостя.

Приклади послуг

  • сніданок;
  • трансфер;
  • паркінг;
  • СПА;
  • сауна;
  • пральня;
  • дитяча кімната;
  • конференц-зал;
  • додаткове ліжко;
  • ранній заїзд;
  • пізній виїзд.

Поля послуги

Поле Опис
Назва послуги Наприклад: Сніданок, СПА, Паркінг
Категорія Харчування, транспорт, сервіс, інше
Ціна Вартість послуги
Одиниця Доба, година, раз, послуга
Активність Чи доступна послуга для нарахування

Прибирання номерів

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

Статуси прибирання

Статус Значення
Очікує прибирання Номер звільнений і потребує прибирання
В роботі Прибирання виконується
Перевірка Номер потрібно перевірити адміністратору
Готовий Номер готовий до наступного гостя

Ресторан у складі готелю

Ресторан може працювати як окремо, так і з прив’язкою до проживання гостя.

Довідник «Столи ресторану»

Поле Опис
Номер столу Назва або номер столика
Зона Зал, тераса, бар, VIP
Кількість місць Скільки гостей можна посадити
Статус Вільний, зайнятий, заброньований

Довідник «Меню ресторану»

Поле Опис
Назва страви або напою Позиція меню
Категорія Салати, гарячі страви, десерти, напої
Ціна Вартість позиції
Вага або об’єм Наприклад: 250 г, 0,5 л
Фото Опціонально
Статус Активна або недоступна

Ресторанне замовлення

Ресторанне замовлення може бути прив’язане до столу або номера.

Поля ресторанного замовлення

Поле Опис
Номер замовлення Унікальний номер
Тип замовлення У залі, у номер, самовивіз
Стіл Якщо гість сидить у ресторані
Номер готелю Якщо замовлення прив’язане до проживання
Гість Хто замовляє
Офіціант Хто прийняв замовлення
Позиції меню Страви та напої
Сума Загальна вартість
Статус Прийняте, на кухні, готове, доставлено, оплачено

Замовлення їжі в номер

Room service дозволяє гостю замовити страви безпосередньо в номер.

Процес замовлення в номер

  1. гість або адміністратор створює замовлення;
  2. обирається номер проживання;
  3. додаються страви й напої;
  4. замовлення передається на кухню;
  5. кухня готує замовлення;
  6. працівник доставляє його в номер;
  7. замовлення або оплачується одразу, або додається до фінального рахунку гостя.

Рахунки і оплати

Система повинна дозволяти формувати як окремі, так і єдині рахунки.

Варіанти рахунків

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

Єдиний рахунок гостя

Єдиний рахунок може включати:

  • проживання;
  • туристичний збір, якщо потрібно;
  • сніданки;
  • ресторан;
  • room service;
  • СПА;
  • паркінг;
  • трансфер;
  • інші додаткові послуги.

Способи оплати

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

Особистий кабінет гостя

Кабінет гостя потрібен для самостійного перегляду бронювань і рахунків.

Функції кабінету гостя

Гість повинен мати можливість:

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

Сповіщення

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

Події для сповіщень

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

Звіти

Звіт «Зайнятість номерів»

Звіт показує завантаженість номерного фонду.

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

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

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

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

  • номер бронювання;
  • гостя;
  • номер;
  • дату заїзду;
  • дату виїзду;
  • статус;
  • суму проживання.

Звіт «Доходи готелю»

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

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

  • проживання;
  • додаткові послуги;
  • ресторан;
  • room service;
  • загальну суму;
  • оплати готівкою;
  • оплати карткою;
  • борги.

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

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

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

Звіт «Прибирання номерів»

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Критерій Бали Що перевіряється
Реалізація обліку номерного фонду і столів 20 Типи номерів, номери, статуси номерів, столи ресторану, меню
Процеси бронювання, поселення, замовлення страв 20 Бронювання, календар зайнятості, поселення, виїзд, ресторанні замовлення, room service
Формування рахунків за проживання та харчування 20 Проживання, додаткові послуги, ресторан, єдиний рахунок, оплати
Звіти про доходи, зайнятість номерів, популярні страви 20 Завантаженість номерів, бронювання, доходи, ресторан, прибирання
Інтерактивність через AJAX, особисті кабінети, сповіщення 20 AJAX-бронювання, статуси, кабінет гостя, сповіщення, оновлення календарів
Разом 100 Максимальна оцінка

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

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

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

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

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

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

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

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

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

Примітка

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

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

Коротко

Питання Відповідь
Що потрібно створити? Комплексний модуль готелю з рестораном
Які головні довідники? Типи номерів, номери, гості, послуги, столи ресторану, меню
Який головний процес? Бронювання, поселення, проживання, рахунок, оплата, виїзд
Що має включати єдиний рахунок? Проживання, додаткові послуги, ресторан, замовлення в номер
Що має відбуватися після виїзду? Номер переходить у статус прибирання
Що має відбуватися після прибирання? Номер знову стає вільним
Які звіти потрібні? Зайнятість номерів, бронювання, доходи, ресторан, прибирання
Що є критичною вимогою? Не можна допустити подвійне бронювання номера на один період

Див. також