Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

parametric_external и справочник http_apis #560

Open
unpete opened this issue Feb 22, 2020 · 1 comment
Open

parametric_external и справочник http_apis #560

unpete opened this issue Feb 22, 2020 · 1 comment
Labels

Comments

@unpete
Copy link
Member

unpete commented Feb 22, 2020

Заказ дилера и parametric реализуют неплохую математику для Поставщиков - клиенты могут рассчитывать изделия, формировать и доставлять заказы.
Настало время, чтобы в Заказе дилера появилась клиентская математика для формирования внутри документа Расчет заказов внешним поставщикам с http API.

Зачем это надо

Математика нужна, чтобы в реальном времени в процессе формирования нашего заказа, рассчитать изделия в сервисе внешнего поставщика (подоконники, жалюзи и т.д.) по алгоритмам и правилам этого поставщика с точными ценами и сроками исполнения

Метаданные

  • Справочник http_apis хранит список доступных для заказа номенклатур, параметров и ограничений
  • Табчасть http_apis в справочнике Абоненты, служит для привязки элементов справочников Контрагенты и Серверы к API поставщика (разным абонентам нужна разная авторизация и в общем случае, разные контрагент и договор)
  • Табчасть Заказы в документе Расчет, хранит ссылки на Заказы поставщикам. Ссылки нужны для пересчетов и подклейки дополнительной информации (даты доставки и наши внутренние штрихкоды, которые поставщик должен напечатать на этикетах, но которые неизвестны в момент первичного расчета)
  • Параметры конкретного изделия, свёрнутые в json в терминах внешнего поставщика, храним в строке типовой табчасти ДополнительныеРеквизиты характеристики продукции. По заполненности этой строки, изделие внешнего параметрика, можно отличить от изделия рисовалки или параметрика внутреннего. Спецификация и координаты у таких изделий отсутствуют

Справочник http_apis может наполняться и обновляться автоматически, если сервис поставщика предоставляет такой режим, а может и руками технолога.
Решено не транслировать параметры поставщика в ссылки плана видов характеристик Допреквизиты и справочники Значения свойств объектов и Цвета. Так честнее, проще и надёжнее.

Алгоритм

  • На первом этапе, изделия parametric_external, планируется оформлять отдельными строками документа Расчет (так же, как сейчас оформляются обычный и расширенный parametric). Задача встроить parametric_external вовнутрь изделия рисовалки не сложна, но решать её будем отдельно
  • В форме parametric_external выбираем поставщика - открывается список доступных к заказу изделий и материалов
  • Добавляем интересующую позицию - открывается табчасть необходимых параметров (цвета, размеры, направления, уточнения)
  • По кнопке Рассчитать, создаётся или перезаполняется Заказ поставщику, выполняется http-запрос в сервис поставщика, возвращаются цены либо информация об ошибке
  • Т.к. нет жесткой привязки заказных изделий к геометрии изделий рисовалки, корректировка размеров и повторный пересчет - на совести менеджера
  • Заказ поставщику формируется с состоянием транспорта Черновик. Дозаполнение, проведение и финальная отправка пачки заказов поставщикам, выполняется в другой части алгоритма
  • Оплачивать заказы поставщикам можно как по отдельности, так и списком. Беспокоить менеджеров поставщика задачей выставления счетов, нет необходимости. Подбор заказов поставщикам в платёжку, выполняется в другой части алгоритма
@unpete unpete added the wiki label Feb 22, 2020
@unpete
Copy link
Member Author

unpete commented Feb 26, 2020

Со стороны метаданных, экранная форма parametric_external - это редактор табчасти Заказы документа Расчет, объединенная с редактором Заказа поставщику и редактором параметров строк Заказа поставщику.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant