Дайте совет в проектировании системы бронирования-покупки билета на автобусы. Моя структура выглядит следующим образом:
Меня интересуют такие моменты:
Лучше никак не хранить. По-хорошему, у вас должны быть следующие сущности:
STATION
- станция (есть). Это справочник точек маршрутов.FLIGHT
- рейс (есть). Это абстрактый рейс как "вещь в себе".FLIGHT_ROUTE
- состав маршрута, то есть список станций, посещаемых автобусом. Он должен содержать FLIGHT_ID
- ссылку на маршрут, STATION_ID
- ссылка на станцию, ARRIVAL_TIME
, DEPARTURE_TIME
- время прибытия и отправления. Ну можно еще порядковый номер добавить, но это в принципе лишнее. Выбирая первую и последнюю по времени станцию для данного FLIGHT_ID
, вы получите пункт отправления и назначения.FLIGHT_RUN
- конкретный выезд в рейс. К нему вы будете привязывать билеты, автобусы, плановую и фактическую дату/время отправления.FLIGHT_TICKET
- фактически продаваемые билеты на конкретный рейс и дату. Там будет ссылка на рейс (FLIGHT_RUN
) и на покупателя (CLIENT
).FLIGHT_TICKET
.Как уже сказали в комментариях, это не задача программирования, это бизнес-задача. Но если это учебный проект и вопрос отдали на ваше усмотрение, можно взять часто используемый вариант разбивания на зоны. Делите станции по зонам, цена билета равна (некоторая фиксированная сумма) * (N зоны А - N зоны Б)
.
В принципе, ответил выше. Остается только добавить номер места в таблицу FLIGHT_TICKET
.
Не важно. Хорошо - это когда все работает быстро, удобно и без косяков. Плохо - когда наоборот. Сколько вам нужно внешних ключей, чтобы заработало хорошо, столько и делайте.
И еще. У вас часть сущностей названа во множественном числе, а часть - в единственном. Выработайте какой-то один стиль и работайте в нем - проще будет запоминать.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый день! Имеется массив данныхНеобходимо каждый элемент поочередно записать в бд(mysql), естественно при запуске цикла столкнулся с асинхронностью...
Добрый день! Мне нужно сделать программу, которая по названию города определяет его часовой пояс, используя стандартные библиотеки javaМожет...