Перейти к основному содержимому

GetPropertyObjectPanoramaPointFilesQuery

Назначение

Получение файлов панорам по объекту недвижимости и пресету. Возвращает список записей «точка — файл» для объекта.

Цель

Вернуть клиенту список файлов панорам объекта по заданному пресету с привязкой к точкам съёмки.

Query: GetPropertyObjectPanoramaPointFilesQuery (Входные данные)

ПолеТипОбязательностьОписание
ChessboardPropertyObjectIdGuidОбязательноеИдентификатор объекта недвижимости
PresetIdGuidОбязательноеИдентификатор пресета
примечание

TenantId берётся из контекста запроса.

Result: GetPropertyObjectPanoramaPointFilesQueryResult (Выходные данные)

ПолеТипОбязательностьОписание
EntriesIReadOnlyCollection<PanoramaPointFileEntry>ОбязательноеСписок записей «точка — файл»

PanoramaPointFileEntry (ResultEntry)

ПолеТипОбязательностьОписание
PointIdGuidОбязательноеИдентификатор точки
FileIdsCubemapFileIds или аналогОбязательноеИдентификаторы файлов граней кубмапа

Валидация

  • Объект с ChessboardPropertyObjectId должен существовать в ChessboardProjectPropertyObjectEntity. При отсутствии — вернуть пустой список или ошибку.

Бизнес-логика (Handler)

  1. Получить сущность ChessboardProjectPropertyObjectEntity по ChessboardPropertyObjectId. Если не найдена — вернуть ошибку или пустой список.
  2. Найти сущности PropertyObjectPanoramaPointFileEntity по PropertyObjectId и PresetId (и TenantId).
  3. Сформировать Entries с PointId и данными Image для каждой записи.
  4. Вернуть результат клиенту.

Связанные сущности

API

PanoramaPointsController.GetPropertyObjectPanoramaPointFiles — GET property-objects/{chessboardPropertyObjectId}/presets/{presetId}/point-files