СПРАВОЧНИКИ, АТРИБУТЫ И ЗНАЧЕНИЯ

Справочники

Таблица 1. Модель данных справочника

Поле Тип Описание
id UUID v4 Уникальный идентификатор справочника
epsId UUID v4 Идентификатор узла СПП
name string Наименование справочника
type string Тип справочника

Таблица 2. Типы справочников

Тип Описание
custom Общий – справочник для хранения информационно-справочной информации. При создании не содержит атрибутов
resource Ресурсный - справочник для хранения записей о ресурсах. При создании справочника автоматически создаются атрибуты справочника: «Наименование», «Ед. Изм.», «Интенсивность» и атрибуты назначения: «План», «Факт» и «Распределение»
worktype Физобъемы – системный справочник, предназначен для хранения типовых видов работ. Каждая компания самостоятельно определяет перечень работ, которые войдут в данный справочник. Справочник создается автоматически на уровне Пространства и наследуется в дочерние узлы СПП

Примеры использования

Получить список справочников.

curl -X 'GET' \
  'https://your-org.domain/public-api/directory?epsId=c44b3626-af2d-4472-9e85-9a452162e6e7' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad'

Создать новый справочник.

curl -X 'POST' \
  'https://your-org.domain/public-api/directory' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type:  application/json' \
  -d '{
  "epsId": "c44b3626-af2d-4472-9e85-9a452162e6e7",
  "type": "custom",
  "name": "Ответственный сотрудник"
}'

Изменить существующий справочник.

curl -X 'PUT' \
  'https://your-org.domain/public-api/directory/aefa1db8-d67b-4478-bf9e-d9058467457c' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Руководитель"
}'

Удалить справочник.

curl -X 'DELETE' \
  'https://your-org.domain/public-api/directory/aefa1db8-d67b-4478-bf9e-d9058467457c' \
  -H 'accept: */*' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad'

Атрибуты справочника

Таблица 3. Модель данных атрибута справочника

Поле Тип Описание
id UUID v4 Уникальный идентификатор атрибута справочника
directoryId UUID v4 Идентификатор справочника
type string Тип атрибута
label string Заголовок атрибута

Таблица 4. Типы атрибутов справочника

Тип Описание
date Дата
number Число
string Строка
money Деньги
name Наименование атрибута
measure Единица измерения
price Стоимость
intensity Интенсивность
boolean Логический

Примеры использования

Получить список атрибутов для указанного справочника.

curl -X 'GET' \
  'https://your-org.domain/public-api/directory-attributes?directoryId=dbe36399-b6a6-4999-bb10-6d56c0b01e7f' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \

Создать новый атрибут для указанного справочника.

curl -X 'POST' \
  'https://your-org.domain/public-api/directory-attributes' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type:  application/json' \
  -d '{
  "directoryId": "dbe36399-b6a6-4999-bb10-6d56c0b01e7f",
  "label": "Должность",
  "type": "string"
}'

Изменить атрибут.

curl -X 'PUT' \
  'https://your-org.domain/public-api/directory-attributes/accc1de3-52b6-427b-9bb6-01c267cbe13b' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type: application/json' \
  -d '{
  "label": "Подразделение"
}'

Удалить атрибут.

curl -X 'DELETE' \
  'https://your-org.domain/public-api/directory-attributes/accc1de3-52b6-427b-9bb6-01c267cbe13b' \
  -H 'accept: */*' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad'

Атрибуты назначения

Таблица 5. Модель данных атрибута назначения

Поле Тип Описание
id UUID v4 Уникальный идентификатор атрибута назначения
directoryId UUID v4 Идентификатор справочника
type string Тип атрибута назначения
label string Заголовок атрибута назначения

Таблица 6. Типы атрибута назначения

Тип Описание
date Дата
number Число
string Строка
money Деньги
plan Согласованный план
fact Факт
start Старт
finish Финиш
align Распределение
boolean Логический

Примеры использования

Получить список атрибутов назначения для указанного справочника.

curl -X 'GET' \
  'https://your-org.domain/public-api/directory-linked-attributes?directoryId=cf48c91c-dc5d-4f8e-9af6-fc401c28175a' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \

Создать новый атрибут назначения для указанного справочника.

curl -X 'POST' \
  'https://your-org.domain/public-api/directory-linked-attributes' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type:  application/json' \
  -d '{
  "directoryId": "dbe36399-b6a6-4999-bb10-6d56c0b01e7f",
  "label": "Куратор",
  "type": "string"
}'

Изменить атрибут назначения.

curl -X 'PUT' \
  'https://your-org.domain/public-api/directory-linked-attributes/8364fd4e-ec64-4676-ba5b-5a7c91b3610b' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type: application/json' \
  -d '{
  "label": "Руководитель"
}'

Удалить атрибут назначения.

curl -X 'DELETE' \
  'https://your-org.domain/public-api/directory-linked-attributes/8364fd4e-ec64-4676-ba5b-5a7c91b3610b' \
  -H 'accept: */*' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad'

Значения справочника

Таблица 7. Модель данных значений справочника

Поле Тип Описание
id UUID v4 Уникальный идентификатор значения справочника
directoryId UUID v4 Идентификатор справочника
level integer Уровень вложенности значения справочника
sortOrder integer Порядок сортировки значения
parentId string Уникальный идентификатор родительского значения
values boolean Значение

Примеры использования

Получить список значений для указанного справочника.

curl -X 'GET' \
  'https://your-org.domain/public-api/directory-values?directoryId=dbe36399-b6a6-4999-bb10-6d56c0b01e7f' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \

Создать новое значение для указанного справочника.

curl -X 'POST' \
  'https://your-org.domain/public-api/directory-values' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type:  application/json' \
  -d '{
  "directoryId": "dbe36399-b6a6-4999-bb10-6d56c0b01e7f",
  "values": {"137b07b1-02b1-4175-80c0-25e82e2e8619": "Иванов И.И."
  }
}'

Создать новую дочернюю запись для указанного родительского значения в справочнике.

curl -X 'POST' \
  'https://your-org.domain/public-api/directory-values' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type:  application/json' \
  -d '{
  "directoryId": "dbe36399-b6a6-4999-bb10-6d56c0b01e7f",
  "parentId": "677623f3-c3e4-4bd5-b4c2-a1f318df6d44",
  "values": {"137b07b1-02b1-4175-80c0-25e82e2e8619":"Сидоров С.С."
  }
}'

Изменить значение справочника.

curl -X 'PUT' \
  'https://your-org.domain/public-api/directory-values/677623f3-c3e4-4bd5-b4c2-a1f318df6d44' \
  -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad' \
  -H 'Content-Type: application/json' \
  -d '{
  "values": {"137b07b1-02b1-4175-80c0-25e82e2e8619": "Сидоров С.С."
  }
}'

Удалить значение справочника.

curl -X 'DELETE' \
  'https://your-org.domain/public-api/directory-values/677623f3-c3e4-4bd5-b4c2-a1f318df6d44' \
  -H 'accept: */*' \
  -H 'x-version: 409' \
  -H 'Authorization: your-api-key' \
  -H 'x-tenant-id: 5db13376-ba5c-4fd5-ba7f-dc56347956ad'