Установка значения бинарного свойства
Алгоритм
- Авторизация;
- Загрузка временного файла в хранилище;
- Добавление значения свойства из хранилища элементу-владельцу свойств.
Авторизация
Необходимо пройти стандартную процедуру авторизации требуемого пользователя в выбранном хранилище.
Варианты авторизации:
- Авторизация с использованием командной строки;
- Авторизация с использованием Swagger;
- Авторизация в C# .NET.
Загрузка временного файла в хранилище
В консоли необходимо указать полный путь до загружаемого файла со значением свойства. Указанный файл отправляется в теле POST-запроса в формате "multipart/form-data" по адресу "/property-owner/upload-binary-property-value". Web-сервер ПОЛИНОМ производит его загрузку в хранилище временных файлов. Ответ от web-сервера ПОЛИНОМ приходит в виде строки с наименованием временного файла в хранилище.
Ответ на запрос "/property-owner/upload-binary-property-value"
"ytrf1odl.3sr"
Загрузка временного файла в хранилище
В консоли необходимо указать идентификатор элемента-владельца свойств и идентификатор определения бинарного свойства. На основе имеющихся данных (идентификатор владельца свойств, идентификатор определения свойства и имя временного файла в хранилище) формируется PUT-запрос установки значений свойствам. Данный запрос отправляется по адресу "/property-owner/set-property-values". Web-сервер ПОЛИНОМ присваивает указанному свойству значение из временного файла в хранилище.
Запрос "/property-owner/set-property-values"
В теле запроса передаются идентификаторы элемента-владельца свойств (блок "propertyOwner"), идентификаторы понятия, определения свойства и ссылка на значение свойства (блок "properties") и значение свойства (блок "values", раздел "binaryProperties") .
{
"values": {
"doubleProperties": [
{
"objectId": 0,
"typeId": 0,
"mode": 0,
"value": 0,
"minValue": 0,
"maxValue": 0,
"lowerTolerance": 0,
"upperTolerance": 0,
"measureUnit": {
"objectId": 0,
"typeId": 0
}
}
],
"stringProperties": [
{
"objectId": 0,
"typeId": 0,
"value": "string"
}
],
"booleanProperties": [
{
"objectId": 0,
"typeId": 0,
"value": true
}
],
"colorProperties": [
{
"objectId": 0,
"typeId": 0,
"r": 0,
"g": 0,
"b": 0,
"a": 0
}
],
"opticProperties": [
{
"objectId": 0,
"typeId": 0,
"ambient": 0,
"diffuse": 0,
"emission": 0,
"shininess": 0,
"specularity": 0,
"transparency": 0
}
],
"dateTimeProperties": [
{
"objectId": 0,
"typeId": 0,
"value": "2024-06-25T12:10:53.110Z",
"useTime": true
}
],
"imageProperties": [
{
"objectId": 0,
"typeId": 0,
"isEmpty": true,
"value": "string"
}
],
"rtfProperties": [
{
"objectId": 0,
"typeId": 0,
"value": "string"
}
],
"enumProperties": [
{
"objectId": 0,
"typeId": 0,
"value": "string"
}
],
"setProperties": [
{
"objectId": 0,
"typeId": 0,
"values": [
"string"
]
}
],
"integerProperties": [
{
"objectId": 0,
"typeId": 0,
"value": 0
}
],
"binaryProperties": [
{
"objectId": 4,
"typeId": 29
"isEmpty": false,
"value": "ytrf1odl.3sr"
}
],
"guidProperties": [
{
"objectId": 0,
"typeId": 0,
"value": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
],
"enumBoolProperties": [
{
"objectId": 0,
"typeId": 0,
"value": {
"description": "string",
"value": true,
"position": 0
}
}
],
"enumDoubleProperties": [
{
"objectId": 0,
"typeId": 0,
"value": {
"description": "string",
"value": 0,
"position": 0
}
}
],
"enumIntProperties": [
{
"objectId": 0,
"typeId": 0,
"value": {
"description": "string",
"value": 0,
"position": 0
}
}
],
"enumStringProperties": [
{
"objectId": 0,
"typeId": 0,
"value": {
"description": "string",
"value": "string",
"position": 0
}
}
],
"tableProperties": [
{
"objectId": 0,
"typeId": 0,
"columns": [
{
"objectId": 0,
"typeId": 0,
"tablePropertyDefinitionColumn": {
"objectId": 0,
"typeId": 0
},
"width": 0
}
],
"rows": [
{
"cellValues": [
{
"objectId": 0,
"typeId": 0
}
]
}
]
}
]
},
"properties": [
{
"value": {
"objectId": 4,
"typeId": 29
},
"contract": {
"objectId": 1,
"typeId": 38
},
"definition": {
"objectId": 1,
"typeId": 14
}
}
],
"propertyOwner": {
"objectId": 42,
"typeId": 4
}
}
Ответ на запрос "/property-owner/set-property-values"
В качестве ответа возвращается статус выполнения запроса (200 OK в случае успешного выполнения).