О чём раздел В данном разделе есть описание объектов (метдананые, связи со справочниками или между собой, область видимости и определение состояния на основании признаков)
Общая модельная картина
Направление обмена информацией между системами
Пояснения к схеме
Информационная Система Клиента (ИСК) передает в HRlink справочники
Информационная Система Клиента (ИСК) передает в HRlink документы для КЭДО
Оригинальный файл, в соответствии с ограничениями по типу и размеру
Метаданные: Данные подписантов, идентификатор, данные документа
Информационная Система Клиента (ИСК) запрашивает обновление состояния документа из HRlink
Обновление статуса КЭДО
Обновление по файлам: Архив КЭДО, ПФ с оттиском, Файлы подписей
Логические связи. Роли, Справочники, Виды подписей
Пояснения к схеме
Логин, Пароль, Канал Уведомления, Электронная Подпись - это всё атрибуты ФЛ
- У одного ФЛ может быть множество Сотрудников
- Сотрудники могут обладать определённой ролью
- Сотрудники связаны с юрлицом (обязательно), отделом и должностью.
Определение видимости для Кадровика
Пояснения к схеме
Кадровик видит всех Руководителе (сотрудников, которые обладают ролью “
Руководитель
”)Кадровик видит Сотрудников (речь о тех, кто без роли руководитель) на основании единовременного выполнения следующих условий:
Сотруднику назначен Отдел, который входит в список доступных для Кадровика отделов (или не привязан ни к одному отделу)
Сотруднику оформлен в ЮЛ, которое соответствует Кадровику
Пользователь Кадровый специалист обладает Сотрудником в Юрлице и у этого сотрудника есть роль Кадровик.
- Кадровику было выдано разрешение на выполнение кадровых процессов в рамках Юрлица.
Справочники
Важно
Для Интеграции HRlink предоставляет доступ к API в рамках тенанта Клиента.
Юрлицо
Юрлицо имеет следующий набор данных:
- Наименование
- Полное
- Краткое
- Идентификатор
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Юрлица в ИС Клиента, может быть передан при создании или обновлении
- Реквизиты
- ИНН
- ОГРН
- КПП
- Адрес регистрации и Регион
- Руководитель
- Данные о сотруднике, который будет использоваться при маршрутизации КЭДО и генерации Заявлений по шаблону
- Основание для полномочий
Отдел
Отдел помогает определять область видимости и маршрутизацию КЭДО. имеет следующий набор данных:
- Наименование
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Отдела в ИС Клиента, может быть передан при создании или обновлении
- идентификатор родительского отдела
- Связь с юрлицом (необязательная) - через id HRlink
- Руководитель отдела (необязательный) - используется для маршрутизации КЭДО
Должность
Имеет следующий набор данных:
- Наименование
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Должности в ИС Клиента, может быть передан при создании или обновлении
Физлицо
Пользователь, как человек, имеет следующий набор данных:
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Физлица в ИС Клиента, может быть передан при создании или обновлении
- Данные ФЛ:
- Фамилия, Имя, Отчество
- Пол
- Дата рождения
- Данные о документах: СНИЛС, ИНН, Паспорт
- Данные пользователя
- Логин
- Канал уведомления
- Данные приглашения
- Данные ЭП
- Данные о последнем запросе на выпуск УНЭП
- Данные о текущей ЭП, доступной пользователю
- Связь с Сотрудниками
Роль Администратора может быть назначена на Физлицо.
Сотрудник
имеет следующий набор данных:
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Сотрудника в ИС Клиента, может быть передан при создании или обновлении
- Табельный номер - строгая уникальность в рамках юрлица
- Связь с Юрлицом (обязательно)
- Связь с Отделом
- Связь с Должностью
- Роли: Кадровика, Руководителя, Делопроизводителя, Кастомная роль
- Данные о дате увольнения: может не быть (сотрудник считается работающим), может быть задана как текущее или прошедшее число (сотрудник уже уволен) и быть задана как будущая дата (например, отработка при увольнении)
- Теги - для произвольного группирования
Тип документа
имеет следующий набор данных:
- Наименование
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Типа Документа в ИС Клиента, может быть передан при создании или обновлении
- Код классификатора Минтруда
- Признаки:
- Видимости - активный или скрыт
- Системный или Кастомный
Вид Заявления
имеет следующий набор данных:
- Наименование
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Вида Заявления в ИС Клиента, может быть передан при создании или обновлении
- Признак видимости - активен шаблон заявления или нет
- Данные шаблона
- Файл шаблона
- Набор полей используемых в шаблоне (системных и пользовательских)
- Данные маршрута прохождения Заявления
- Переопределение шаблона для Юрлица
МЧД (Машино Читаемая Доверенность)
Обязательность использования МЧД может быть включена как настройка Тенанта у Клиента. МЧД определяет возможность подписания документов УКЭП от лица Работодателя.
Имеет следующий набор данных:
- Номер, Дату выдачи, Срок действия
- Связь с Юрлицом
- Идентификаторы
- ID - UUID генерируемый HRlink автоматически, обязательно уникален в рамках тенанта
- externalID - идентификатор Должности в ИС Клиента, может быть передан при создании или обновлении
- Полномочия
Документ
Определение
Документом в HRlink называется объект, у которого КЭДО направлен от Работодателя к Работнику, т.е. по сути Кадровик Направляет Документ на Подписание.
Общая схема работы с Документом
Действия доступные над документом, в зависимости от роли
Пояснения к схеме
Автором документа может быть только Кадровик
В документе могут быть следующие роли:
Кадровик - автор документа, тот кто может получить состояние документа в любой момент времени (при условии наличия достаточных прав для просмотра документа)
Подписант
Представитель Работодателя - пользователь, который подписывает документ от имени работодателя
Сотрудник - пользователь, который подписывает документ или знакомиться с документом
Наблюдатель - пользователь, который может ознакомиться с документом без подписания только после того, как КЭДО завершен
Видимость документа для Подписантов определяется
Прямым указанием Пользователя как участника КЭДО
Маршрутом документа и его состоянием
Т.е. если документ сперва должен подписать Руководитель и только потом - Сотрудник, то
Руководитель его видит сразу после того, как Документ направлен на подписание,
Сотрудник видит только после того, как Руководитель подписал документ
Любой участник КЭДО может скачать Архив КЭДО по видимому документу
Условия видимости документа
Пояснения к схеме
- Документ может создать только Кадровик и может указать в нём:
- Тип документа - определяется из Справочника Типов документов, на основании того, какие Типы документов были разрешены Администратором для Кадровика
- ЮЛ - определяется на основании того, по каким ЮЛ у пользователя есть отрудник с ролью Кадровик или по
- Подписанты
В качестве Представителя работодателя, Кадровик может указать любого действующего сотрудника, с ролью Руководитель
В качестве Сотрудника/Наблюдателя, Кадровик может указать только тех Пользователей, у которых сотрудники входя в доступные Отделы, разращённые Администратором
Маршрут подписания
Кадровик видит документ только на основании соответствия - Типа документа, Подписантов (хотя бы один должен входить в разрешённый отдел) и ЮЛ
Кадровик видит документ без учёта состояния документа и маршрута подписания
Подписанты видят только те документы, в которых были указаны, с учётом маршрута подписания
Наблюдатели могут видеть только те документы, в которых были указаны и только по документам у которых завершен КЭДО
- Если документ имеет связь с другим Документом/Заявлением - то тот, кто видит Документ со связью может увидеть и тот объект, с которым связь установлена.
- Например, Приказ о выплате создан на основании Заявления о компенсации. Руководитель подписывающий Приказ не был участником КЭДО в Заявлении, но так как Приказ связан с Заявлением, то раз Руководитель видит Приказ, видит связь, то сможет увидеть и Заявление.
Архитектурные особенности объекта
Важно
Очень важно учитывать поведение документов при отправке с точки зрения externalId (идентификатора в ИС Клиента)
- В ряде случаев externalId, указанный при создании, будет сохранён в поле externalId
- В ряде случаев externalId, указанный при создании, перейдёт в поле baseDocumentExternalId
- Частичная отправка на подписание не возможна, если при создании был указана externalId
- При создании документа всегда формируется ГРУППА ДОКУМЕНТОВ, в которой может быть 1 или несколько документов.
- При создании документа ему кроме метаданных нужен файл, который будет подписываться, но нужно учесть процедуру конвертации
- Если при создании был передан идентификатор загружаемого файла - то файл будет сконвертирован в PDF/A, т.е. файл который будет участвовать в подписании отличен от того файла, который был загружен.
- Если при создании был передан идентификатор другого документа, прошедшего конвертацию, то будет использоваться сконвертированный ранее файл
- Всегда создаётся объект - ЧЕРНОВИК ДОКУМЕНТА
- после отправки он получает отметку, что был отправлен и имеет признак, что является черновиком. Исключён из выдачи документов в реестре документов.
- Если в документе более 1 Сотрудника (именно Сотрудника, не Участника), то при отправке документ будет размножен.
- Все размноженные документы будут связаны с ЧЕРНОВИКОМ
- Если отправка частичная, то дополнительно формируется ПРОМЕЖУТОЧНЫЙ ЧЕРНОВИК, в котором данные только по тем, кому отправить документ не было возможным. Когда последнему участнику промежуточного черновика будет отправлен документ, промежуточный черновик будет удалён.
- При создании документа, HRlink формирует (ЧЕРНОВИК) с уникальным идентификатором, если при создании (ЧЕРНОВИКА) был передан externalId, то
- Не может существовать двух документов с одним и тем же externalId. Если уже есть черновик с задействованным идентификатором - это заблокирует создание нового с таким же идентификатором.
- Сохранение externalId зависит от размножения:
- Если документ размножается, то externalId переходит в поле baseDocumentExternalId
- Если документ не размножается (т.е. там 1 или 0 сотрудников), то externalId из ЧЕРНОВИКА удаляется и передаётся как externalId в Документ, который формируется при отправке.
- Так как не может быть 2х документов с одним идентификатором и при частичной отправке формируется ПРОМЕЖУТОЧНЫЙ черновик - в случае использования externalId метод частичной отправки не будет работать.
Метаданные и связи
Описание атрибутов документа при создании подробно указаны в API-методе создания
Описание атрибутов документа при получении данных документа подробно указаны в API-методе получения данных документа
Документ имеет связи с некоторым множеством файлов:
- Оригинальный файл, который был загружен (не входит в архив)
- Сконвертированный файл, который подписывался (входит в архив). Можно скачать отдельным методом.
- Печатная Форма (ПФ) с оттиском электронной подписи (входит в архив). Можно скачать отдельным методом.
- Описание электронного документа XML файл (входит в архив)
- Протокол КЭДО (входит в архив, если его скачивает Кадровый специалист)
- Файлы подписей - может быть 1 или несколько файлов. Файл подписи ПЭП Госуслуги представлен в виде zip архива.
- Файл архива КЭДО. Можно скачать отдельным методом. Содержит в себе файлы со 2 до 6ой.
Определение состояния и видимость
Пояснения к схеме
На схеме представлено общая логическая модель состояний, однако явным образом статуса в документе нет, есть набор атрибутов, которые позволяют определить состояние Документа.
Состояние | Атрибут и значение | Комментарий |
---|---|---|
Черновик |
| Чтобы понять что документ черновик, надо смотреть признак черновика или отсутствия связи |
В процессе |
document.deleted = false
| Документ, который не черновик, не удалён и не имеет даты завершения КЭДО - документ в процессе подписания
|
Завершён успешно |
document.signed = true
| Документ у которого есть дата завершения КЭДО и есть признак о наличии всех подписей и нет отметки об удалении - можно считать документом с успешно завершённым КЭДО |
Завершён отклонением |
| Если у документа есть дата завершения и есть отметка об отклонении - то КЭДО по документу завершён отклонением. |
Удалён | document.deleted = true | документ может быть удалён в произвольный момент: черновик может быть удалён, документ в процессе может быть удалён, документ отклонённый или даже успешно подписанный - может быть удалён. |
Заявление
Определение
Заявлением в HRlink называется объект, у которого КЭДО направлен от Работника к Работодателю, т.е. по сути Сотрудник Направляет Заявление на Обработку.
Общая схема работы с Заявлением
Действия доступные над Заявлением
Метаданные и связи
Важно
Заявление формируется на основании Шаблона, поэтому кроме общей части атрибутов, одно заявление будет отличаться от другого и составом атрибутов, которые заложены в шаблоне.
Например, в шаблоне заявления на отпуск могут быть кастомные поля "Дата начал отпуска" и "Количество дней отпуска", а в "Заявлении на компенсацию таких полей не будет, зато будет кастомное поле с суммой компенсации.
Определение состояния
Пояснения к схеме
На схеме представлено общая логическая модель состояний, однако явным образом статуса в Заявлении - нет, есть набор атрибутов, которые позволяют определить состояние.
Состояние | Атрибут и значение | Комментарий |
---|---|---|
Черновик |
| Состояние "Черновик" говорит о том, что первый участник по маршруту еще не подписал заявление. На текущий момент первый участник по маршруту подписания Заявления всегда Сотрудник. |
Ожидает решения согласующего Нужно взять в работу Определён ответственный |
Дополнительные даты:
| Все три состояния относятся к одному - "В процессе", т.е. Заявление уже подписано Заявителем и отправлено по маршруту, и есть участник маршрута, от которого ожидается совершение какого-то действия. Чтобы понять, у кого из участников заявление находится в работе, необходимо обработать данные в массиве
|
Обработано |
| Если у Заявления есть дата и время завершения КЭДО и при этом нет отметок об отклонении или удалении, то обработка заявления успешно завершена. |
Отклонено |
| Если у Заявления есть дата и время завершения КЭДО и есть отметка времени об отклонении, то обработка заявления завершена отклонением. |
Удалено | applicationGroup.applications[].deletedDate != null | Если у Заявления есть дата и время удаления, значит Заявление было удалено Заявителем или Кадровиком. |
ЛНА
Определение
ЛНА - такой тип документа, который предполагает возможность динамического определения подписантов.
Т.е. Кадровик может создать ЛНА, а HRlink постоянно проверяет кому из Сотрудников (на основании ЮЛ, Отдела, Должности и Триггерного события) должен быть направлен ЛНА на ознакомление
Архитектурные особенности объекта
- ЛНА это не документ, а отдельный объект.
- ЛНА может проходить цепочку с согласованием, тогда в нём появится УКЭП Представителя Работодателя, но может быть направлен на ознакомление Сотрудникам без согласования.
- Сотруднику на ознакомление приходит объект Документ (который формирует HRlink автоматически при выполнении всех условий)
- Сотрудник не может отклонить Документ ЛНА
- Лист Ознакомления у ЛНА фактически это вычисляемое состояние на основании всех связанных Документов ЛНА
- Состояние ЛНА "завершено" фактически не является терминальным, при появлении необходимости ознакомить нового сотрудника - ЛНА перейдёт в состояние "В работе" автоматически.
- При удалении ЛНА будут удалены и все неподписанные Документы ЛНА
Общая схема работы с ЛНА
Определение состояния
Пояснения к схеме
На схеме представлено общая логическая модель состояний, однако явным образом статуса в ЛНА - нет, есть набор атрибутов, которые позволяют определить состояние.
Состояние | Атрибут и значение | Комментарий |
---|---|---|
Черновик |
| Нет отметки времени об ошибке конвертации нет даты отправки ЛНА |
Отправляется на подписание |
| Список задач на отправку не должен быть пуст |
В процессе |
Период действия ЛНА:
| Есть дата отправки Важным может быть понимание - включена автооотправка или нет. На верхнем уровне понимание процесса можно получить из двух цифр:
ЛНА может обладать сроком действия в виде диапазона даты начала и даты завершения, тогда надо сравнивать границы с текущей датой |
Подписан |
Счётчик подписания
| в целом аналогично состоянию "В процессе", но счётчики должны сойтись на одном числе. |
Удалено | normativeAct.deletedDate != null | есть отметка времени удаления ЛНА |
Ошибка | normativeAct.fileConversionFailedDate != null | есть отметка времени возникновения ошибки конвертации |
Поиск документации