51088

СИСТЕМА УПРАВЛІННЯ ОНЛАЙН ЗАМОВЛЕННЯМИ ЗАКЛАДУ ХАРЧУВАННЯ

Лабораторная работа

Информатика, кибернетика и программирование

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

Украинкский

2014-02-10

1.14 MB

0 чел.

Факультет прикладної математики

Кафедра програмного забезпечення комп’ютерних систем

ЗАТВЕРДЖЕНО

Завідувач кафедри

__________ І.А. Дичка

“___” ____________ 2012 р.

ПРОГРАМНА СИСТЕМА УПРАВЛІННЯ ОНЛАЙН ЗАМОВЛЕННЯМИ ЗАКЛАДУ ХАРЧУВАННЯ

Керівництво користувача

ПЗКС.045440-05-34

ПОГОДЖЕНО

Керівник проекту:

__________А.В. Петрашенко 

Нормоконтроль:                   Виконавець:  

   

__________М.В. Онай                   __________А.В. Дяченко

2012

ЗМІСТ

1. Опис структури web-ресурсу 3

2. Опис сторінок системи 5

3. Процедура авторизації користувача 12

4. Опис етапів реєстрації замовлення 13

5. Робота із сторінкою персоналу кухні 15

6. Робота із сторінкою персоналу адміністрації 16

  1.  Опис структури web-ресурсу

Загальна структура web-ресурсу з точки зору користувача.

Рис. 1. Схема варіантів використання системи

Як видно із рис. 1 web-ресурс складається із таких сторінок:

  1.  головна сторінка «default.aspx»;
  2.  сторінка кошику «Cart.aspx»;
  3.  сторінка реєстрації «Registration.aspx»;
  4.  сторінка авторизації «Login.aspx»;
  5.  сторінка персоналу кухні «Kitchen.aspx»;
  6.  сторінка персоналу доставки «Delivery.aspx»;
  7.  сторінка адміністрації для редагування даних «Modify.aspx»;
  8.  сторінка адміністрації для перегляду статистики «Statistics.aspx».

На сторінці «default.aspx», у вигляді меню, відображаються різні категорії страв, такі як напої, супи, салати, страви із риби і т.д. При виборі категорії користувач може бачити список страв, які належіть до неї. Він має можливість вибору страви і при переході за посиланням, він отримає повну інформацію про обраний продукт, а саме зображення, інгредієнти страви та її вартість. Ця інформація надається для зручності клієнтів та з метою максимального задоволення їхніх потреб.

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

На сторінці «Modify.aspx»  із певним рівнем доступу, адміністратор ресторану має можливість редагування меню, він також може додавати нові страви в меню або видаляти ті, що не готуються, редагувати існуючі та нові записи в меню тощо. Також адміністратор має доступ до сторінки «Statistics.aspx» із статистичною інформацією, де наводяться дані про страви, які найчастіше замовляються.

Кожного разу, коли надходить замовлення, воно зберігається в базі даних та потрапляє в окремий список, що доступний на сторінці персоналу кухні «Kitchen.aspx». Список кухні постійно оновлюється, оскільки з’являються нові замовлення та зникають вже виконані. Кожен елемент списку містить назву страви, складові страви, рецепт приготування та час надходження замовлення. Запис із списку зникає в тому випадку, коли персонал помітить всі його елементи як виконані. Список завжди сортується по порядку зростання часу.

Кожного разу, коли замовлення на кухні виконується і позначається персоналом як виконане, воно потрапляє у список очікування доставки. До сторінки списку доставки «Delivery.aspx» має доступ персонал, який комплектує готове замовлення та виконує доставку. Список доставки ділиться на категорії страв із кухні, які вже готові, та елементів, які не мають відношення до кухні. Список постійно оновлюється, як тільки відбулись якісь зміни.

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

  1.  Опис сторінок системи

 Кожна сторінка інтерфейсу користувача має такі загальні елементи:

  1.  шапка сторінки;
  2.  головне меню сайту;
  3.  основна частина сторінки.

Рис. 2. Сторінка вибору страви

Основна частина головної сторінки зображеної на рис. 2 містить меню ресторану, згенероване із даних таблиці «DishType» бази даних, а також поля для  опису обраної страви які містить:

  1.  назву;
  2.  актуальну ціну;
  3.  фотографію готової страви.;
  4.  опис;
  5.  структуру.

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

Рис. 3. Сторінка адміністратора для редагування елементів меню

Основна частина сторінки «Modify.aspx», зображеної на рис. 3, складається із меню ресторану для адміністратора, згенероване із даних таблиці «DishType» бази даних. Воно відрізняється тим, що має інший варіант виводу інформації, а також додатковими пунктами меню для того, щоб створити, у разі необхідності, нову страву.

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

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

Рис. 4. Сторінка адміністратора для додання нової страви

На рис. 4 зображений елемент меню «new dish», за допомогою якого можна додати нову страву, а всі елементи для редагування за замовчанням стануть пустими. Також замість кнопок редагування та видалення страви з’явиться кнопка додання страви.

Рис. 5. Сторінка статистики популярності страв

Ще одна із можливостей адміністратора – це перегляд статистики популярності страв (рис. 5),  тобто він може подивитись список страв серед виконаних замовлень відсортованих по максимальній кількості.

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

  1.  назва;
  2.  кількість;
  3.  ціна.

Назва позначає найменування страви, кількість позначає загальну кількість виконаних страв у всіх замовлення, ціна позначає актуальну ціну на дану страву.

Рис. 6. Сторінка персоналу кухні

Основна частина сторінки персоналу кухні (рис. 6), складається із  сформованих замовлень у вигляді меню, згенерованого із даних таблиці «Orders» бази даних. Воно відрізняється від меню тим, що має інший варіант позначення, а саме  складається із частин «Order» та його номеру.

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

Рис. 7. Сторінка персоналу доставки

Основна частина сторінки персоналу доставки (рис. 7), складається із сформованих замовлень у вигляді меню, згенерованого із даних таблиці «Orders «бази даних та маючи відповідний статус. Воно відрізняється від меню тим, що має інший варіант позначення, а саме  складається із частин «Order» та його номеру.

Опис замовлення, містить інформацію про замовлення у вигляді наступних елементів:

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

Якщо користувач не має профілю та не бажає його реєструвати то у випадку коли він буде реєструвати замовлення його буде пере направлено на сторінку короткої реєстрації (рис. 8).

Рис. 8. Сторінка короткої реєстрації користувача

Основна частина сторінки, складається із форми заповнення даних користувача, необхідних для виконання замовлення, на ній повинні бути введені такі елементи:

  1.  ім’я користувача;
  2.  телефон;
  3.  адреса.

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

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

Рис. 9. Сторінка кошику користувача

Основна частина сторінки, складається із форми кошику і вигляді таблички, у якій присутні наступні стовпці даних:

  1.  назва страви;
  2.  кількість одиниць страви;
  3.  ціна страви;
  4.  кнопка видалення страви зі списку.

Під таблицею міститься кнопка реєстрації замовлення та інформація про загальну суму замовлення.

  1.  Процедура авторизації користувача

Для авторизації користувачу потрібно перейти на сторінку «Login.aspx». Це можна зробити натиснувши посилання «Sign In» у правій частині головного меню сайту. Після натиснення система пере направить користувача на сторінку авторизації де йому буде запропоновано ввести свій логін та пароль, після цього у раз успішної авторизації його буде пере направлено на головну сторінку сайту. Якщо користувач має певні привілегії системі відкриє йому доступ до відповідних посилань у головному меню.

  1.  Опис етапів реєстрації замовлення

На головній сторінці користувач має змогу обрати зі списку меню страви та додати їх у свій кошик. У разі вибору ним із меню деякої страви, на основі закешованих даних про страви взятих і бази даних на етапі формування сторінки, буде відображена інформація про страву. Він матиме змогу переглянути опис, ціну, побачити вигляд готової страви. Якщо страва сподобалась користувачу він може натиснути кнопку «Set to cart», попередньо обравши кількість одиниць цієї страви за допомогою елемента поруч із кнопкою. Натиснувши кнопку користувач додає страву до кошику. На цьому етапі система формує для користувача сесію та заносить до неї дані про його замовлення, таким чином дані не заносяться в базу, доки не буде остаточно вирішено користувачем зареєструвати замовлення.

На всіх сторінках у шапці сайту у правому кутку відображається іконка кошику. Вона відображає поточний стан кошику, може бути два стани: пустий та не пустий (рис. 10).

Рис. 10. Стани іконки кошику

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

Обравши всі елементи свого замовлення користувачу необхідно його зареєструвати. Для реєстрації замовлення необхідно перейти на сторінку кошику, це можна зробити або натиснувши на іконці кошику у шапці сайту або натиснувши на елементі меню. Потрапивши на сторінку система формує користувачеві його кошик у вигляді таблиці, а також рахує загальну суму замовлення та показу її у вигляді поля під таблицею (рис. 11).

Рис. 11. Таблиця замовлення користувача

Таблиця містить наступні елементи

  1.  назва страви;
  2.  кількість одиниць страви;
  3.  ціна страви;
  4.  кнопка видалення страви зі списку.

Користувач переглядаючи своє замовлення може змінити його видаливши зайві страви. Це можна зробити за допомогою кнопки «delete» у рядку страви. Коли користувач натисне цю кнопку система отримає ідентифікаційний номер страви, яку обрав для видалення користувач, отримає дані його кошику із сесії у вигляді списку об’єктів, знайде необхідний та, якщо кількість елементів більше ніж один зменшить на одиницю, якщо ж кількість рівна одиниці то видалить зі списку, потім внесе дані назад у сесію.

Зробивши необхідні зміни у замовленні, якщо це було необхідно, користувач реєструє замовлення натиснувши кнопку «Order».

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

  1.  Робота із сторінкою персоналу кухні

Користувач, який є членом персоналу кухні, для доступу до своєї робочої сторінки повинен авторизуватись як і звичайний користувач. Авторизувавшись та увійшовши на сторінку «Kitchen.aspx» йому буде представлений список замовлень у вигляді, сформованого на основі інформації із бази даних, меню

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

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

Коли персонал кухні виконає даний  елемент замовлення та натисне кнопку «done» елемент зникне зі списку та буде помічений у базі даних як готовий, у разі готовності усіх елементів замовлення статус самого замовлення міняється на «ready for delivery», тобто замовлення зникає зі списку персоналу кухні.

  1.  Робота із сторінкою персоналу адміністрації

Користувач, який авторизований у системі та має права адміністратора, має доступ до сторінок «Modify.aspx» та «Statistic.aspx».

Сторінка адміністратора для модифікування містить меню страв та поля для їх редагування. Для сторінки адміністратора меню формується по принципу, як і на головній сторінці але окрім цього додається додатковий елемент меню «new dish», за допомогою якого можна додати нову страву. Обираючи цей елемент всі елементи для редагування за замовчанням стануть пустими. Також замість кнопок редагування та видалення, які доступні при редагування страви, з’явиться кнопка додання страви. Якщо обрати якийсь із елементів меню, який являє собою назву страви, то уся доступна інформація про неї буде доступна у полях для редагування, ввівши необхідні зміни користувач може натиснути кнопку «Refresh» інформація оновиться в базі даних.

Окрім оновлення страви адміністратор, вибравши необхідний елемент меню, може видалити його, натиснувши на кнопку «delete».

Ще одна можливість користувача з правами адміністратора це перегляд статистики, для цього йому доступна сторінка «Statistic.aspx». На даній сторінці у вигляді таблиці будуть відображені виконані у замовленнях страви за їх кількістю по спаданню.  


 

А также другие работы, которые могут Вас заинтересовать

28614. Архитектура фон Неймана 15.3 KB
  von Neumann architecture широко известный принцип совместного хранения программ и данных в памятикомпьютера. Всё изменила идея хранения компьютерных программ в общей памяти. Принцип однородности памяти. Программы и данные хранятся в одной и той же памяти.
28615. Структурные типы данных (массивы, записи, множества) 21.26 KB
  Массив - это структура данных, доступ к элементам которой осуществляется по номеру (илииндексу). Все элементы массива имеют одинаковый тип.
28616. Подпрограмма 21.26 KB
  Функции Другой вид подпрограммыфункцияоформляется аналогично процедуре. Отличительные особенности функции: она имеет только один результат выполнения но может иметь несколько входных параметров; результат обозначается именем функции и передаётся в основную программу. Функция оформляется в следующем виде: Function имя функции формальные параметры: тип: тип значения функции; Var . Вызов функции можно делать непосредственно внутри выражения.
28617. В программе на языке FPC 12.55 KB
  Если локальное и глобальное имя совпадают то в подпрограмме локальное имя блокирует глобальное. Формат доступа к глобальному имени: имя программы . глобальное имя .
28618. Процедурные типы 15.45 KB
  Для объявления процедурного типа используется заголовок процедуры функции в котором опускается ее имя например: type Prod = Procedure a b c: Real; var d: Real; Proc2 = Procedure var a b ; РгосЗ = Procedure; Func1 = Function: String; Func2 = Function var s: String: Real; Как видно из приведенных примеров существует два процедурных типа: типпроцедура и типфункция. Вычисление и печать значений этих функций реализуются в процедуре PRINTFUNC которой в качестве параметров передаются номер позиции N на экране куда будет...
28619. Процедуры с ближним и дальним адресом вызова 21.13 KB
  Возможность создавать опережающее описание для процедур позволяет решить следующую проблему: предположим в некоторой программе Вы используете две процедуры с именами Proc1 и Proc2 причем процедура Proc1 использует вложенную процедуру Proc2 а процедура Proc2 в свою очередь использует процедуру Proc1. Поскольку Вы не можете использовать не объявленную ранее процедуру то у Вас возникает проблема связанная с необходимостью развязать зацикленные друг на друга процедуры Proc1 и Proc2. Использование директивы Forward при объявлении процедуры...
28620. Описание и вызов процедур и функций 18.23 KB
  Формат описания процедуры имеет вид: procedure имя процедуры формальные параметры; раздел описаний процедуры begin исполняемая часть процедуры end; Формат описания функции: function имя функции формальные параметры:тип результата; раздел описаний функции begin исполняемая часть функции end; Формальные параметры в заголовке процедур и функций записываются в виде: var имя праметра: имя типа и отделяются друг от друга точкой с запятой. Вызов функции в Турбо Паскаль может производиться аналогичным способом кроме того имеется возможность...