Покупка подарочных сертификатов на выбранную сумму
Всех приветствую! Подскажите пожалуйста, есть ли решение под данную задачу?:
Нужно сделать возможность покупки подарочного сертификата, одним клиентом, чтобы его можно было передать другому в качестве подарка, и тот человек мог им воспользоваться при оформлении заказа.
Другими словами – пользователь заходит в магазин, открывает страницу с выбором сертификата, там есть на выбор три варианта: сертификаты на 1 тысячу, на 5 тысяч, и сертификат с полем для ввода суммы. Таким образом он может подарить сертификат на 7 тысяч, к примеру. Или ввести произвольную сумму.
Также еще встает вопрос по поводу остатка какой-то суммы, т.е. мне подарили сертификат на 5 тысяч, а я использовал только 2, и рассчитываю оставшиеся 3 использовать в следующий раз.
Нужно сделать возможность покупки подарочного сертификата, одним клиентом, чтобы его можно было передать другому в качестве подарка, и тот человек мог им воспользоваться при оформлении заказа.
Другими словами – пользователь заходит в магазин, открывает страницу с выбором сертификата, там есть на выбор три варианта: сертификаты на 1 тысячу, на 5 тысяч, и сертификат с полем для ввода суммы. Таким образом он может подарить сертификат на 7 тысяч, к примеру. Или ввести произвольную сумму.
Также еще встает вопрос по поводу остатка какой-то суммы, т.е. мне подарили сертификат на 5 тысяч, а я использовал только 2, и рассчитываю оставшиеся 3 использовать в следующий раз.
Комментарии: 12
Готовых решений я не встречал. В самом простом варианте можно сделать так: сертификаты это отдельный товар, при его покупке в заказ записываем уникальный номер проданного сертификата, а при использовании по этому номеру находим заказ с сертификатом и вычитаем из стоимости покупок стоимость сертификата.
Странно, что нет готового решение казалось бы банальной задачи. На каждом шагу в каждом магазине есть система подарочных сертификатов… А как быть с возможностью выбирать сумму сертификата самим покупателем?
Плагин написать на событие msOnAddToCart. В нём проверить сертификат покупают или нет, если да то есть у него цена или нет, если нет, то проверять есть ли в $_POST поле с ценой, если есть, то устанавливать цену из этого поля.
Возможно, как-то модифицировать: msDiscount. Чтобы при покупку, сумма купона уменьшалась, когда становилась 0, то купон был не действителен.
Делал такое для SHK3 правда: golodnaya-panda.ru/shop/podarochnyie-sertifikatyi/sozdat-sertifikat.html
А можете подсказать, как реализовали?
— Создал форму с параметрами выбора суммы и тп
— При нажатии кнопки «В корзину» сохраняю куки с новой ценой, ловлю событие «OnSHKgetProductPrice»
— При нажатии кнопки «В корзину» сохраняю куки с новой ценой, ловлю событие «OnSHKgetProductPrice»
<?php
/* Выбор цены товара при добавлении в корзину. $price, $id, $purchaseArray */
case "OnSHKgetProductPrice":
// Конструктор
$price = $myprice;/// тут принимаем новое значение
$modx->event->output($price);
break;
Готового решения под данную задачу — нет.
Задача — не самая банальная =) Тем более с тем функционалом что вы описали.
Делал что-то подобное тут — www.gclinic.ru/podarochnyj-sertifikat
Форма реализована с помощью Formit и кастомных хуков. Это наверное самое простое что можно сделать на MODX (не нужно никаких плагинов, товаров и прочей мишуры).
После формирования заказа (отправки формы) — срабатывает нужный Хук и данные уходят в MS2 (генерируя и заказ и товар и всё что нужно) — затем перенаправляем пользователя на страницу оплаты с параллельной отправкой необходимых писем.
После успешной оплаты, пользователю на почту приходит сертификат на котором есть QR код (сертификат в виде прикрепленного изображения (можно и PDF сделать) плюс ссылка на сертификат).
При сканировании этого QR кода — нас перенаправляет на страницу проверки сертификата.
На страницу проверки мы обязательно должны прийти со специальным открытым ключем и ID заказа (данная инфа закладывается в QR код). Если не добавить открытый ключ, то есть очень большая вероятность слива изображений с сертификатами, ибо они будут хранится на вашем сервере в открытом доступе.
На странице проверки сертификата — по сути выводится информация о MS2 заказе. (т.е. дата создания, оплачен или не оплачен, использован или не использован, и сумма сертификата)
Т.е. мы можем спокойно отредактировать заказ в админке MS2 и при очередном обращении на эту страницу — будет уже другая инфа.
Задача — не самая банальная =) Тем более с тем функционалом что вы описали.
Делал что-то подобное тут — www.gclinic.ru/podarochnyj-sertifikat
Форма реализована с помощью Formit и кастомных хуков. Это наверное самое простое что можно сделать на MODX (не нужно никаких плагинов, товаров и прочей мишуры).
После формирования заказа (отправки формы) — срабатывает нужный Хук и данные уходят в MS2 (генерируя и заказ и товар и всё что нужно) — затем перенаправляем пользователя на страницу оплаты с параллельной отправкой необходимых писем.
После успешной оплаты, пользователю на почту приходит сертификат на котором есть QR код (сертификат в виде прикрепленного изображения (можно и PDF сделать) плюс ссылка на сертификат).
При сканировании этого QR кода — нас перенаправляет на страницу проверки сертификата.
На страницу проверки мы обязательно должны прийти со специальным открытым ключем и ID заказа (данная инфа закладывается в QR код). Если не добавить открытый ключ, то есть очень большая вероятность слива изображений с сертификатами, ибо они будут хранится на вашем сервере в открытом доступе.
На странице проверки сертификата — по сути выводится информация о MS2 заказе. (т.е. дата создания, оплачен или не оплачен, использован или не использован, и сумма сертификата)
Т.е. мы можем спокойно отредактировать заказ в админке MS2 и при очередном обращении на эту страницу — будет уже другая инфа.
Да, именно то что нужно, а можете помочь, как реализовали?
Так @Дмитрий Танцирев описал свой вариант, а если по коду там скорее всего много всего))) Создание заказа, генерация QR, вставка его в PDF, генерация ключей, проверка сертификата. Генерацию QR и PDF можно сделать библиотеками, остальное PHP и MODX API
@Артур всё верно сказал =)
Суть реализации я вам описал. Артур описал с помощью чего это всё можно реализовать. Ну а дальше только ваша фантазия и скил.
Если не умеете PHP — то только кому нибудь обратится за денюшку это реализовать.
Суть реализации я вам описал. Артур описал с помощью чего это всё можно реализовать. Ну а дальше только ваша фантазия и скил.
Если не умеете PHP — то только кому нибудь обратится за денюшку это реализовать.
Конечно хотелось бы научиться самому. Но это время. И удобнее было бы разобраться на готовом примере. А можно обратиться к вам, за денюшку конечно?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.