Table of Contents

Установка значения бинарного свойства

Алгоритм

  • Авторизация;
  • Загрузка временного файла в хранилище;
  • Добавление значения свойства из хранилища элементу-владельцу свойств.

Авторизация

Необходимо пройти стандартную процедуру авторизации требуемого пользователя в выбранном хранилище.

Варианты авторизации:

Загрузка временного файла в хранилище

В консоли необходимо указать полный путь до загружаемого файла со значением свойства. Указанный файл отправляется в теле 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 в случае успешного выполнения).