- •Содержание
- •Введение
- •1. Описание предметной области
- •2. Блок – схемы операций программы
- •2.1 Регистрация пассажиров
- •3 Обоснование выбора и описание стека используемых технологий
- •2.2 Аутентификация пассажиров (вход в систему)
- •2.3 Операция покупки билета
- •2.4 Операция бронирования места в самолете
- •2.5 Операция отмены бронирования
- •4. Архитектура разрабатываемого приложения
- •Примеры работы приложения
- •Список используемой литературы
- •Приложение а
2.2 Аутентификация пассажиров (вход в систему)
Блок-схема операции аутентификации пассажира представлена на рисунке 2.
Рисунок 2 – Блок-схема операции аутентификации
За процесс аутентификации пассажиров отвечает функции login1, Функция проверяет, заполнены ли поля для ввода имени пользователя и пароля. Если одно из полей пустое, выводит сообщение об ошибке. Создает подключение к базе данных MySQL и формирует курсор для выполнения запросов [2].
Затем выполняет запрос количества записей в таблице data в базе данных и получает значения имени пользователя и пароля из соответствующих полей в таблице data. Сравнивает введенные данные с данными в базе данных. Выводит сообщение о успешном входе, если данные совпали. В противном случае выводит сообщение о неправильном логине или пароле.
2.3 Операция покупки билета
Блок-схема операции покупки билета на самолет представлена на рисунке 3.
Рисунок 3 – Блок-схема операции покупки билета
Функция pokupka() принимает данные о покупке билета из различных полей ввода пользовательского интерфейса. Она проверяет, что все поля заполнены, затем создает подключение к базе данных MySQL, выполняет запрос на добавление информации о покупке в таблицу bilet, фиксирует изменения и закрывает соединение с базой данных. В случае успешной покупки, выводятся информационные окна, уведомляющие пользователя о завершении операции.
2.4 Операция бронирования места в самолете
Блок-схема метода операции бронирования места в самолете представлена на рисунке 4.
Рисунок 4 – Блок-схема операции бронировании места в самолете
Функция brons() создает интерфейс для выбора места в самолете и его бронирования. Функция создает фрейм, содержащий кнопки, представляющие сиденья в самолете, и позволяет выбирать конкретное место, после чего можно забронировать выбранное место, указав номер паспорта пассажира.
При выборе места происходит изменение его визуального статуса (изменение цвета кнопки). Затем при бронировании места происходит проверка наличия пассажира с указанным номером паспорта в базе данных. Если пассажир найден, проверяется, было ли уже забронировано место для него. Если бронирование отсутствует, информация о выбранном месте сохраняется в базе данных. В случае ошибки при взаимодействии с базой данных выводится сообщение об ошибке.
2.5 Операция отмены бронирования
Блок-схема операции отмены бронирования представлена на рисунке 5.
Рисунок 5 – Метод перехода на панель администратора
Функция drop_brons удаляет информацию о бронировании места в самолете для пассажира по номеру паспорта из базы данных irsts, обрабатывая исключения и закрывая соединение с базой данных после операции удаления
3 Обоснование выбора и описание стека используемых технологий
В разработке системы для покупки билета и бронирования места в самолете выбран язык программирования Python и различные технологии:
Библиотека Tkinter для GUI:
Kinter - это стандартная библиотека Python для создания графических интерфейсов пользователя (GUI). Она является частью стандартной библиотеки Python, что делает ее легко доступной и простой в использовании для создания интерфейсов.
Преимущества: Простота, удобство использования, доступность как часть стандартной библиотеки Python.
Tkinter.messagebox является частью библиотеки tkinter и предоставляет функции для вывода стандартных диалоговых окон, таких как сообщения об информации, предупреждения, ошибки и запросы подтверждения действий пользователя [3].
Преимущества: Обеспечивает интуитивно понятные сообщения и запросы, что делает приложение более удобным для пользователя и уменьшает возможность ошибок при взаимодействии с интерфейсом
MySQL для хранения данных:
MySQL - это популярная реляционная база данных с открытым исходным кодом, которая предлагает надежное хранение и управление данными. Использование MySQL в проекте обеспечивает надежность и гибкость для хранения информации о пользователях, билетах и бронировании.
Преимущества: Открытый исходный код, хорошо документирован, масштабируемость, надежность.
Mysql.connector для взаимодействия с MySQL:
Библиотека mysql.connector предоставляет удобные инструменты для взаимодействия с базой данных MySQL из Python, делая процесс взаимодействия с базой данных более простым и удобным.
Преимущества: Легкость в использовании, поддержка базовых операций с базой данных.
В целом, выбранные технологии позволяют создать систему, которая обладает удобным интерфейсом для пользователей, обеспечивает надежное хранение и управление данными, а также облегчает работу с изображениями в приложении.
