Задача [API96]: Изменение способа обращения с специальным справочникам

Формулировка проблемы: обращение к специальным справочникам и их элементам производится по идентификатору, из-за чего могут возникать проблемы при импорте конфигурации.

Решение: необходимо доработать методы API, принимающие или возвращающие элементы специальных справочников, таким образом, чтобы обращение к этим элементам производилось по коду.

Задача делится на три части:

  1. Доработка методов API, использующих формы завершения

  2. Доработка способа обращения к справочникам в дополнительных полях планов

  3. Доработка импорта маршрутов реестра/ шаблонов маршрутов, шаблонов проектов

Доработка методов API, использующих формы завершения

В следующие методы API необходимо добавить новый параметр completionFormCode - код формы завершения:

  • rest/api/workflow/work/create

  • rest/api/workflow/work/save

  • rest/api/workflow/work/start_route

Параметр не обязателен для заполнения, если указан completionFormID. При этом если заполнены одновременно и completionFormID, и completionFormCode, то приоритет имеет параметр completionFormCode.

В следующие методы, возвращающие идентификатор формы завершения, необходимо добавить новый возвращаемый параметр completionFormCode - код формы завершения:

  • rest/api/registry/route

  • rest/api/registry/route/start

  • rest/api/docflow/doc/save_resolution

  • rest/api/docflow/doc/get_resolution

  • rest/api/workflow/work/get_actions

  • rest/api/workflow/get_execution_process

Доработка способа обращения к справочникам в дополнительных полях планов

При заполнении справочника pm_custom_fields поля dictionary_value_field и dictionary_label_field должны заполняться ссылкой на используемое поле справочника в формате <код справочника>.<код колонки>.

Действия при обновлении системы: во всех элементах справочника pm_custom_fields идентификатор колонки справочника, если он указан, должен быть заменен на ссылку вида <код справочника>.<код колонки>.

Доработка импорта маршрутов реестров/ шаблонов маршрутов, шаблонов проектов
  1. Если коды записи справочника work_completion совпадают в средах экспорта и импорта, то мероприятию будет присвоена форма завершения среды импорта с этим кодом.

  2. Если поле type справочника calendar_types совпадает в средах экспорта и импорта, то импортируемому этапу будет присвоен статус среды импорта с этим типом.

  3. Если коды записи справочника pm_custom_fields совпадают в средах экспорта и импорта, шаблон проекта будет иметь дополнительное поле из справочника среды импорта с этим кодом.