Компонент для cms MODX в связке с 1С
Задача:
Необходимо сделать на cms MODX – компонент для отображения товаров на страницах сайта в связке с 1С.
Не интернет магазин, а компонент!
Суть задачи:
Есть программа 1с, которая заполняется человеком на основании приходных документов, т.е. информации по каждому товару - самый минимум (наименование, наличие и цена., и что-то еще).
И так же, структура каталога товаров и названия товаров, - своеобразная, техническая.
Поэтому на сайте будет каталог с другой структурой и названиями товаров (похожими, но измененными).
Т.е. на сайте будут созданы страницы (материалы), которые заполняются информацией (произвольно, "ручками"). И будет на каждой странице - таблица, где каждая строка в таблице - это товар из 1с.
Принцип работы страниц ( именно таблицы) – почти, как здесь: lunda.ru/catalog/category...
Плюс свои дополнения (обсудим).
В каждой строке таблицы на страницах сайта - много данных, но из 1с (по каждому товару) - отображается только два параметра (цена и количество).
Т.е. в админке не надо делать карточку товара на каждый товар из 1с.
На каждой странице сайта - общая таблица, где каждая строка в таблице - товар из 1с, где в каждой строке - из 1с отображается (и обновляется) только два параметра - цена и количество.
Т.е. информация из 1с по каждому товару (цена и количество), отображаемая в таблице на сайте, - не будет правится, изменяться или дополняться в админке на сайте, только отображаться, из 1с.
Раз в день (наверное ночью) автоматом происходит загрузка файла бд 1с - в бд сайта, а затем на каждой странице сайта, в таблице, - происходит обновление двух колонок из бд 1с (цена и количество в каждой строке таблицы, т.е. по каждому товару).
Обратной связи - с сайта в 1с не будет, только загрузка в бд сайта и обновление двух параметров в таблицах на страницах сайта.
Есть еще момент: все создано (все товары из 1с - связаны со строками в таблицах на страницах сайта).
Но вот в 1с - создан новый товар.
Необходимо, чтобы после загрузки бд 1с - в бд сайта, и проведения обновления цены и количества в таблицах на каждой странице сайта, - производилась проверка на связь всех товаров из 1с - с товарами (строки в таблицах) на страницах сайта.
И после проведения этой проверки (на связь) - в админке отображалась информация - к примеру: «Выполнено обновление - есть товары, не отображенные на сайте».
Мы видим название каждого такого товара и название папки, в которой он находится (из 1с).
И две кнопки - "Добавить в существующий материал" и "Создать новый материал".
1) Нажимаем на кнопку "Добавить в существующий материал" - появляется всплывающее окно, в котором мы выбираем категорию и материал, в который хотим добавить новый товар (строку в уже существующую таблицу).
Добавилась строка в таблицу в материале.
В этой добавленной строке - всего три параметра (что из 1с) - название, количество и цена.
Остальные параметры - заполняем ручками.
2) Нажимаем на кнопку "Создать новый материал" - открывается страница нового материала, в который добавляется одна строка таблицы, где, как и при добавлении новой строки в существующую страницу: как в п. 1) В этой добавленной строке - всего три параметра (что из 1с) - название, количество и цена.
Остальные параметры - заполняем ручками.
Т.е., добавив эту новую строку в таблицу или одну строку в новый материал (новый товар в 1с) - эта строка уже связана с товаром в 1с, и при следующем обновлении - два параметра (цена и количество) в этой строке просто обновляются.
С таблицей в материале можно работать, изменять таблицу: добавлять, удалять, отключать строки и колонки, изменять информацию, за исключением двух колонок Цена и Количество (т.к. эти две колонки - отображаются из 1с, их можно только отключать, но не править или удалять! )
Вариант работы с материалом (таблицей) - есть.
И надо сделать этот же вариант работы с материалом (таблицей) - во фронтенде, в мод. окне.
Т.е. вход по логину и паролю во фронтенде - появляется иконка "Редактировать", клик по иконке и мод. окно с материалом для редактирования.
В 1С – не все товары есть, из тех, что будут на сайте (строки в таблицах на страницах), т.е. основное – сайт со страницами и таблицами с товарами, которые связаны с товарми в 1С.
Оплаты через сайт – не будет.
Клиент добавляет товар в корзину.
В корзине: как в обычной корзине интернет магазина: строки добавленных товаров в корзину.
Только в начале каждой строки - фото из материала, в котором находилась эта строка в таблице.
Фото маленькое и по клику - открывается для просмотра в мод. окне, размер, как в материале.
Можно в каждой строке так же - изменить количество и отображается цена за 1 шт. и общая - за выбранное количество этого товара, плюс значок удаления строки (товара из корзины)
Ниже - общая цена в корзине за весь товар и кнопка "Отправить заказ".
И происходит отправка заказа на почту менеджеру компании (документ определенной формы) и на почту клиенту этому (документ определенной формы) .
Сайта нет, берем чистую cms MODX – на которой создаем компонент. Информация по каталогу (страницы с таблицами, то, что будем связывать с 1С) – есть.
Желаемый принцип работы и отображения – есть.
Скорость работы сайта – загрузка страниц!
Это наше видение компонента, может быть Вы предложите лучшее и более простое решение ....