Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Excerpt
Info
titleО чём раздел


Под сценариями работы Сотрудника с Заявлениями понимаем:

  1. Подачу заявления (из файла или по шаблону) и подписание его УНЭП

  2. Получение данных по Заявлению, в т.ч. архив КЭДО
  3. Обработка заявления - Согласование или Отклонение


Table of Contents


Сценарии работы Сотрудника с Заявлениями

1. Сотрудник подает заявление из файла и подписывает его УНЭП

Tip
titleЦель

Предоставить Сотруднику возможность направить заявление, оформленное произвольным образом или по заранее подготовленному файлу.

Предусловия

  1. авторизация произведена

  2. Получены типы Заявлений (для использования идентификатора заявления из файладальнейшего использования id типа "Загрузка из файла" и id участников по этому маршруту)

    1. GET /api/v1/applicationTypes

  3. Определён список сотрудников, для Согласования

    1. GET /api/v2/clients/:clientId/colleagues


API-метод

Примечания

1) Получены типы Заявлений и маршрут подписания

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/applicationTypes

 

Данный метод предоставляет список типов заявлений, доступных для подачи, а также маршруты подписания по этим типам. Для подачи заявления из файла необходимо выбрать соответствующий тип Заявления - для стандартного типа "Загрузка из файла" всегда указан "templatable": false, для всех остальных типов "templatable": true, поскольку для таких типов существует шаблон. 

(warning)  В ответе метода указаны id участников маршрута Заявления (applicationTypes[].signingRouteTemplate{}.stages[].participants[].id), которые необходимо в дальнейшем указывать при создании группы Заявлений (см. п  4)

(info) Типы заявления могут быть стандартными от HRlink, могут быть пользовательскими. Клиент может создать свой тип Заявления и настроить свои заполняемые поля со стороны Заявителя. Также возможно привязать стандартный маршрут от HRlink или создать свой. Создание типа с маршрутом доступно Администратору HRlink.  Подробнее про Создание новых типов заявлений.

2) Сотрудник загружает файл для подачи заявления

 

Status
subtletrue
colourGreen
titleREDOC

POST /api/v1/files

Сотрудник заранее создает файл и прикладывает его при оформлении Заявления в системе. После загрузки файла, будет получен идентификатор загруженного файла. Данный идентификатор надо передать в методе создания группы заявлений. (см. п  4)

3) Сотрудник выбирает кто будет согласовывать заявление


Определить Согласующих возможно несколькими способами:

  1. На основании метода GET /api/v2/clients/:clientId/colleagues из полученного списка выбирается тот, кто будет передан в метод создания Заявления как Согласующий (метод не описан на текущий момент)

  2. Возможно указать participants[].employeeExternalId - идентификатор сотрудника внешней системы, в качестве участника маршрута при подаче заявления (см. п  4). (warning)  На момент подачи Заявления employeeExternalId сотрудников должны быть переданы в HRlink.

4) Сотрудник подаёт заявление из загруженного файла

Status
subtletrue
colourGreen
titleREDOC

POST /api/v1/clients/:clientId/applicationGroups

Система сама сконвертирует загруженный файл в pdf/a формат для дальнейшего подписания.

В ответе будет получен идентификатор заявления, его можно использовать при завершении процесса для отображения формы заявления

5) Запуск подписания Заявления УНЭП - запрос сообщения с кодом

 

Status
subtletrue
colourGreen
titleREDOC

POST /api/v1/clients/:clientId/applicationGroups/:applicationGroupId/sign/nqes

На активный канал получения кода подписания Сотрудника будет выслан код для подписания УНЭП. После - сотруднику необходимо ввести код и передан его для проверки, поэтому по итогу вызова данного метода требуется отобразить форму ввода кода.

(info) Канал получения кода подписания устанавливается при выпуске УНЭП Сотруднику. 

6) Завершение подписания Заявления УНЭП - подтверждение кода из сообщения

Status
subtletrue
colourGreen
titleREDOC

PUT /api/v1/clients/:clientId/applicationGroups/:applicationGroupId/sign/nqes

Передача кода для проверки в УЦ.

Результат проверки кода не возвращается в ответе метода, т.к. процесс асинхронный. Требуется опрашивать статус Заявления для продолжения процесса. Подробнее про состояния Заявления.

7) Получение данных Заявления

Status
subtletrue
colourGreen
titleREDOC

GET /api/v2/clients/:clientId/applicationGroups/:applicationGroupId


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

  1. получить обновление по статусу

  2. перейти к запросу печатной формы с оттиском

8) Получение печатной формы заявления с оттиском

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/clients/:clientId/applications/:applicationId/printFormFile



2. Сотрудник подаёт заявление по шаблону и подписывает его УНЭП

Tip
titleЦель

Предоставить Предоставить Сотруднику возможность направить заявление, по заранее определённому шаблону, ожидающему заполнения заданных полей.

Предусловия

  1. Шаблон типа заявления активен 
  2. Получены системные поля поля  

    Status
    subtletrue
    colourGreen
    titleREDOC

    1. GET /api/v1/applicationTypeFields/system

  3. Определён список сотрудников, для Согласования

    1. GET /api/v1/clients/:clientId/colleagues

API-метод

Примечания

1) Получены типы Заявлений и маршрут подписания

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/applicationTypes

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

(warning)  Во всех типах с флагом "templatable": true указаны параметры заполняемых полей, в том числе и идентификаторы этих полей templateFields[].id. Эти id необходимо в дальнейшем указывать при создании группы Заявлений (см. п  3) вместе с данными, которые заполнил Заявитель.

(warning) В ответе метода указаны id участников маршрута Заявления (applicationTypes[].signingRouteTemplate{}.stages[].participants[].id), которые необходимо в дальнейшем указывать при создании группы Заявлений (см. п  3)

(info) Типы заявления могут быть стандартными от HRlink, могут быть пользовательскими. Клиент может создать свой тип Заявления и настроить свои заполняемые поля со стороны Заявителя. Также возможно привязать стандартный маршрут от HRlink или создать свой. Создание типа с маршрутом доступно Администратору HRlink. Подробнее про Создание новых типов заявлений.

 


2) Сотрудник выбирает кто будет согласовывать заявление


Определить Согласующих возможно несколькими способами:

  1. На основании метода GET /api/v2/clients/:clientId/colleagues из полученного списка выбирается тот, кто будет передан в метод создания Заявления как Согласующий (метод не описан на текущий момент)

  2. Возможно указать participants[].employeeExternalId - идентификатор сотрудника внешней системы, в качестве участника маршрута при подаче заявления (см. п  3). (warning)  На момент подачи Заявления employeeExternalId сотрудников должны быть переданы в HRlink.

3) Создание заявления по шаблону

Status
subtletrue
colourGreen
titleREDOC

POST /api/v1/clients/:clientId/applicationGroups

На основании того, какой был выбран тип (шаблон) заявления необходимо заполнить обязательные поля:

  • это может быть передача ранее определённых данных, таких как ФИО, отдел, должность и т.д.

  • это может быть UI форма для заполнения таких данных как, например, даты отпуска, тип отпуска, новое название отдела при переводе и т.д. 

(warning) Идентификатор файла fileId - не заполняется, т.к. Система сама формирует файл заявления и конвертирует его в pdf/a формат для последующего подписания.

4) Получение данных Заявления

Status
subtletrue
colourGreen
titleREDOC

GET /api/v2/clients/:clientId/applicationGroups/:applicationGroupId

После того, как создано заявление, система формирует pdf файл, который можно отобразить для проверки перед подписанием

5) Загрузка файла заявления, сформированного по шаблону

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/clients/:clientId/applications/:applicationId/convertedFile

Данный этап не является обязательным, но позволяет Сотруднику увидеть, что получилось по итогу заполнения полей шаблона заявления, если результат устраивает - переход к шагу 5, в случае если результат не устраивает - переход к шагу 2

6) Запуск подписания Заявления УНЭП - запрос сообщения с кодом

 

Status
subtletrue
colourGreen
titleREDOC

POST /api/v1/clients/:clientId/applicationGroups/:applicationGroupId/sign/nqes

По итогу вызова данного метода требуется отобразить форму ввода кода


7) Завершение подписания Заявления УНЭП - подтверждение кода из сообщения

Status
subtletrue
colourGreen
titleREDOC

PUT /api/v1/clients/:clientId/applicationGroups/:applicationGroupId/sign/nqes

В данный метод передается код, который направляется в сообщении


8) Получение данных Заявления

Status
subtletrue
colourGreen
titleREDOC

GET /api/v2/clients/:clientId/applicationGroups/:applicationGroupId

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

  1. получить обновление по статусу

  2. перейти к запросу печатной формы с оттиском

7) Получение печатной формы заявления с оттиском

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/clients/:clientId/applications/:applicationId/printFormFile


3. Сотрудник просматривает Заявление

Tip
titleЦель

Предоставить Сотруднику всю информацию по заявлению

Предусловия (одно из)

  • Заявление подано сотрудником

  • Сотрудник является согласующим 


API-метод

Примечания

1) Сотрудник загружает список заявлений, в соответствии с фильтрами

Status
subtletrue
colourGreen
titleREDOC

POST /api/v2/clients/:clientId/applicationGroups/getEmployeeRegistry


2) Получение данных Заявления

Status
subtletrue
colourGreen
titleREDOC

GET /api/v2/clients/:clientId/applicationGroups/:applicationGroupId

Данный метод возвращает метаданные заявления, но не файл для просмотра

3) Получение печатной формы заявления с оттиском

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/clients/:clientId/applications/:applicationId/printFormFile



4. Сотрудник Обрабатывает заявление как Согласующий

Tip
titleЦель

Предоставить ответственному сотруднику возможность принять решение по заявлению:

  • согласовано

  • отклонено

  • нужно заменить согласующего

 

Предусловия

  1. Заявление подано сотрудником

  2. Сотрудник является согласующим

  3. выполнен сценарий - Сотрудник просматривает Заявление


API-метод

Примечания

1) Сотруднику, который указан согласующим при просмотре заявления, ожидающего согласования необходимо предоставить выбор совершаемого действия:

  • Согласование заявления Согласующим

PUT /api/v1/clients/:clientId/applications/:applicationId/participants/approver/approve

  • Отклонение заявления Согласующим

PUT /api/v1/clients/:clientId/applications/:applicationId/participants/approver/reject

  • Запрос на замену согласующего

PUT /api/v1/clients/:id/applications/:applicationId/participants/approver/rejectApproving



2) Получение данных Заявления

Status
subtletrue
colourGreen
titleREDOC

GET /api/v2/clients/:clientId/applicationGroups/:applicationGroupId


3) Получение печатной формы заявления с оттиском

Status
subtletrue
colourGreen
titleREDOC

GET /api/v1/clients/:clientId/applications/:applicationId/printFormFile



5. Сотрудник (Заявитель) заменяет Согласующего на основании запроса

Tip
titleЦель
Скорректировать согласующего, так как предыдущий сотрудник запросил смену согласующего

 

Предусловия

  1. Заявление подано сотрудником

  2. Сотрудник является согласующим

  3. выполнен сценарий - Сотрудник просматривает Заявление

  4. Определён список сотрудников, для Согласования

    1. GET /api/v1/clients/:clientId/colleagues


API-метод

Примечания

1) Сотрудник выбирает кто будет согласовывать заявление


На основании метода GET /api/v1/clients/:clientId/colleagues из полученного списка выбирается тот, кто будет передан в метод создания Заявления как Согласующий

Подробнее о методе см. раздел https://hr-link.atlassian.net/wiki/spaces/HRLIN/pages/666075304/04.#3.1.-%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B0-%D0%A1%D0%BE%D1%82%D1%80%D1%83%D0%B4%D0%BD%D0%B8%D0%BA%D0%BE%D0%B2-%D0%B4%D0%BB%D1%8F-%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%B0-%D0%A1%D0%BE%D0%B3%D0%BB%D0%B0%D1%81%D1%83%D1%8E%D1%89%D0%B5%D0%B3%D0%BE

2) Сотрудник передает данные идентификатор нового согласующего

PUT /api/v1/clients/:clientId/applications/:applicationId/participants/approver/change

На данный момент данный метод не оформлен в API-документации see-no-evil monkey

Замена Согласующего происходит только если Согласующий отметил в Заявлении, что не является Согласующим

6. Сотрудник загружает архив КЭДО по Заявлению


Tip
titleЦель

Предоставить сотруднику архив, содержащий:

  • файл который подписывался

  • печатную форму с оттисками

  • файл подписи


Предусловия

  1. выполнен сценарий - Сотрудник просматривает Заявление


API-метод

Примечания

GET /api/v1/clients/:clientId/applications/:applicationId/archive






Поиск документации

Livesearch
spaceKeyWIKI