Ruslan Butakov

Ruslan Butakov

Был в сети 13 марта 2023, 15:41
Заказы принимаю
Добрый день.
Как правильно сделать возможность массового редактирования цен, если кроме тех что имеет minishop2 созданы дополнительно в виде TV полей.

Пробовал в настройках модуля указывать их как:
ya_price
tv-ya_price
перенос или изменение не работают. Хотя в контекстном меню они появляются.
Также добавлю.
Бывают такие заказы для которых нужен менеджер чтобы произвести расчет доставки, ну банально все имеющиеся варианты в виде интеграций дают высокую цену, а к примеру «ТК Э» дает ценник в 2 раза меньше, как тогда быть?
В идеале, менеджер получил в б24 заказ со статусом «рассчитать доставку», само собой клиент, такой заказ не может оплатить. Менеджер рассчитал доставку, добавил ее в заказ в б24 и что дальше?

Я понимаю что через центр продаж дальше все можно провернуть, но для клиента так и останется не изменный заказ на сайте. А хотелось бы чтобы все по феншую.
Изменили статус заказа в б24 в админке ничего не изменится же?

Отсюда все вытекающие: клиент идет в свой ЛК на сайте, а там заказ в статусе «оплачен», а по факту в б24 ему присвоили накладную и применили статус «заказ отправлен», пусть даже все уведомления почта/смс о статусах и трек-номере идут из б24, на сайте уже ничего не изменится.

Обратная синхронизация отсутствует
Работа конечно ценная, но вся суть B24 пропадает.

Менеджер должен работать с CRM не трогая сайт вообще, а дополнение подразумевает обратное?
Или же менеджер универсал и админку должен знать и в б24 сопровождать сделки и заказы?
Спасибо за ответ, решение для своего случая нашел.

А именно мне надо было подружить contentblocks и tickets. Все оказалось намного проще, в настройках contentblocks указываем тип документа Ticket для того чтобы компонент заменял стандартный редактор.
Для тех у кого бэкапы мало хранятся, или очухались поздно.

find /home/путь_до_сайта/ -type f -iname "*.php" -exec grep -Him1 'eval' {} \;
find /home/путь_до_сайта/ -type f -name '*.php' | xargs grep -l "eval *(" --color
find /home/путь_до_сайта/ -type f -name '*.php' | xargs grep -l "base64_decode *(" --color
find /home/путь_до_сайта/ -type f -name '*.php' | xargs grep -l "GLOB_ONLYDIR" --color
find /home/путь_до_сайта/ -type f -name '*.php' | xargs grep -l "gzinflate *(" --color
find /home/путь_до_сайта/ -type f -name '*.php' | xargs egrep -i "preg_replace *\((['|\"])(.).*\2[a-z]*e[^\1]*\1 *," --color
find /home/путь_до_сайта/ -type f -name '*.php' | xargs grep base64_ | less
find /home/путь_до_сайта/ -type f -name '*.php' | xargs grep -il x29
Само собой, нужно хоть малость понимать код и тогда 2 команды покажут всю заразу.
Проблему пока решил
таким образом
public function sanitizeString($string = '')
    {
        if (is_array($string)) {
            foreach ($string as $key => $value) {
                $string[$key] = $this->sanitizeString($value);
            }

            return $string;
        }

        $string = htmlentities(trim($string), ENT_NOQUOTES, "UTF-8");
        $string = preg_replace('/^@.*\b/', '', $string);
		/*
        $string = str_replace(
            array('[', ']', '`', '{', '}'),
            array('[', ']', '`', '{', '}'),
            $string
        );
		*/

        return $string;
    }
в файле core/components/tickets/model/tickets/tickets.class.php

При этом в настройках раздела с тикетами:

Отключить Jevix:да
Выполнять теги MODX:да
Можно ли как то использовать 2 разных класса скидок совместно?

1. от суммы заказа
Больше 3 000 руб. — 3 %
Больше 5 000 руб. — 5 %
Больше 10 000 руб. — 7 %
Больше 25 000 руб. — 10 %
Больше 50 000 руб. — 13 %
Больше 100 000 руб. — 15 %
2. Дать скидку на заказ при наличии ранее покупок на сумму свыше «10 000 руб.» 7%

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

Если я постоянный клиент и имею сумму ранее оформленных заказов свыше 10 000, и в текущей сессии я набрал >25000, то по логике мне должна примениться скидка из пункте 1 и ее размер должен составить 10%

p/s/ Правильно ли вообще использовать такой вывод:

[[!dcDiscounts?
		&object=`msOrder`
		&comparison=`1`
		&class=`msSessionCart,msCustomerProfile`
		&expression=`$p-$d`
]]
Добрый день, как правильно использовать несколько условий?
Дано:
[x] класс msSessionCart
[x] ключ total_cost
[x] значение 3000
[x] скидка 3%
[x] сравнение (float) — Больше

Для того чтобы эта скидка применялась в промежутке от 3000 до 5000, ставлю условие
{"total_cost:<":"5000"}
А как например не применять эту скидку если в корзине товара на 3500, но у пользователя стоит в профиле комментарий notsale?

Пробовал по логике так, не получается оба варианта
{"total_cost:<":"5000"},{"modUserProfile.comment:!=":"notsale"}
и
{"total_cost:<":"5000", "modUserProfile.comment:!=":"notsale"}