Это старая версия документа!
Для массового редактирования объектов в наборе данных необходимо создать поиск по набору данных. В настройках поиска необходимо указать ключевые поля, по которым будет осуществляться поиск по объектам. К примеру это будут идентификаторы, имена объектов, различные коды. После этого необходимо создать модуль администрирования. Необходимо указать в нём поиск и список полей, которые можно посмотреть в списке.
Для получения данных можно воспользоваться данным API.
https://airlay.ru/api/v4/user/performUserSearch?type=user&searchId=62a884ed984cd32eaa3255fb&queries=%5B%2264661697%22%5D&objectType=Main&filter= ( (%7B%7Bvoltage%7D%7D=0.4%7C%7B%7Bvoltage%7D%7D=%220.4%22 ) )&sortField=_id&sortOrder=desc&skip=0&limit=10
Во первых вам понадобиться идентификатор поиска, его можно получить в администрировании просто кликнув на идентификатор возле поиска. Его указываем в поле searchId = 62a884ed984cd32eaa3255fb. Поле type = user статичное, оно означает, что используем пользовательский поиск. objectType = Main тоже статическое поле. В поле queries = можно указать значение, по которому можно выполнить поиск объектов в БД.
filter = ( ( { { voltage } } = 0.4 | { { voltage } } = «0.4» ) ) в фильтр через И и ИЛИ можно указать различные поля для фильтрации. sortField = _id атрибут отвечает за сортировку данных, мы можем по ключевому полю отсортировать объекты сюда указывается поле. sortOrder = desc атрибут отвечает за порядок сортировки может быть asc и desc. skip=0 и limit=10 позволяет выгружать данные порционно, рекомендуемый объём это 1000 объектов. В целом система успешно выгружает и большие пакеты, но есть ограничение в оперативной памяти в 2GIG при котором система вернёт ошибку, если не получилось получить данные. Когда система вернёт ошибку 400, то объекты закончились или их нет по заданным фильтрам.
Чтобы добавить список объектов необходимо отправить POST запрос.
https://airlay.ru/api/v3/dataset/editor
В POST запрос в FORM DATA нужно передать два поля Идентификатор набора данных dataSetId 62a811a3e143c06e854cda72 Коммит на изменение commit
[ { "type":"createRelation", "id":-1, "geometryType":"Point", "members":[], "properties": { "Date":null, "updateDate":1780913201 } }, { "type":"createRelation", "id":-2, "geometryType":"Point", "members":[], "properties": { "Date":null, "updateDate":1780913201 } } ]
В коммит нужно передать массив изменений. Первое поле тип с операцией создать relation. Второе поле создать идентификатор для объекта указываются поля -1, -2, -3. В теории можно указать сразу связи между объектами. Параметр -1 и меньше означает, что система создаст идентификатор и проставит объекту и укажет для него связи из коммита. Второе поле geometryType указываем тип объекта. members массив геометрических ссылок на объекты. «properties» поля для объекта туда можно сложить атрибуты. В примере выше мы создали 2 точки с 2 атрибутами и уникальными идентификаторами.