Skip to content

wybin4/bus-route-accounting-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bus-route-accounting-system

Задание

Разработать программу, ведущую список сведений об отправлении и прибытии автобусов г.Ростова-на-Дону. Исходная информация должна содержать: номер рейса, название, время отправления и прибытия, время в пути, стоимость билета до конечного пункта. В программе должны быть реализованы функции поиска и редактирования данных в БД MySQL. Для ввода/вывода использовать стандартные элементы - кнопки, поля, списки и так далее.

Дополнение: Должен быть разрешён выбор конечного и промежуточного пункта следования.

Видео с работающим приложением

Демонстрация работоспособности

База данных

Схема базы данных выглядит следующим образом:

Файлы для экспорта структуры базы содержатся в папке src/main/resources/com/example/demo/sql_files. В них уже содержатся значения, но их можно перезаписать путём редактирования соответствующих файлов из папки src/main/resources/com/example/demo/files_for_db.

О самом приложении

Таким образом выглядит начальный экран, где можно выбрать пункт назначения и дату. Пункт назначения выбирается из соответствующей таблицы базы данных - таблицы routes, присоединённой к destination для получения названия - в данном случае имеются в виду конечные пункты каждого маршрута. При этом можно выбрать промежуточный пункт из любого маршрута, получаемый из таблицы stops.

Вид интерфейса для каждого случая будет отличаться - в случае выбора конечного пункта меню маршрутов будет выглядеть таким образом:

В случае же выбора промежуточного пункта меню маршрутов будет выглядеть так:

Также будет отличаться список остановок - с конечным пунктом назначения маршрут будет отображаться полностью, а с промежуточным - до выбранной остановки:

Это часть, к которой могут иметь доступ пользователи. Для администратора добавлена функция редактирования маршрутов. Но сначала администратору нужно подтвердить свой статус, войдя в систему. Эта часть сделана упрощённо, без добавления пользователей в базу данных - в программе есть только лишь администратор:

username = admin, password = sds2013

Из-за допущенных упрощений пользователь не сможет зарегестрироваться, а, соответственно, и войти, поэтому его просто выбросит в главное меню. Войдя в систему, администратор увидит следующую таблицу:

Он сможет найти нужный маршрут с помощью поля поиска:

А также скопировать маршрут в поля для ввода либо ввести собственный маршрут - и, нажав на кнопку "Добавить маршрут" - добавить соответствующий маршрут в таблицу и базу. Соответственно по кнопке "Обновить маршрут" и выбранному маршруту можно его отредактировать, а по кнопке "Удалить маршрут" - удалить. По двойному нажатию по любому маршруту можно открыть его остановки для редактирования. Здесь можно совершать аналогичные действия, что и с маршрутами:

Цена на маршрут фиксированная, но её может изменить администратор. Цена за каждую остановку рассчитывается по цене маршрута и времени до этой остановки, т.е.

общая цена за маршрут / количество остановок в маршруте * время до остановки / 100

Releases

No releases published

Packages

No packages published