Files
request-portal/docs/routing.md
T
Тимур Городецкий c2e785961b feat: implemented workpalcesetup form
2026-08-04 11:08:16 +05:00

5.0 KiB

Маршрутизация портала заявок (для интеграций)

Портал — один web part на одной странице. Что показать, он решает по параметрам URL. Этот документ — контракт ссылок для тех, кто их формирует (Power Automate, кнопки, уведомления).

Страница портала: https://<тенант>.sharepoint.com/sites/requests/SitePages/<Страница>.aspx (точный адрес страницы уточнить у владельца портала).


Важно: префикс rp

Имена id, mode, type зарезервированы SharePoint и ломают страницу (?id= → «Элемент не существует»). Поэтому все наши параметры — с префиксом rp: rpmode, rptype, rpid, rpsource.


Режимы

Режим Когда Параметры Что открывается
Подача (по умолчанию) нет наших параметров — Категории → плитки → форма
Согласование согласующему пришла заявка rpmode=approve + rptype + rpid Заявка только для чтения + кнопки решения
Создание на основе производная заявка с предзаполнением rptype + rpsource Форма, предзаполненная из исходной заявки

Параметры

Параметр Значение Пример
rpmode approve — режим согласующего (иначе не указывать) rpmode=approve
rptype ключ формы (см. таблицу ниже) rptype=recruiting-hire
rpid Id элемента списка ДАННЫХ заявки (колонка ИД) — для approve rpid=42
rpsource Id исходной заявки для предзаполнения — для «создания на основе» rpsource=42

Ключи форм (rptype)

rptype Заявка Категория Согласование Режим согласующего Создание на основе
recruiting-selection Заявка на подбор Рекрутинг нет нет —
recruiting-hire Заявка на прием Рекрутинг да да —
it-workplace-setup Организация рабочего места IT да да из recruiting-hire
hr-transfer На перемещение сотрудников Отдел кадров (в разработке) — —

Готовые примеры ссылок

Пусть страница портала = …/sites/requests/SitePages/Портал-Заявок.aspx.

Согласующему открыть заявку на прием №42:

…/Портал-Заявок.aspx?rpmode=approve&rptype=recruiting-hire&rpid=42

Согласующему открыть заявку «орг. рабочего места» №7:

…/Портал-Заявок.aspx?rpmode=approve&rptype=it-workplace-setup&rpid=7

Создать «орг. рабочего места» на основе заявки на прием №42 (предзаполнение):

…/Портал-Заявок.aspx?rptype=it-workplace-setup&rpsource=42

Кто формирует ссылки

  • Согласование (rpmode=approve…) — поток Power Automate, который уведомляет согласующего (аналог ct-notify-kps). Поток знает rpid (Id элемента списка данных) и подставляет rptype константой под свою форму.
  • Создание на основе (rptype…&rpsource…) — кнопка на заявке-источнике (напр. «Создать заявку на организацию рабочего места на основе текущей»). Кнопка подставляет rpsource = Id текущей заявки.

Примечания

  • rpid и rpsource — это Id элемента списка ДАННЫХ (не строки согласования).
  • «Создание на основе» — снимок: значения копируются на момент создания; дальнейшие изменения исходной заявки в производную не переносятся. У производной сохраняется колонка-источник (Lookup).
  • Если нужного набора параметров нет/они неполные — портал открывается в обычном режиме подачи.