Система бронирования мест в отелях города

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



? цена, которую готов платить клиент за проживание. Max_priceintМаксимальная цена, которую готов платить клиент за проживание. WishestextДополнительные пожелания клиента.

В таблице demand содержится ряд указателей на таблицы, которые помимо идентификатора содержат лишь поле name: transfer (таблица 3.25), status (таблица 3.26), price_type (таблица 3.27), connection_type (таблица 3.28). Все эти таблицы содержат строго определенный заказчиком перечень значений, который представлены в соответствующих таблицах (список значений может быть расширен).

Таблица 3.25 - Описание таблицы demand базы данных

Названиетип данныхОписаниеid_transferintИдентификатор трансфера. Первичный ключ. namevarchar (40) Возможные значения: Без трансфера, От аэропорта до гостиницы, От вокзала до гостиницы.

Таблица 3.26 - Описание таблицы status базы данных

Названиетип данныхОписаниеid_statusintИдентификатор статуса заявки. Первичный ключ. namevarchar (40) Возможные значения: Не рассмотрена, Отклонена, В обработке, Выполнена.

Таблица 3.27 - Описание таблицы price_type базы данных

Названиетип данныхОписаниеid_price_type intИдентификатор типа оплаты. Первичный ключ. namevarchar (70) Возможные значения: Наличными, Перевод от физического лица, Перевод от юридического лица.

Таблица 3.28 - Описание таблицы connection_type базы данных

Названиетип данныхОписаниеid_connection_typeintИдентификатор типа связи. Первичный ключ. namevarchar (20) Возможные значения: По телефону, По электронной почте, С помощью icq.

Также для полного описания заявки используется описанная ранее таблица phone (таблица 3.18) и таблица person (таблица 3.29), содержащая необходимую информацию непосредственно о клиетне.

Таблица 3.29 - Описание таблицы person базы данных

Названиетип данныхОписаниеid_personintИдентификатор личности. Первичный ключ. id_cityintИдентификатор города. Указывает на город, из которого приезжает клиент. surnamevarchar (70) Фамилия клиента. namevarchar (70) Имя клиента. emailvarchar (150) Электронный адрес клиента.

Основным классом, обеспечивающим в данной структуре заявленную функциональность выступает класс Demand.

3.2 Разработка дополнительного функционала системы управления сайтом

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

3.2.1 Разработка структуры фотогалереи

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

Рисунок 3.6 - ER-диаграмма фотогалерей номеров и гостиниц

Любая фотогалерея прежде всего состоит непосредственно из самих фотографий (далее для общности изображений), для описания которых служит таблица image (таблица 3.30).

Таблица 3.30 - Описание таблицы image базы данных

Названиетип данныхОписаниеid_imageintИдентификатор изображения. Первичный ключ. id_folderintИдентификатор папки. Указывает на папку, в которой лежит данная фотография. id_createdintИдентификатор создания. По нему находится информация о первом внесении информации об изображении в базу данных. id_modifyintИдентификатор создания. По нему находится информация о последних изменениях данных об изображении. namevarchar (150) Название фотографии. altvarchar (150) Альтернативный текст для изображения. Выводится, если броузер по каким-либо причинам не может показать изображение, или при наведении на него. widthintШирина изображения в пикселях. heightintВысота изображения в пикселях. sizeintРазмер изображения в байтах.

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

Таблица folder (таблица 3.31) содержит информацию о папке, в которую записан соответствующий файл. В данном случае это фотография.

Таблица 3.31 - Описание таблицы folder базы данных

Названиетип данныхОписаниеid_folderintИдентификатор папки. Первичный ключ. fol_id_folderintИдентификатор папки. Указывает на папку, в которой лежит данная папка. id_createdintИдентификатор создания. По нему находится информация о первом внесении информации об изображении в базу данных. id_metaintИдентификатор мета данных. По нему находится информация о мета-данных по умолчанию для страниц, лежащих в данной папке. namevarchar (150) Логической название папки. folder_adressvarchar (150) Физическое название папки.

За формирований фотогалерей отвечают отдельные таблицы number_galery (таблица 3.32) и hotel_galery (таблица 3.33). По идентификатору номера или гостинцы можно найти те фотографии, которые к ним относятся, а значит и сформировать фотогалерею.

Таблица 3.32 - Описание таблицы number_galery базы данных

Названиетип данныхОписаниеid_numberintИдентификатор номера. Первичный ключ. id_imageintИдентификатор изображения. Первичный ключ. list_numintСортировочный номер. Позволяет сортировать изображения в фотогалерее.

Таблица 3.33 - Описание таблицы hotel_galery базы данных

Названиетип данныхОписаниеid_hotelintИдентификатор гостиницы. Первичный ключ. id_imageintИдентификатор изображения. Первичный ключ. list_numintСортировочный номер. Позволяет сортировать изображения в фотогалерее.

Следует отметить, что данная структура позволяет формировать любые