Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Группа покупателя в заказе.


Bn174uk

Recommended Posts

Всем привет, возникла такая дилемма.

Один из покупателей желает, чтобы была добавлена разбивка на группы покупателей.

Типа одной группы шлем уведомления, а другой нет.

Ссылается на функционал OCDEV.pro - СМС уведомления для Opencart (Смс для групп покупателей (Включение/Выключение смс для определенных групп)

 

Тем самым, он сказал, что потом клиентов будет переводить из одной в другую(как именно не уточнял)

 

В таблице order у нас есть поле customer_group_id, но она у нас как бы статичное.

При смене у покупателя группы у его заказов поле не меняется, т.е. изменяется оно у нас только при редактировании заказа.

Все как бы знаю, что стандартный редактор это мягкий ужас.

 

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

 

Я вижу решение этой ситуации так:

Добавить запрос на проверку группы клиента через таблицу customer, но блин, это лишний запрос. Да мелочь, но все равно не сильно хочется этого делать.

 

Кстати, хотелось бы узнать, как @ocdev_pro реализовал, т.е. задумывались ли об этом или просто делаете проверку на основе customer_group_id в заказе?

 

P.S. Посыл темы узнать, кто что думает над этим, логично или нет все же сделано в ОС этот момент.

 

Надіслати
Поділитися на інших сайтах

10 минут назад, Bn174uk сказал:

клиентов будет переводить из одной в другую(как именно не уточнял)

Это его головная боль

 

 

11 минут назад, Bn174uk сказал:

В таблице order у нас есть поле customer_group_id, но она у нас как бы статичное.

подразумевается, что оно на момент заказа такая. Это логично.. Это история.

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

 

 

12 минут назад, Bn174uk сказал:

Добавить запрос на проверку группы клиента через таблицу customer, но блин, это лишний запрос.

Один!!! Это быстрый запрос, в системе есть запросы, которые совсем не нужны, так что эти запросы не считайте

 

Надіслати
Поділитися на інших сайтах

сделайте метод для проверки.
типа этого

    public function checkGroup($order) {
        $this->load->model('account/customer');

        $arr = тут массив id групп которым надо отправить;
        $customer_group_id = $this->config->get('config_customer_group_id'); //получаем группу по умолчанию

        $customer = $this->model_account_customer->getCustomer($order['customer_id']); //получаем данные пользователя как массив и там же id группы
	

        if ($arr) {
            if ($this->customer->isLogged() && in_array($customer['customer_group_id'], $arr)) {
                $result = true;
            } else {
                if (in_array($customer_group_id, $arr)) {
                    $result = true;
                } else {
                    $result = false;
                }
            }
        } else {
            $result = true;
        }

        return $result;
    }

$send_message = $this->checkGroup($order_info);

if($send_message){

//Если пришло true то отправляем уведомление

}

 

Встройте в свой контроллер или модель, где используется

Надіслати
Поділитися на інших сайтах

26 минут назад, chukcha сказал:

Один!!! Это быстрый запрос, в системе есть запросы, которые совсем не нужны, так что эти запросы не считайте

Насчет этого понял, спасибо.

 

14 минут назад, ocdev_pro сказал:

сделайте метод для проверки.

Код давать не обязательно было, но спасибо и в целом ответили на мой вопрос который к Вам стоял.

 

 

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.