208 похожих чатов

Народ, есть задача. На сайте есть 3 типа цены (одна

базовая и ещё 2), разбиты по городам.

Появилась необходимость для одного пользователя сделать наценку вида price_id_3 +5%.

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

скидки в режиме "до конвертации"

12 ответов

23 просмотра

Вы ее и с типом цены не решите. Из перечня доступных выбирается минимальная.

Itachi-Vergil Автор вопроса
Eugene Zhukov
Вы ее и с типом цены не решите. Из перечня доступн...

почему не решу? создать price_id_4 в которую писать копию значения price_id_3 и наценку 5% и этому пользователю дать права на покупку только по price_id_4 и всё. просто я не хочу из-за этой мелочи новый тип цен создавать. на 100к товаров огромная лишняя нагрузка на БД с этими типами цен

Itachi Vergil
почему не решу? создать price_id_4 в которую писат...

Ваш пользователь находится в группе 2. Вы у этой группы тоже все права на остальные типы цен заберете?

Itachi-Vergil Автор вопроса
Eugene Zhukov
Ваш пользователь находится в группе 2. Вы у этой г...

тогда тем более надо без создания нового типа цен как-то придумать. нет способа транслировать цены заданные в правиле корзины на весь каталог?

Itachi-Vergil Автор вопроса
Eugene Zhukov
Наценки - нет

придумал тупой костыль. сделать в init.php функцию которая принимает вна вход любую стоимость, и проверяет по иду текущего пользователя свойство этого пользователя со значением наценки. и если оно есть, возвращает увеличенную на этот процент цифру. далее во всех шаблонах в каталоге в result_modifier.php надо будет подставить эту функцию для изменения цены выводимой в шаблоне. из подводных пока обнаружил что при переходе в корзину эта функция в шаблоне компонента catalog.item ломает загрузку страницы корзины. ещё что может выплыть неприятное? global $APPLICATION; $page = $APPLICATION->GetCurDir(); if ($page != '/basket/'){ foreach ($arResult['ITEM']['ITEM_PRICES'] as &$arPrice){ $rPrice = getDisplayMarkupPrice($arPrice['RATIO_PRICE']); if ($rPrice > 0){ $arPrice['RATIO_PRICE'] = $rPrice; } } }

Itachi Vergil
придумал тупой костыль. сделать в init.php функцию...

Если речь о штатных компонентах - то есть вы не удивитесь, что цена начнет "мигать" - то работает, то нет? Подсказываю - кеш компонент.

Itachi-Vergil Автор вопроса
Eugene Zhukov
Если речь о штатных компонентах - то есть вы не уд...

пока кеш отключен. я обдумываю как грамотно с этим поступить. может быть блок с ценой подклоючать в обход кеша?

Itachi-Vergil Автор вопроса

А зачем скрипт считает цены на беке если это можно джиэсом сделать? К тому же способ фигня потому что кто-то может вырубить джиэс в браузере, и что тогда?

Itachi-Vergil Автор вопроса

Каким бы не был человек, это не должно ему ломать страницу с ценами. Но я понял, тут и без жс можно делать. Просто вставить в класс или ид враппера цены ид пользователя и выводить оба типа цены. И цсслм прописать видимость нужного блока только при наличии нужного класса/ида в обёртке😂 но тогда с сео придётся долго пыхтеть, если оно нужно для этих цен Слава богу что мне не нужно😁

Itachi Vergil
А зачем скрипт считает цены на беке если это можно...

тогда и цены ему не нужны, т.к. купить ничего не сможет * а если вырубить инет вместе с js уже ничего не спасет точно :)

без инета еще ладно, но без js невозможно *отсутствие инета собственно не мешает дальше работать с сайтом :) ну если конечно заморочиться основательно

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта