Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МиСПрИС_КР_Петрова_Романова_Заболотников_9373.docx
Скачиваний:
11
Добавлен:
20.06.2023
Размер:
1.95 Mб
Скачать

7. Удаление продукта:

Для удаления класса из структуры была написана функция delete_product (см. Рис. 14).

В неё передаётся id продукта, который нужно удалить.

Рисунок 14 – Удаление продукта

  1. Просмотр подграфа:

Для просмотра получившегося классификатора была написана функция delete_product (см. Рис. 15).

В неё передаётся глубин, с которой начнёт свой вывод функция. 1 – с корня. Для полного просмотра графа необходимо ввести 1.

Рисунок 15 – Просмотр подграфа. Код

Тестирование процедур.

1. Добавление данных в таблицы:

Сначала была добавлена ЕИ: штуки. Следующим кодом (см. Рис. 16).

Рисунок 16 – Добавление ЕИ. Код

Рисунок 17 – Результат работы кода

Затем были добавлены классы (см. Рис. 18-19).

Рисунок 18 – Добавление классов

Рисунок 19 – Результат работы кода

Далее были добавлены продукты. (см. Рис. 20)

Рисунок 20 – Добавление продуктов

Рисунок 21 – Результат добавления продуктов

2. Просмотр подграфа

Для просмотра подграфа был написан код, представленный на рисунке ниже (см. Рис.22)

Рисунок 22 – Просмотр подграфа

Рисунок 23 – Результат вывода подграфа

3. Смена родителя класса

Для проверки кода смены родителя класса сменим родителя класса Фэнтези с Книг на Приключения.

Рисунок 24 – Код для смены класса

Рисунок 25 – Результат работы кода

4. Смена класса продукта.

Для тестирования этой функции заменим класс книги «Кровь эльфов» с Фэнтези на Приключения.

Рисунок 26 – Смена класса продукта

Рисунок 27 – Результат смены класса продукта

5. Удаление продукта:

Для проверки функции удаления продукта удалим «Красное божество».

Рисунок 28 – Удаление «Красного божества»

Рисунок 29 – Результат удаления

6. Удаление класса из классификатора:

Для тестирования этой функции удалим четвёртый класс «Приключения». Вместе с ним должны удалиться и продукты, которые принадлежат этому классу.

Рисунок 30 – Удаление четвёртого класса

Рисунок 31 – Результаты удаления в таблице классов

Рисунок 32 – Результат удаления в таблице продуктов

Создание пользовательского интерфейса.

Для написания программы по созданию пользовательского интерфейса была использована среда разработки Qt Creator (язык программирования – С++).

Данный интерфейс позволяет взаимодействовать с базой данных от имени администратора или от имени обычного пользователя. Каждый из видов пользователей имеет свой уровень доступа к возможностям по управлению БД. Для обеспечения такого доступа используется система авторизации "логин-пароль".

Сам интерфейс выглядит следующим образом (см. рис. 33):

Рисунок 33 – Интерфейс программы (для администратора)

Если войти под логином "user", то большая часть функций будет не доступна (см. рис. 34).

Рисунок 34 - Интерфейс программы (для пользователя)

Интерфейс программы позволяет выполнять те же функции, которые выполнялись в PostgeSQL. От пользователя требуется лишь ввести необходимые для управления данные.

Приведём примеры работы программы:

Рисунок 35 – Отображение продуктов

Рисунок 36 – Отображение классов

Рисунок 37 – Отображение родителей класса

Рисунок 38 – Отображение потомков класса

Рисунок 39 – Попытка отобразить продукты нетерминального класса

Рисунок 40 – Отображение продуктов конкретного класса

Рисунок 41 – Добавление класса

Рисунок 42 – Попытка добавить уже существующий класс

Рисунок 43 – Добавление продукта

Рисунок 44 – Результат добавления класса

Рисунок 45 – Результат добавления продукта

Рисунок 46 – Выбираем продукт для на удаление

Рисунок 47 – Удаление выбранного продукта

Рисунок 48 – Результат удаления выбранного продукта

Вывод.

В данной работе с помощью классификатора была создана и реализована модель предметной области «Книги». Реализация произведена в базе данных PostgreSQL. Проведено тестирование, показывающее корректную работу реализованных функций для работы с данными.

Также был создан интерфейс программы для пользовательского взаимодействия с базой данных. Проведены тесты работы программы и установлена корректность работы программы.