Jump to content

Купоны, интеграция (SOAP), создание модуля


Recommended Posts

Здравствуйте!

 

Задача несколько необычная. Есть сторонний сервис, с которым я взаимодействую по API удалённо, с помощью протокола SOAP. Данный сервис генерирует купоны с различными кодами.

Моя задача интегрировать данные купоны в PrestaShop с помощью модуля.

 

Как должно работать?

На PrestaShop уже есть функционал для купонов. Отличный функционал замечу. И мне надо в него как-то внедриться. Нужно чтобы купоны, которые генерирует удалённый сервис принимались скриптом магазина и активировались.

 

Что есть в API?

Три функции. Получить инфу о купоне, получить инфу о всех доступных купонах и активировать купон. Купон генерируемый удалённо имеет следующие "поля" в объекте:

1. Дата получения

2. Тип

3. Имя получателя

4. Email получателя

5. ID акции

6. Название акции

7. Предложение акции (например "10%")

8. Код купона

 

Исследование движка Presta

Я просмотрел то место в коде PrestaShop, где происходит проверка кода купона и понял, что никаких хуков там нет.. Как же тогда интегрировать проверку мне? Активацию ещё понятно, вроде есть хуки на оплату. Следовательно, при удачной оплате, просто вызываем функцию API, которая активирует купон.

 

Мои размышления

Вариант1: Есть функция API получения всех купонов, можно вызывать её каждый раз, когда кто-либо входит, например, в корзину. Мы получаем все купоны, создаём по ним купоны системы PrestaShop и вроде всё хорошо выходит. Получается при каждом заходе в корзину, происходит грубо говоря интеграция сторонних купонов в базу PrestaShop.

 

Но нормальная ли это практика? Мне кажется это можно будет как-то обойти... Да и по нагрузке кто и что думает?

 

Вариант2: Можно конечно создать ещё одно поле для ввода купонов, которое будет предназначено только для ввода данных кодов. Но как-то не хорошо получается иметь две формы сразу... Пользователи будут путаться, куда вводить код.

 

 

В общем интересно ваше мнение! Приму любые советы. Скрипт магазина скачал буквально вчера. Поэтому вполне возможно, что я просто "недоразобрался" с системой хуков и всё можно сделать проще.. Люди, которые имеют опыт разработки модулей в данной системе, оставьте пожалуйста свои контакты (можно в личку), я бы хотел просто задать пару вопросов и проконсультироваться, если вам не составит это труда. Можно скайп, можно аську, можно почту, что удобней, хоть вконтакт..

 

Спасибо за внимание!

Link to comment
Share on other sites

Понятно. Ну я в целом уже почти разобрался. Надо перегрузить один класс и добавить в нём свой собственный хук.. Но меня смущает, что перегрузка работает только с 1.4-ой версии..

Link to comment
Share on other sites

Здравствуйте!

 

Задача несколько необычная. Есть сторонний сервис, с которым я взаимодействую по API удалённо, с помощью протокола SOAP. Данный сервис генерирует купоны с различными кодами.

Моя задача интегрировать данные купоны в PrestaShop с помощью модуля.

 

Как должно работать?

На PrestaShop уже есть функционал для купонов. Отличный функционал замечу. И мне надо в него как-то внедриться. Нужно чтобы купоны, которые генерирует удалённый сервис принимались скриптом магазина и активировались.

 

Что есть в API?

Три функции. Получить инфу о купоне, получить инфу о всех доступных купонах и активировать купон. Купон генерируемый удалённо имеет следующие "поля" в объекте:

1. Дата получения

2. Тип

3. Имя получателя

4. Email получателя

5. ID акции

6. Название акции

7. Предложение акции (например "10%")

8. Код купона

 

Исследование движка Presta

Я просмотрел то место в коде PrestaShop, где происходит проверка кода купона и понял, что никаких хуков там нет.. Как же тогда интегрировать проверку мне? Активацию ещё понятно, вроде есть хуки на оплату. Следовательно, при удачной оплате, просто вызываем функцию API, которая активирует купон.

 

Мои размышления

Вариант1: Есть функция API получения всех купонов, можно вызывать её каждый раз, когда кто-либо входит, например, в корзину. Мы получаем все купоны, создаём по ним купоны системы PrestaShop и вроде всё хорошо выходит. Получается при каждом заходе в корзину, происходит грубо говоря интеграция сторонних купонов в базу PrestaShop.

 

Но нормальная ли это практика? Мне кажется это можно будет как-то обойти... Да и по нагрузке кто и что думает?

 

Вариант2: Можно конечно создать ещё одно поле для ввода купонов, которое будет предназначено только для ввода данных кодов. Но как-то не хорошо получается иметь две формы сразу... Пользователи будут путаться, куда вводить код.

 

 

В общем интересно ваше мнение! Приму любые советы. Скрипт магазина скачал буквально вчера. Поэтому вполне возможно, что я просто "недоразобрался" с системой хуков и всё можно сделать проще.. Люди, которые имеют опыт разработки модулей в данной системе, оставьте пожалуйста свои контакты (можно в личку), я бы хотел просто задать пару вопросов и проконсультироваться, если вам не составит это труда. Можно скайп, можно аську, можно почту, что удобней, хоть вконтакт..

 

Спасибо за внимание!

 

Пишите мне на [email protected]. Задача интересная. И если есть ссылку на API SOAP сервера, с которым нужно строить взаимодействие. Обычно поставщики сервисов публикуют соответствующий мануал.

Link to comment
Share on other sites

×
×
  • Create New...