Автор Тема: Статус заказа  (Прочитано 948 раз)

30 Апрель 2016, 14:01:45
  • Новичок
  • *
  • Сообщений: 22
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый день уважаемые, подскажите начинающему программисту. Нужно чтобы при определенном статусе заказа выполнялись действия. А именно отправка смс. Т.е. в админке статус поменялся и приходит смс клиенту. Функция смс готова. Подскажите где искать, и куда вписать данную функцию? в каком файле
30 Апрель 2016, 15:46:14
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
Hook updateOrderStatus Class: OrderHistory.phpМетод вызывается при изменении статуса заказа.
Устанавливает модуль в этот хук. В методе updateOrderStatus выполняте отправку смс.
30 Апрель 2016, 15:55:38
Ответ #2
  • Новичок
  • *
  • Сообщений: 22
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В каком файле это делается? В OrderHistory.php?
30 Апрель 2016, 15:57:25
Ответ #3
  • Новичок
  • *
  • Сообщений: 22
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
И как сделать чтобы только при определенном статусе выполнялось действие?
30 Апрель 2016, 16:18:13
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
В модуле это делается. Используется хук updateOrderStatus.
Creating a PrestaShop Module

Включите условный оператор в метод, можно в условии использовать id статуса или имя.
if (OrderState::getOrderStates($id_lang) == 'мой статус заказа')...
30 Апрель 2016, 16:22:45
Ответ #5
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Для prestashop 1.6 - 2 хука
actionOrderStatusPostUpdate -  вызывается после смены статуса.
actionOrderStatusUpdate - вызывается перед сменой статуса.
Отправку смс логичней сделать после смены статуса, если функция не вернула ошибку.
30 Апрель 2016, 16:38:17
Ответ #6
  • Новичок
  • *
  • Сообщений: 22
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Нашел где это делается. Теперь при обновлении статуса заказа приходит смс. Но нужно чтобы данные именно этого определенного заказа брались, например номер заказа и телефон заказчика соответственно. Пока смс приходит на номер по умолчанию, который прописан.
Т.е. нужно взять данные заказа и отправить смс. Подскажите кто может советом
30 Апрель 2016, 16:54:46
Ответ #7
  • Новичок
  • *
  • Сообщений: 22
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Все заработало. Всем спасибо )