Оптовые цены таблицей с размерами в карточке товара

Тема в разделе "Модули и дополнения", создана пользователем Salivaloil, 17 фев 2023.

  1. Salivaloil

    Salivaloil Новичок

    Сообщения:
    14
    Симпатии:
    0
    Здравствуйте.
    Прошу совета, направьте, пожалуйста, в нужную сторону.

    Каким образом лучше и технически правильнее загружать таблицу с двумя и более ценами в карточку товара? Хотелось бы средствами опенкарта (пусть даже модифицированными) умещать все цены и размеры сразу в одном товаре и выводить в последствии единой таблицей. Но по стоку опции для этого не подходят. Может, посоветует кто какой-то модуль хоть и платный? Или уже есть какая-то реализация, работающая с АОП (как с KIT SERIES)?

    Установлены платные модули: парсер АОП 9.4 от usergio и KIT SERIES от kJlukOo.

    Я загружаю цены двумя способами:
    1) Парсинг подготовленного прайс-листа через простенький парсер PHPExcel в отдельную JSON колонку продукта в бд по шаблону контроллера для каждой категории. Но есть сложности. Внутри одного листа документа xls шапки таблиц зачастую могут отличаться, где-то штуки, где-то упаковки, где-то килограммы, где-то есть три цены, а где-то одна. Из-за этого приходится изворачиваться, делать костыли. Сложно привести к общему единому виду.
    2) Парсинг каждого размера как отдельный товар с атрибутами (размер/кол-во/цены) через АОП с их последующим скрытием на сайте и объединением при помощи KIT SERIES и выводом в родительском товаре в виде атрибутов склееных в одну таблицу. Это приводит к увеличению количества товаров. На один товар таким образом создается 30 (а то и более) товаров. Опасаюсь, это излишняя мера, раздувается бд, тем более пока нет корзины. Данный способ использую пока только в одной категории, чисто пробный вариант. Да и думаю, что атрибуты не очень хорошо использовать под цены.


    Сайт оптовый, тематика строительных крепежей, без корзины.
    Так как речь идет про строительный крепеж, в карточке товара есть размеры, штуки/вес, и есть несколько цен (мелкий опт; опт; крупный опт).

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

    РАЗМЕР (ММ) ШТУК В УПАКОВКЕ МЕЛКИЙ ОПТ (РУБ.) ОПТ (РУБ.) КРУПНЫЙ ОПТ (РУБ.)
    м5
    14000 722 577 481
    м6
    7500 977 782 652
    ------------
    м16 300 14342 11474 9562



    Я пытаюсь на своем сайте добиться более грамотной реализации загрузки прайс-листов, а не костыльничать из раза в раз. Буду рад любой помощи и любому комментарию. Надеюсь, мне удалось хоть сколько-нибудь понятно объяснить суть...

    CMS: ocStore версии 2.3.0.2.
     
  2. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    660
    Симпатии:
    92
    Здравствуйте

    Не то, чтобы сильно читал ваше описание (бегло посмотрел). Но мелкий опт, опт и крупный опт. Это похоже на стандартные скидки от количества. Там во вкладке "Скидки" товара посмотрите.
     
    Salivaloil нравится это.
  3. Blast

    Blast Продвинутый пользователь

    Сообщения:
    192
    Симпатии:
    66
    Видел примерно такое. Создать 3 группы покупателей - мелкий опт, опт и крупный опт.
    Для каждого товара на вкладке Скидки создавать по 3 записи с ценами соответствующей группы.
    должно работать если "гайка с прессшайбой" это общий/объединенный товар, а на каждый размер m5, m6 и т.д. имеются отдельные товары.
    ну и накидать метод, который выбирает все цены товара и выводит в таблицу. Если юзеров раскидать по группам, то даже автоматически будет подтягивать цену для авторизованного покупателя.

    еще наверное как вариант использовать модуль Акции к опциям https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=38633
    при этом каждый размер сделать опцией товара "гайка с прессшайбой" и для каждой опции добавить "акции", т.е. цены для каждой группы покупателя.
    но естественно все равно нужен будет допил чтобы отображать сразу все возможные цены, а не только ту, которая соответствует группе текущего покупателя
     
    Salivaloil нравится это.
  4. Salivaloil

    Salivaloil Новичок

    Сообщения:
    14
    Симпатии:
    0
    Спасибо за ответы! Ознакомился с каждым.

    Тут дело в чем, привязать к покупателям никак не получится, нет регистрации как таковой и корзины, так как в них нет необходимости. И взаимодействие посетителя с таблицей фактически отсутствует. Заказы идут через заявки, чат или телефон.

    В моем случае по способу 2:
    Есть главный товар (родительский), у него не заполнены атрибуты, опции, скидки.
    И есть дочерние товары, которые имеют атрибуты (размер, штуки, мелкий опт, опт, крупный опт - все в зависимости от вида товара) с заполненными данными.

    Через парсинг АОП'ом по артикулам распределяются атрибуты по дочерним товарам и далее по указанному родительскому артикулу (10007) их связывает KIT SERIES в одну таблицу, размещаемую далее в карточке родительского товара. Все вроде нормально, но получаются лишние страницы, запросы, растет бд и т.д.

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

    Попытался на схеме показать, так должно быть понятнее:
    схема.jpg
     
  5. zema50

    zema50 Продвинутый пользователь

    Сообщения:
    802
    Симпатии:
    91
    Salivaloil, вам надо выводить только те данные которые в нижней таблице указаны или есть еще что то ?
    сейчас у вас получается каждый товар своя карточка, вы хотите все это обьеденить в одну карточку ?
     
    Salivaloil нравится это.
  6. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    660
    Симпатии:
    92
    Ну у опций несколько цен - такого функционала нет. И если такое делать, то потом если будете устанавливать модули, то может постоянно возникать необходимость в допиле. Поэтому если это разные товары, то лучше делать разными товарами, хоть у них один и тот же артикул.

    По поводу опций. Вы, кажется, не совсем меня правильно поняли. Не нужно создавать каких-то групп пользователей и т.п. Открываете карточку товара. Допустим, товар А. Цена 100 если кол-во до 20 шт. (мелкий опт) Цена 90 от 20 шт. (опт) Цена 80 от 50 шт. (крупный опт). Соответственно, во вкладке скидки устанавливаете для группы Default для 20 шт цену 90. Для той же группы для 50 шт. цену 80. Выставляете корректно порядок сортировки. Ну и более ничего делать не нужно. Если в корзине товара А будет 10 шт, то цена будет 100. Если 100 шт., то цена будет 80.
     
    Последнее редактирование: 19 фев 2023
    Salivaloil нравится это.
  7. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    660
    Симпатии:
    92
    Единственно, учитывайте, что цена во вкладке Акции так же может влиять, но если вы акции не используете, то проблем вообще не должно возникнуть
     
    Salivaloil нравится это.
  8. Salivaloil

    Salivaloil Новичок

    Сообщения:
    14
    Симпатии:
    0
    Да, именно эти данные.
    Ну во втором способе приходится делать несколько товаров (дочерних) с данными из таблицы в атрибутах, далее связывать их с одним родительским, чтобы в его карточке эти данные (атрибуты) выводить. Хотелось бы обходиться одним товаром, чтобы данные из таблицы можно было парсить в него и при этом иметь возможность гибко настраивать названия колонок, потому что где-то штуки, где-то кг, где-то упаковки и т.д. Но это, судя по всему, будет один большой костыль. А атрибуты - не лучшее решение для нескольких цен.

    Кажется, Вы правы. Все же остановлюсь на создании разных товаров с опциями с последующим связыванием через KIT SERIES. Увеличится их общее количество, конечно, но наверно 10000 товаров для опенкарта это не так много, как я себе это представлял.

    Все понял, буду иметь в виду!


    В общем, спасибо за помощь всем, кто отписался в теме. Теперь для меня все стало более очевидным, а уверенности в том, что я делаю, поболее будет! Хорошо, что по опенкарту существуют ру форумы, куда можно без VPN'а зайти и задать вопрос без задней мысли.
     
  9. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    660
    Симпатии:
    92