План зрительного зала

Аватар пользователя DD 85 DD 85 6 ноября 2014 в 18:23

С помощью каких средств и модулей можно реализовать подобный план зрительного зала?

0 Thanks

Комментарии

Аватар пользователя DD 85 DD 85 6 ноября 2014 в 20:16
"<a href="mailto:sas@drupal.org">sas@drupal.org</a>" wrote:

Custom maps

Что это? Если модуль, то не пойму, какой?
Если имеется в виду вручную, то возникают вопросы. Например, идут разные спектакли, цены на них отличаются, что тогда?

Аватар пользователя sas@drupal.org sas@drupal.org 7 ноября 2014 в 10:25

Ясно что надо создавать views который будет выводить ссылки для заказа с использованием например qtip

Аватар пользователя DD 85 DD 85 7 ноября 2014 в 17:51

Сложность заключается в том, что не всегда через Интернет реализуются 100% билетов, да и создавать тысячи товаров-билетов для администратора просто убийственно.

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

Пока представляю структуру следующим образом:
Тип материала - зал
Дисплей ноды - спектакль

Есть идея создать план зрительного зала с помощью Field collection как поле ноды.

Но тут возникает другой вопрос - как сделать, чтобы план зала понимал, что определённое место уже купили, а какие-то вовсе не продаются через Интернет и их следует отображать проданными?

Аватар пользователя DD 85 DD 85 7 ноября 2014 в 18:08

То есть пока вижу план зала не как вьюс со списком товаров-билетов, а как некую клавиатуру, которую можно копировать для каждого спектакля с помощью Node Template. Где каждая кнопка-место имеет ссылку с параметрами-аргументами, ведущую на создание ноды-товара-билета и заполняет поля.

Аватар пользователя Orion76 Orion76 7 ноября 2014 в 18:57

А цена конкретного места статична или зависит от сеанса(фильма и т.п.)?
Если зависит - как расчитывается?

Я думаю,
План зала - словарь таксономии, термин - место.
Сеанс - нода.
Билет - нода связанная с термином-местом и нодой-сеансом (создается пользователем)

Вьюсом "выбирать" купленные места-билеты

Аватар пользователя DD 85 DD 85 7 ноября 2014 в 19:12
"orion76" wrote:

А цена конкретного места статична или зависит от сеанса(фильма и т.п.)?
Если зависит - как расчитывается?

Цена - это та ещё головная боль.
По-разному.
В основном конкретный спектакль имеет свою ценовую разбивку по секторам зала. Вот я и планировал сделать ноду с полем "План зала" и потом её клонировать под каждый показ спектакля.

Аватар пользователя adamant08 adamant08 7 ноября 2014 в 23:34

Как на меня - так проще самописная реализация.
Возможно я немного не точно представляю (или ошибочно) - но вижу примерно так:
0. Билет - место, дата, время, сеанс, зал.
1. Материал Зал - описание, фото и тп. + (дополнительные поля для передачи в форму схемы зала... возмождно и в svg.. скрытые для показа)
2. Материал Сеанс -связь с "залом", описание, фото и тп. + (доп поля для передачи в форму переменных таких как расписание и стоимость например: место от 1 по 10 - стоимость 100р, место в сектор 2 - стоимость 150р..... если покрутить - можно и в зависимости от времени показов сделать разные цены)
3. При выводе любого из материалов сеанс - формируем расписание (хоть таблица, хоть ис с календариком) убирая прошедшие по дате, при клике на конктретный показ (дата, время) - вызываем форму заказа - передаем дату и время показа, сеанс, зал, цены на места.
4. Формой читаем все переданные переменные + делаем запрос к базе на предмет уже заказанных билетов на этот сеанс -
получаем номера проданных мест -> имея все на борту - начинаем формировать вывод элементов в форме - ну к примеру - если каждая кнопка (путей реализации - много) - это конкретное место- для проданных мест - делаем неактивными или если использовать изображение для кнопок - меняем + не актив.
5. При выборе места - вызываем форму заказа билета с передачей всех параметров ( цена, место, сеанс, дата, зал)
P.S. Все выше - это мое мнение как бы я это пробовал сделать) При этом я б прикрутил фишку - с печатью билетов и генерации штрих кодов) - но это уже другая история