Skip to content

Это приложение подключается к внешнему RESTful API для получения необходимых данных, а после чего имеет возможности создавать отчеты и расписания в удобном для них формате. Оно имеет простой и понятной пользовательский интерфейс, разработанный с использованием технологии WPF.

License

FredNekrasov/TimetableCreator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scheduling application.

Scheduling application - desktop C# WPF приложение для составления расписания с использованием веб-сервиса/RESTful API.

Спецификация проекта:

Функциональные требования:

  1. Captcha:
    • Имеется обязательная капча при запуске приложения для проверки, является ли пользователь человеком.
  2. Управление данными:
    • Добавление, изменение и удаление информации о:
      • cеместрах,
      • неделях,
      • предметах,
      • типах аудиторий,
      • кабинетах,
      • преподавателях,
      • группах,
      • пaрах,
      • днях.
  3. Проверка корректности информации:
    • Реализация проверок на корректность введенных данных перед отправкой на сервер.
  4. Интеграция с веб-сервисом:
    • Взаимодействие с RESTful API для обмена данными о расписании.
  5. Экспорт данных:
    • Возможность экспорта данных в формат Excel для печати.

Нефункциональные требования:

  1. Интерфейс:
    • Разработка пользовательского интерфейса с использованием технологии WPF для удобной навигации и управления данными.
  2. Производительность:
    • Оптимизация приложения для быстрого отклика на действия пользователя при работе с данными.
  3. Тестирование:
    • Проведение тестирования функционала приложения для обеспечения корректной работы всех компонентов.

Технические детали:

  1. Язык программирования: C#
  2. Технологии: WPF, RESTful API для обмена данными.

Описание

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

Важно отметить, что информацию о днях можно только добавлять и удалять, не редактировать. Приложение обеспечивает проверку вводимой информации на корректность, что помогает избежать ошибок при составлении расписания. Благодаря использованию RESTful API, приложение обладает гибкостью и может обновлять данные в реальном времени, отображая актуальное расписание. С помощью этого приложения вы сможете эффективно организовать рабочий процесс по составлению расписания, упростить управление данными и повысить точность информации. А также приложение обеспечит вас удобным и интуитивно понятным интерфейсом для работы с расписанием.

Пользователям также доступна возможность экспорта данных в Excel файл для удобного сохранения и отображения информации. Необходимо иметь в виду, что процесс экспорта данных может иметь свои особенности и нюансы, связанные с форматированием и структурой Excel файла.

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

Изображения

Капча

image image

Отображение списка данных

image image image

Создание excel файла по нажатию на кнопку "Excel файл"

image

Добавление новой пары

image image image

Проверка данных на корректность при добавлении новой аудитории.

image

Изменение данных пользователя

image image image image

Удаление информации о дне

image image

Тесты:
  1. Общая функциональность:

    • Загрузка приложения без ошибок
    • Наличие всех основных компонентов интерфейса
    • Навигация между различными разделами приложения
    • Возможность добавления, изменения и удаления информации об объектах базы данных
  2. Проверка информации на корректность:

    • Валидация вводимых данных на стороне клиента
    • Обработка ошибок ввода данных
  3. Взаимодействие с RESTful API:

    • Проверка корректности отправки запросов к API
    • Обработка ответов API (успешные и ошибочные)
  4. Экспорт данных в Excel:

    • Возможность экспорта данных в Excel file
    • Проверка корректности данных в экспортированном Excel файле
  5. Тестирование удаления данных:

    • Проверка корректности удаления записей из различных сущностей, у которых нет связей в других таблицах.
    • Проверка удаления записи, у которых есть связи в других таблицах.
    • Убедиться, что запись осталась нетронутой.
  6. Тестирование графического интерфейса:

    • Проверка отображения данных
    • Проверка работы элементов управления (кнопки, поля ввода, выпадающие списки и т. д.)
    • Адаптивность интерфейса под различные разрешения экранов
  7. Тестирование производительности:

    • Проверка скорости отклика приложения при работе с большим объемом данных
    • Тестирование при работе с медленным интернет-соединением

Использованные источники

В данном проекте использованы следующие библиотеки:

  1. Microsoft.AspNet.WebApi.Client: для взаимодействия с RESTful API и обмена данными.
  2. Newtonsoft.Json: для работы с JSON-форматом данных и их сериализации/десериализации.
  3. Microsoft.Office.Interop.Excel: для создания и обработки Excel файлов в составе приложения.
  4. MahApps.Metro.IconPacks.Material: для использования красочных иконок и улучшения пользовательского интерфейса.

About

Это приложение подключается к внешнему RESTful API для получения необходимых данных, а после чего имеет возможности создавать отчеты и расписания в удобном для них формате. Оно имеет простой и понятной пользовательский интерфейс, разработанный с использованием технологии WPF.

Topics

Resources

License

Stars

Watchers

Forks

Languages