Плагин оптовых цен Архив

12

Т.к. предыдущая тема была закрыта из-за некоторой конфликтной ситуации, но просьбы о внедрении оптовых цен продолжаются, я решил создать новую тему.

Плагин оптовых цен выложен на гитхаб, и теперь его может скачать себе каждый желающий:

https://github.com/itfrogs/opt

Ссылка на русскую документацию:

http://docs.itfrogs.ru/webasyst/plugins/shopscript...

Добавлю пару скриншотов:

Плагин спорный, в нем не все идеально в плане sql запросов, но он работает вполне стабильно.

Я сделал этот плагин бесплатным из-за того, что он не идеален, но, при вашем тестировании и пожеланиях, его вполне можно довести до ума.

41 комментарий

  • +2
    Сергей Правдин Сергей Правдин 29 октября 2015 02:18 #

    Плагин супер!!! Сам использую его и протестировал!!! Доработали с разработчиком моменты по работе с несколькими складами!!!

    Альтернативы просто нет!!!

  • +2

    Красава!

    Мне лень было такое писать... :) Все ждал, пока что-то напишет :)


  • +2
    Сергей Правдин Сергей Правдин 21 ноября 2015 08:00 #

    Оба плагина супер, большое спасибо Андрею Годину, за то что все мои идеи реализует в своих плагинах!!!

  • +2

    Предыдущую версию оставлю как есть на гитхабе, а новую буду готовить под платную публикацию. Оставлять его бесплатным не вижу смысла. Только нахватаю негативных отзывов от альтернативно-одаренных юзеров, которые ставят все бесплатные плагины подряд, не читая документации и постят отзывы не разбираясь.

    Перевожу все обновления в приватный репозиторий.

    Всем, кто отписывался в этой теме ранее или писал багрепорты на мыло, сделаю бесплатную лицензию после публикации плагина. Пишите на пойтовый ящик в моем профиле после публикации.

  • +1

    А можно в двух словах о принципе работы?

    • +1

      В шаблонах меняется ссылка на корзину и чекаут. Было /cart, стало /opt/cart. Таким образом контроль над всеми операциями с корзиной и чекаутом всегда у нас в плагине. А там почти единственное, что нужно сделать - это заменить класс корзины своим. Свой класс корзины экстендит родную корзину, мы переписываем только некоторые методы. Например total(). Т.е. корзина всегда автоматически знает какую цену нужно использовать в данном случае. Соответственно классы cartadd и cartsave тоже родные, но с подменой класса корзины на нашу измененную. В чекауте берем на себя тот шаг, где показывается общий список. При сохранении ордера перебираем массив items и заменяем цены своими. Это я так грубо в двух словах. На самом деле много еще чего.

      • +2

        Отлично!
        Почти также делал, делал но до ума так и не довёл, забросил -)

        "На самом деле много еще чего"

        - на самом деле дофигища еще всего -)

        • +1

          Сейчас появились хорошие тестеры, поэтому доработки появляются регулярно. И постоянно что-то новенькое додумывается и придумывается.

          • +2
            KSS KSS 20 ноября 2015 17:15 #

            Когда плагин будет доступен для покупки и установки в облаке? Хочу протестировать, но не обладаю достаточными знаниями для самостоятельной распаковки) Будет ли настройка комплектов товара (например, в коробке 10 единиц товара, покупать можно только коробками, то есть 10,20, 30 итд. 12, 23 и другие некратные количества купить должно быть нельзя.) Сама идея опта предполагает продажу упаковок товара при импорте из 1с - единиц. И второй вопрос. Можно ли будет привязывать цену (например супер опт) к количеству заказанных единиц? В данной модели, если я правильно понял описание, покупатель "оптовик" никогда не увидит цену "суперопта" без ручной модерации и изменения группировки, тогда как "суперопт" сможет заказать минимальное количество по "супероптовой" цене. Не совсем логично.

            Можно ли подумать над следующей логикой?

            Импортируется из 1с 100 000 единиц продукции (например полиэтиленовые пакеты).

            1. В розницу продается товар, комплектом из 10 штук. Розничный покупатель видит или цену единицы, но может сделать заказ только кратно 10, либо видит цену сразу за комплект ( у меня сейчас стоит цена за комплект, что сильно ограничивает возможности по импорту остатков без доработок)

            2. При заказе более 10 комплектов (то есть от 100 единиц), покупатель становится средним оптовиком, и начинает видеть цену 2. При этом заказ оформляется кратно 100.

            3. При заказе более 10 (или 20, 30) "среднеоптовых" комплектов (то есть от 1000 единиц) покупатель видит цену "суперопта" и заказывает уже кратно 1000.

            Если каким то образом сюда можно будет добавить этот функционал, будет здорово. Но в любом случае, то, чем Вы начали заниматься, не может не радовать, так как лично я жду чего-то подобного уже год )

            • +1

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

              По поводу облака врядли. Модераторам не нравится этот плагин и они его публиковать не хотят. Могу посоветовать только сменить хостинг.

              Сейчас я занимаюсь взаимодействием оптового плагина и плагина "Скрытые цены"

              https://www.webasyst.ru/store/plugin/shop/hiddenpr...

              Уже подогнал их друг к другу так, что они хорошо работают вместе. По отдельности тоже работают, поэтому никакого нарушения правил в этом нет.

              В дальнейшем, возможно, пойду по тому же пути и сделаю свой плагин комплектов, который будет совместим с оптовым, если будет соответствующее финансирование.

              • +1

                Андрей, если вас не затруднит, расскажите, почему плагин не нравится модераторам?


                • +2

                  Потому, что у них свои планы на это дело, а я их немного опередил:

                  https://www.webasyst.ru/blog/plans-for-december-20...

                  Или не опередил, а просто этот скандал с плагином сподвиг вебасист на столь долгожданные доработки.

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

                  Как только появятся соответствующие возможности, я переработаю плагин и сдам на модерацию по всем проавилам. Думаю в январе-феврале мы уже сможем увидеть его в продаже.

                  • +1

                    Андрей, подожду, пока не появятся хуки.

                    Очень Переживаю за быстродействие, хотелось бы его улучшить. Возможно ли технически сокращение запросов к БД?


                    ЗЫ: скандала вашего, к сожалению, не видел ))


                    ЗЫЫ: хороший плагин, по крайней мере задумка. Лично у меня такая потребность созреет через несколько месяцев )

                  • +2

                    Потому что этот плагин на странице категории (да и в любых списках) добавлял (не знаю как сейчас, может уже оптимизировано) минимум по 3 SQL-запроса на каждый выводимый товар в списке.
                    То есть если у вас выводится по 30 товаров на странице, то это минимум +90 SQL-запросов к БД.
                    На локальном компе или мощном VPS это может и не так заметно, а вот обычном хостинге можно легко выйти за ограничения по нагрузке из-за этого.

                    • +1

                      Спасибо

                    • +1

                      Сейчас плагин может получать цены пачкой так же как они приходят в категорию. Кстати, прошу прощения за то, что, не разобравшись, написал про 100500 запросов в базу в категории у вас из коробки. Покопавшись, понял, что это не так, и как надо делать.

                      После того, как я выложил плагин на гитхаб, ко мне обращались люди, и мы провели большое тестирование и работу над ошибками.

                      Но все равно лучше дождаться хуков. Скажите, в ветке dev репозитория шоп-скрипта они уже есть? Можете сказать какие именно, чтобы я сразу начал их интегрирование и тестирование?

                      • +2

                        Пока нет, еще тестируются и рассматриваются разные ситуации.
                        Выложим на следующей неделе часть, которой для вашего плагина должно хватить.
                        По сути добавится один хук, который будет позволять изменить отображаемую на витрине цену.
                        Но есть некоторые нюансы. И есть два варианта реализации, пока не решили какой лучше, чтобы было и запросов мало и разработчиками удобно.

                        Главный проблемный вопрос, который и у вас наверняка будут спрашивать клиенты.
                        Что делать со скидками?

                        Будет так:
                        сначала отрабатывают плагины, которые меняют цены на свои (например, ваш плагин подменяет основную цену на оптовую)
                        а потом уже работают скидки с новыми ценами

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

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

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



                        • +1

                          Вы же собираетесь работать с категориями пользователей. Значит где-то должны быть в настройках чекбоксы этих категорий. Например как у меня:

                          Можно точно так же сделать и со скидками. Т.е. скидки применяются только к определенным категориям (по умолчанию все). При создании новой категории чекбокс должен быть уже отмечен. Либо обратную настройку. Не применять скидки к таким-то категориям. В совокупности две эти настройки дадут нужную гибкость контроля цен.

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

                          • +1

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

                            • +1

                              Вы потом объясните суть своей идеи как сделать это плагином? В принципе не важно как это будет. Главное, чтобы это работало и чтобы вписывалось в идеологию вебасист. Лично мне очень хочется реализовать плагин оптовых цен по всем правилам. Я думаю, что ту часть, которая работает с бэкендом, даже переписывать особо не придется. Главное понять замысел как правильно оперировать с ценами на фронтенде.

                              Еще один вопрос. А можно ли будет посредством вашего хука прятать цены от клиента?

                            • +1

                              Тогда будет нужен плагин скидок, который будет учитывать категорию цены.

                              Самое неприятное, что нам-то это понятно. Но владельцы магазинов будут

                              a) выбирать плагины по какому-то своему критерию
                              б) спрашивать, как скрестить ужа с ежом
                              в) возмущаться, почему ничего не получается и вопрошать кто чем думал :-/

                            • +1

                              Александр, ну как там продвигается?

                            • +1

                              +1 Александр, как там? :)

                            • +1
                              Злой Димон Злой Димон 19 декабря 2015 14:32 #

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

                            • +1
                              Злой Димон Злой Димон 25 декабря 2015 07:29 #

                              Андрей, а как получить лицензию?

                            • +1

                              Андрей, в плагине импорт не планируется? Может массовое редактирование цен? У нас 1500 товаров. Не реально следить за опотовыми ценами.

                              Было бы очень круто, если б можно было ставить наценку от закупочной цены. Очень упростило б жизнь. Пока в этом виде плагин для нас бесполезен, ибо цены наши меняются вместе со скачками курсов валют (

                              • +1

                                Импорт я предусматривал в том виде, как это сделали разработчики движка. Но этот функционал пока не тестировался. Давайте с Вами протестируем. По идее должно работать. Пишите в мыло, я дам плагин и будем проверять как и что.

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

                                Вы хотите сделать закупочной основную цену магазина, а потом считать проценты на каждого покупателя? Проценты на каждый товар отдельно или общие проценты? Или будет основная цена и закупочная цена, а от нее проценты? Этот вариант сложнее в реализации.

                                • +1
                                  Вы хотите сделать закупочной основную цену магазина, а потом считать проценты на каждого покупателя? Проценты на каждый товар отдельно или общие проценты? Или будет основная цена и закупочная цена, а от нее проценты? Этот вариант сложнее в реализации.

                                  Все просто. Есть закупочная цена товара (не основная), например 100 руб. Делаем наценку 10% для группы покупателей "Оптовый покупатель". Теперь "оптовый покупатель" видит цену 110 руб.

                                  Сейчас письмо скину, давайте протестируем ))

                                  Эта тема в архиве. Добавление комментариев к ней отключено.