Перейти к содержанию
Официальный форум поддержки Simpla

Автоматический перенос клиента в группу


Рекомендуемые сообщения

Всем доброго вечера!

 

На сайте установлен модуль автоматического переноса клиентов в группы в зависимости от суммы выполненных заказов.

 

Перенос производится когда в админке в самом заказе (не на странице заказов) меняешь статус на выполнен и нажимаешь сохранить. Все отрабатывает корректно.

 

Код который отвечает за перенос в файле OrderAdmin

 

if($order->user_id)

$this->users->check_user_group($order->user_id);    
 
 
 
А вот когда переносишь заказ в выполненные со страницы заказов - то пересчет не производится и группа у клиента не меняется.
 
Попробовал вставить вот такой код в файл OrdersAdmin
if($o->user_id)

$this->users->check_user_group($o->user_id);

 

Но ничего не получилось.

 

Вставляю вот в это место:

 

case 'set_status_2':
				{
					foreach($ids as $id)
					{
						if(!$this->orders->close(intval($id)))
							$this->design->assign('message_error', 'error_closing');
						else
							$this->orders->update_order($id, array('status'=>2));
								$this->notify->email_order_user($id);	
								
				if($o->user_id)
				$this->users->check_user_group($o->user_id);
								
					}
					break;

 

 

Помогите пожалуйста разобраться в чем дело..

 

Ссылка на сообщение
Поделиться на другие сайты

Если указать вот так $this->users->check_user_group(308); - т.е. вписать user_id цифрой то все работает, т.е. ошибка вот здесь $o->user_id.

Как правильно написать ($order->user_id - пробовал)?

Ссылка на сообщение
Поделиться на другие сайты

 

А что такое $o

Где вы его взяли?

Может надо сначала так?

$o = $this->orders->get_order($id);

 

 

Вот так тоже не работает

$o = $this->orders->get_order($id);

$this->users->check_user_group($o->user_id);
 
 
Чуть выше в коде файла OrdersAdmin есть строка $o = $this->orders->get_order(intval($id)); вот отсюда я и решил подставлять $o - но не уверен что правильно.
Ссылка на сообщение
Поделиться на другие сайты

В симпле нет такой функции.

Опишите что вам нужно.

 

Это доработка - функция переносит клиентов в разные группы в зависимости от суммы заказов. Переносит при изменении статуса заказа в самом заказе, но не работает на странице всех заказов (там тоже можно заказ в выполненные перенести).

 

А по большому счету мне надо в файле OrdersAdmin прописать user_id клиента, например вот так когда ввожу $this->users->check_user_group(308) - то все работает. Вот что надо вместо 308 туда вписать не могу разобраться. P.S. 308 это user_id клиента. 

 

;)  :)  :)  :)  :)  :)  :)  :)  :)  :)  :)  Спасибо ОГРОМНОЕ! 

 

$o = $this->orders->get_order(intval($id)); - это сработало!!!

Изменено пользователем esistema1
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...