Программа, реализованная с помощью платформы разработки Windows Forms с использованием базы данных и Requests
Программа создана при выполнении выпускной квалификационной работы с использованием реляционных баз данных и Requests-запросов.
После запуска программы откроется окно с меню для выбора дальнейших действий. Данные пользователя сохраняются в файл options.txt. Имеется возможность расчета нормы калорийности с учетом информации о пользователе, а также составления рациона питания. Загрузка калорий, белков, жиров и углеводов для каждого продукта производится с помощью запроса к сайту.
Главная форма запускается при открытии приложения, она позволяет произвести переход на остальные формы, а также отражает норму калорий и БЖУ для данного пользователя.
При запуске программы производится считывание данных из файла и подсчет норм калорийности с дальнейшим выводом на форму.
На форме с общей информацией пользователь может вводить свои параметры, которые будут использоваться при дальнейшем использовании приложения.
На форму были добавлены элементы для вывода и ввода данных, кнопки, а также переключатели.
Для сохранения данных пользователя был разработан класс OptionsClass. Класс содержит свойства, позволяющие запомнить все параметры, вводимые пользователем на форме. Также класс разрешено сериализовывать. Также класс содержит метод подсчета нормы калорийности BMR по формуле Харриса-Бенедикта.
На форме редактирования категорий возможно добавить удалить или переименовать категорию продуктов. Перечисленные действия реализуются с помощью SQL-запросов в базу данных.
Выбор действий производится с помощью переключателей, выполнение действия производится после нажатия на кнопку.
При выборе действия текст в полях и на кнопке генерируется с помощью программного кода. Поле со списком и поле ввода в зависимости от переключателя меняют свое положение или становятся невидимыми.
Форма для добавления продуктов позволяет добавлять продукт в базу данных вместе со всеми сопутствующими данными (категория, кКал, БЖУ). Также форма осуществляет поиск продуктов в базе данных и с помощью подключения к сети Интернет.
После инициализации элементов формы производится считывание данных со страницы в сети Интернет с помощью библиотеки HtmlAgilityPack, результатом выполнения данного блока является строка с HTML-кодом.
При вводе данных в строку поиска и нажатии кнопки по БД реализован поиск в базе данных с помощью запросов на выборку, после нахождения элементов они записываются в таблицу.
Форма позволяет создать план питания на конкретный день для конкретного приема пищи. Также на форме производится вывод данных о калорийности и содержанию БЖУ.
С данной формы может производиться переход на форму отчета и формы редактирования.
Отчет о питании позволяет просмотреть перечень продуктов питания с выводом всей информации в таблицу. Также имеется сводная таблица с подсчетом общей суммы калорий и БЖУ. Вывод данных производится в зависимости от выбранной даты.