Создать заказ по xls файлу - как?

Идея не нова, подсмотрена :wink:

Суть - Покупатель грузит xls файл, магазин распознает его и создает заказ.

Есть что-то похожее https://kramp.ru/excel/ но там платформа оффтопик :wink:

Как похожее реализовать на нашей платформе?

Я заказывал у RetailFactory подобный модуль. Товары из файла массово добавляются в корзину. Перед загрузкой покупатель может проверить результат парсинга.

Реализован парсинг по шаблону - столбцы в заранее оговорённой последовательности. Можно сделать с распознаванием по содержимому столбцов, но это будет дороже.

да, оно.

малость доработать бы ) наверное …

Добрый день! Скажите а что это за модуль?? Можете ссылку скинуть.

Это индивидуальная разработка под заказ

приподниму темку ))

Как на своей странице с наименьшим гемороем вывести список товаров имея в наличии массив из id-шек.
типа табличку для посетителя хочу вывести - иконка/акртикул/штуки/наличие/цена за шт./ кнопка добавить в корзину
может что поменяю еще…

Подскажите знающие :wink:

Если вкратце - быстро никак. Можем сделать для вас адаптацию, как делали для клиента из темы ранее.

нет возможности приобретать ((

за советы буду благодарен :wink:

на своей странице вставить блок “Товары” вывод списком с ручным заполнением. По умолчанию блок выключен, на нужных страницах включать и заполнять нужными товарами. Останется посмотреть , как список id товаров приписать этому блоку для конкретной страницы, но это не так сложно, как кажется (это для автоматизвции - загрузки списка, потому как по одному через поиск каждого - этого … хреново, короче :slight_smile: ).

да, думал про этот блок, про ручное посмотрю.
может взять tpl какую из этого блока и под себя заточить?
и потом инклюдить ))

/design/themes/responsive/templates/blocks/list_templates/compact_list.tpl
компактный список товаров

ага, гляну.
спасибо.

выставил

выключил

вот тут впал в ступор.
не могу включить блок и передать ему id товаров после принятия файла от посетителя.

делаю так - через хук подключаюсь - page_extra.pre.tpl тут по условию вывожу форму на принятие файла от посетителся, обрабатываю файл (controllers/frontend/) - и отдаю переменные(сообщения и idшки) в page_extra.pre.tpl

как это отдать блоку “Товары” не понимаю, я ж его в tpl не вижу.

func.php отрабатывает при загрузке страницы, тут можно и вкл/выкл и список id передать…

наводка:
содержание блоков: таблица cs_cart_block_contents, контент блока вида (сериализованный массив)

a:1:{s:5:"items";a:2:{s:7:"filling";s:8:"manually";s:8:"item_ids";s:19:"100,101,102,103,104";}}

то есть вот такой запрос для заполнения блока с товарами на странице блога:

INSERT INTO `cscart_bm_blocks_content` (`snapping_id`, `object_id`, `object_type`, `block_id`, `lang_code`, `content`)
VALUES
	(0, 31, 'pages', 90, 'ru', 'a:1:{s:5:\"items\";a:2:{s:7:\"filling\";s:8:\"manually\";s:8:\"item_ids\";s:39:\"5717,6202,6205,5714,5712,5706,5707,5705\";}}');

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

чтоб блок “Товары” включился и отобразил нужное придется перегрузить страницу?
Пользователь зашел на страницу (блок выкл и не виден) заслал файл, скрипт распознал, данные есть, в таблицу положу.

Дальше то как блок включится и данные подтянет? …

включен или выключен блок, я еще не докопался, может таблица cscart_bm_snapping отвечает ?
ну и конечно после выполнения обработки данных, либо если запрос через аякс - указать id блоков, которые он должен перезаписать, либо если отправка данных из формы обычным POST - после выполнения обработки поставить что-то вроде

return array(CONTROLLER_STATUS_REDIRECT, $_REQUEST['dispatch']);

Done!

https://shop.agroelement.ru/uploadxlsx/
Поддерживает три распространенных формата - xls/xlsx/csv.
1)Имеющиеся в наличии в достаточном количестве для заказа артикулы будут доступны для добавления в Корзину.
2) Позиции количество которых недостаточно на наших складах будут предложены приобрести под заказ - по кнопке отправляется письмо с позициями под заказ на е-мэил магазина.
3) позиции не найденные в базе магазина вообще выводятся списком после п.1 и п.2.

Не так страшен чёрт …
может кому интересно будет - да и критика не помешает :wink:

Пошел простым путём:
Воспользовался хуком - design/…/hooks/page/page_extra.pre.tpl
Вывод ссылок и прочего только для нужной страницы сделал через
проверку id страницы и проверку регистрации.
id страницы задается в админке в настройках модуля.

page_extra.pre.tpl по инклюду подключает tpl шаблона списка.

в app/addons/ …/controllers/frontend положил php обработчик.

php - парсит присланный файл, из базы берет данные, заполняет tpl-ки.

На тестах работает ))

2 лайка