Выбор мест - второй шаг процедуры приобретения билетов. Доступ к странице осуществляется путем нажатия кнопки "Выбрать места" всплывающего окна "Предварительное наличие мест", либо путем клика по ссылке с временем сеанса. Основную часть страницы занимает план зала, показанный на рис. 5.1, над которым выводится информация о фильме выбранном на предыдущем шаге.
Рисунок 5.1. План зала.
План зала может отличаться от приведенного на рис. 5.1, если приобретаются билеты в другой зал.
Билетная система кинотеатра, с которой взаимодействует система онлайн-продаж, является многопользовательской. Это означает, что одновременно к информационной системе кинотеатра обращаются:
В силу указанных причин информация о наличии свободных мест, отображаемая на плане зала, быстро теряет актуальность. Иными словами, данные о свободных, забронированных и проданных местах являются абсолютно достоверными на момент формирования страницы с планом зала. Чем больше времени проходит с момента формирования страницы до нажатия кнопки "Перейти к оплате" (см. рис 5.1), тем больше вероятность коллизии: определенные места могут пытаться приобрести несколько пользователей системы.
Система обнаружит такую ситуацию и не допустит продажи одного и того же места различным пользователям. Однако, обработка этой ситуации выполняется на следующем шаге процедуры покупки и не избавляет от необходимости выбора других мест.
Следует придерживаться следующих рекомендаций по работе с системой:
Выбор мест осуществляется при помощи плана зал. При наведении курсора мыши на место, система отображает номер ряда, номер места и его стоимость, как показано. на рис. 5.1. Для выбора места необходимо кликнуть левой кнопкой мыши по его изображению. В ответ система помечает его зеленым на схеме зала, а сумма покупки, будет автоматически пересчитана, как показано на рис. 5.2.
Рисунок 5.2. Блок, содержащий сведения о текущей покупке.
В настоящий момент в системе онлайн-продажи билетов кинотеатра "Галактика" (г. Сургут) существует единственный метод оплаты: оплата банковской картой. При этом методе оплаты система добавляет к базовой стоимости билетов сервисный сбор в размере 5% и расчитывает итоговую сумму покупки, которая будет списана с банковской карты.
В системе существует пять категорий мест, отображаемых на плане зала:
Приведенная выше информация содержится в блоке, который расположен ниже плана зала (см. рис. 5.3).
Рисунок 5.3. Категории мест.
Количество мест, приобретаемых единовременно, не должно превышать десяти. Это ограничение введено исходя из следующих соображений: места, выбранные на данном шаге, резервируются в билетной системе кинотеатра на 20 минут для того, чтобы пользователь успел их оплатить. Другие пользователи системы не могут ни приобрести, ни забронировать места, находящиеся в резерве. Возможность выбора неограниченного количества мест делает систему уязвимой к действиям злоумышленников, резервирующих и не оплачивающих билеты. При попытке выбрать более 10 мест единовременно система выдает сообщение, показанное на рис. 5.4.
Рисунок 5.4. Сообщение об ограничении количества единовременно приобретаемых билетов.
Повторное нажатие левой кнопкой мыши на выбранные ранее места позволяет снять с них отметку. Нажатие кнопки "Перейти к оплате", показанной на рис. 5.2, резервирует выбранные места в билетной системе кинотеатра на 25 минут и приводит к появлению окна, показанного на рис. 5.5.
Рис 5.5. Окно ввода номера телефона и перехода на сайт платежного шлюза.
Номер телефона, отображаемый в форме по умолчанию, берется из профиля зарегистрированного пользователя. Система позволяет изменить номер телефона, на который будет отправлено SMS-сообщение с кодом покупки в случае успешной оплаты. При этом номер, хранимый в профиле, будет автоматически заменен на номер, введенный в этом окне. Поле обязательно для заполнения. Номер сотового телефона указывается в федеральном формате.
После нажатия на кнопку "Оплатить", пользователь перенаправляется на сайт платежного шлюза.
Кнопка "Отменить" (см. рис 5.5) позволяет отменить резервирование мест в билетной системе кинотеатра. Это правильный и цивилизованный способ отказа от покупки: выбранные ранее места сразу же становятся доступны для приобретения другим потенциальным клиентам кинотеатра. При этом места на плане зала продолжают отображаться как выбранные. В противном случае, резервирование автоматически снимается билетной системой кинотеатра только через 25 минут после нажатия на кнопку "Перейти к оплате" при условии, что от платежного шлюза не поступило сведений об успешном списании средств. Система онлайн-продаж побуждает пользователей цивилизованно и своевременно отменять незавершенные покупки: при наличии зарезервированных, но неоплаченных билетов совершение новых покупок невозможно. Система выдает сообщение, показанное на рис. 5.6.
Рисунок 5.6. Сообщение об ошибке при наличии незавершенных покупок.
После закрытия окна с сообщением об ошибке, выше плана зала будет выведено предупреждающее сообщение, показанное на рис. 5.7. Необходимо перейти по ссылке "Мои покупки".
Рисунок 5.7. План зала, содержащий предупреждающее сообщение о наличии незавершенных покупок.
После перехода по ссылке "Мои покупки" система отобразит соответствующий раздел. При этом в блоке "Покупки, ожидающие оплаты" будут показаны места, ожидающие оплаты или отмены пользователем, как показано на рис. 5.8.
Рисунок 5.8. Раздел "Мои покупки", содержащий блок "Покупки, ожидающие оплаты".
Крайне важно завершить покупку до истечения времени, оставшегося до автоматической отмены резервирования выбранных мест в билетной системе кинотеатра. При отсутствии действий со стороны пользователя и истечении времени резервирования, страница автоматически обновится, выбранные места перестанут отображаться в блоке "Покупки, ожидающие оплаты" и станут доступны для приобретения другим клиентам кинотеатра.