Только пользователь с ролью Администратор может управлять Кадровиками.

Под управлением понимаем - назначение и снятие роли Кадрового специалиста


Управление персоналом


Сотрудник с ролью Кадровый специалист отвечает за управление кадровыми процессами. 

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


Подготовительный этап


API-методы

Примечания

1


1) Администратор получает список ролей сотрудников

 GET /api/v1/employeeRoles 


Справочник ролей это список идентификаторов роли с названием роли.

Так как это редко обновляемый справочник, то нет потребности запрашивать его каждый раз, если организовано хранение этого справочника на стороне Клиента

2


2) Получение полного списка справочника сотрудников

 GET /api/v1/clients/:clientId/employees 



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

  • происходит создание сотрудника сразу с указанием роли Кадровик
  • происходит обновление данных сотрудника по идентификатору сотрудника в ИС Клиента (externalId)


Если назначение/снятие роли будет происходить через методы добавления/снятия роли, то данный метод будет нужен, так как эти методы работают только с применением идентификаторов HRlink


Управление ролью Кадровик

Вариант 1. Создание Сотрудника с указанием роли Кадровика


API-методы

Примечания

1


1) Администратор при создание Сотрудника на основании Физ.лица задает роль Кадровик

 POST /api/v1/clients/:clientId/employees 



(warning) в документации нет описания полей и не указано поле отвечающее за табельный номер. Подробности в пояснении к методу


Параметры запроса

  •  :clientId  - передается идентификатор клиента

Тело запроса

```
{
    "clientUserId": "524de044-bcb4-4f4e-8a5c-cbf8048d4642",
    "clientUserExternalId": "71",
    "legalEntityId": "6950bb5b-8623-4321-93fc-1f11bc02c1c0",
    "legalEntityExternalId": "62",
    "departmentId": "134df774-77c6-4c00-bc20-7b974be6963e",
    "departmentExternalId": "52",
    "positionId": "e17de0b3-ec18-40b9-bd66-aad1f20e7faf",
    "positionExternalId": "42",
    "externalId": "С-1",
    "roleIds":
    [
        "222040ae-d476-4efe-a69a-bfcc68436767",
        "3c7e0a71-1737-4e63-bbd7-807a776fa752"
    ],
    "number": "105-56-FD"
    "tags":
    [
        "someTag1",
        "someTag2"
    ]
}
```


  • clientUserId - Идентификатор Пользователя в системе HRlink. Обязательный.

    • clientUserExternalId - Идентификатор Пользователя в ИС Клиента (если заданы оба, то будет использован только HRlink)

  • legalEntityId - Идентификатор Юрлица в системе HRlink. Обязательный

    • legalEntityExternalId - Идентификатор Юрлица в ИС Клиента (если заданы оба, то будет использован только HRlink)

  • departmentId - Идентификатор Отдела в системе HRlink.

    • departmentExternalId - Идентификатор Отдела в ИС Клиента (если заданы оба, то будет использован только HRlink)

  • positionId - Идентификатор Должности в системе HRlink.

    • positionExternalId - Идентификатор Должности в ИС Клиента (если заданы оба, то будет использован только HRlink)

  • externalId - идентификатор Сотрудника в ИС Клиента. Проверка на уникальность

  • roleIds - Перечень ролей назначаемых Сотруднику Пользователя при создании - передается списком

    • Кадровик может назначать роль Руководителя и Делопроизводителя

    • Администратор - Кадровика, Делопроизводителя  и Руководителя

  • number - табельный номер

  • tags - метки/теги к Сотруднику у Пользователя, например: город, центр затрат, признак дистанционный/удалённый и т.д. 


Вариант 2. Добавление роли через внесение изменений в данные Сотрудника

1

API-методы

Примечания

2




1) Кадровик обновляет сотрудника по ID своей ИС

 PUT /api/v1/clients/:clientId/employees/:externalId/externalId 

или

 PUT /api/v1/clients/:clientId/employees/:employeeId 



(warning) в документации нет описания полей и не указано поле отвечающее за табельный номер. Подробности в пояснении к методу


Параметры запроса

  •  :clientId  - передается идентификатор клиента

Тело запроса

```
{
    "departmentId": "134df774-77c6-4c00-bc20-7b974be6963e",
    "departmentExternalId": "52",
    "positionId": "e17de0b3-ec18-40b9-bd66-aad1f20e7faf",
    "positionExternalId": "42",
    "externalId": "С-1",
    "roleIds":
    [
        "222040ae-d476-4efe-a69a-bfcc68436767",
        "3c7e0a71-1737-4e63-bbd7-807a776fa752"
    ],
    "number": "105-56-FD"
    "tags":
    [
        "someTag1",
        "someTag2"
    ]
}
```


  • departmentId - Идентификатор Отдела в системе HRlink.

    • departmentExternalId - Идентификатор Отдела в ИС Клиента (если заданы оба, то будет использован только HRlink)

  • positionId - Идентификатор Должности в системе HRlink.

    • positionExternalId - Идентификатор Должности в ИС Клиента (если заданы оба, то будет использован только HRlink)

  • externalId - идентификатор Сотрудника в ИС Клиента. Проверка на уникальность

  • roleIds - Перечень ролей назначаемых Сотруднику Пользователя при создании - передается списком

    • Кадровик может назначать роль Руководителя и Делопроизводителя

    • Администратор - Кадровика, Делопроизводителя  и Руководителя

  • number - табельный номер

  • tags - метки/теги к Сотруднику у Пользователя, например: город, центр затрат, признак дистанционный/удалённый и т.д. 


Вариант 3. Управление ролью Кадровик через отдельные методы Добавления и Снятия роли


API-методы

Примечания

1


 1) Добавление роли


 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/add 

или

 PUT /api/v1/clients/:clientId/employees/:employeeId/roles/remove 

 (warning)  данные методы работают только с указанием идентификатора сотрудника в HRlink, выше в блоке [Подготовительный этап] указано как получить данные по Сотрудникам




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