Обмен информацией между интернет-магазинов (Laravel, PHP) и 1С по ТЗ
В архиве
5752 |
4
30 августа 2024 в 18:00:44
(1 день 12 часов назад)
957610
29.03.2024 13:25:48
Текст задания
Цель: обмен информацией между интернет-магазинов (Laravel, PHP) и 1С.
Версия 1С (со слов Заказчика): 1С Предприятие, версия 8.3, редакция 11.5
Механизм обмена: мы используем для обмена протокол FTP (на FTP-сервер магазина передается
json-файл с актуальной информацией о товарной базе). Этот файл мы разбираем и из него
формируем товарную базу интернет-магазина. Сама методика загрузки и структура файла
достаточно гибкие, т.к. на нашей стороне все полностью программируется вручную.
Что нужно выгружать:
1. Фотография товара (1 основная и до 2-х дополнительных)
2. Номенклатура
3. Актуальный остаток в 1С (число)
4. Цена товара розничная (число)
5. Цена товара оптовая (число)
6. Скидка на товар розничная (число)
7. Скидка на товар оптовая (число)
8. Бренд (текст)
9. Название товара (текст)
10. Описание (текст)
11. Ряд дополнительных текстовых полей (состав, метод применения, срок годности и т.п., их
немного, точный список сейчас согласовывается – ориентировочно 3-7 полей).
12. Категория товара (выбор из статичного списка)
Фотографии в других проектах из 1С мы получаем на тот же FTP сервер, нам важно, чтобы их
названия были указаны в JSON-файле (чтобы мы могли связать конкретное фото с товаром).
Также, необходим механизм обратной связи между сайтом и 1С, а именно, выгрузка заказов.
Здесь нужны самые базовые функции:
1. Отправка заказа в 1С (основная цель – снизить остатки, т.е. приходит список номенклатур и
количество заказанных товаров по каждой позиции, а также оплаченная цена и 2-3
текстовых поля – имя, телефон, адрес).
2. Отмена заказа в 1С (все то же самое, но для отмены заказа – этот пункт можно убрать,
если он вызовет особые сложности).
Важный момент: необходимо сделать так, чтобы на сайт приходили именно изменения. Т.е.
первый выгрузили базу – загрузилось все. Далее приходят только изменения (например, только
обновление остатков, если где-то что-то поменялось – обновляем только этот момент, например,
новый товар, изменение названия старого товара, изменение цены старого товара и т.д.). По
большей мере, делаем это с целью снизить нагрузку на сервер. Частоты обмена не критична,
можно, условно, оценивать её как 1 раз в 1 час.
У Заказчика 1С, обычная, т.е. кастомных полей (бренд, 2 вида скидок и т.д.) –
нет. Их нужно создать, чтобы Заказчик смог заполнять такие карточки в 1С. Возможно, что-то
получится использовать из «коробочного» функционала 1С, какие-то поля могут потребоваться
новые. Здесь, опять же, все обсуждаемо.
Если кратко, то список работ, следующий:
1. Доработать 1С для возможности создания карточек товаров по ТЗ.
2. Наладить обмен 1С -> Сайт (FTP) товарным карточками (включая фото), обмен должен
происходить обновленной информацией, не загрузка все базы заново каждый раз.
3. Наладить обмен Сайт (FTP или иной метод) -> 1C заказами (текст, кол-во товаров, итог).