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

Database Overview

Назначение

Описание хранилища данных микросервиса Chessboard.Panoramas: контекст БД, таблицы, owned types и перечисления.

ChessboardPanoramasDbContext

Основной DbContext микросервиса. Реализует:

  • Работу с PostgreSQL (тенантные ключи, Npgsql).
  • Поддержку Outbox и Saga (таблицы для исходящих сообщений и саг).

Таблицы

DbSetОписание
ChessboardProjectEntityПроекты шахматной доски (синхронизация из Kafka)
ChessboardProjectBuildingEntityЗдания проекта
ChessboardProjectPropertyLayoutEntityПланировки объектов
ChessboardProjectPropertyObjectEntityОбъекты недвижимости
PanoramaShootingPointEntityТочки съёмки панорам
LayoutPanoramaPointFileEntityФайлы панорам по планировке (кубмап)
PropertyObjectPanoramaPointFileEntityФайлы панорам по объекту (кубмап)
PanoramasQueueEntityОчередь задач панорамной съёмки
PanoramasQueueTaskEntityЗадачи в очереди
InteriorPresetEntityПресеты отделки по проекту
LayoutTopdownPanoramaEntityВиды сверху над планировкой (видео 360)
LayoutTopdownPanoramaFrameEntityКадры из видео вида сверху
LayoutTopdownPanoramaQueueEntityОчередь задач на снятие видов сверху по проекту и планировке
LayoutTopdownPanoramaQueueTaskEntityЗадачи в очереди видов сверху
SagaOutboxEntity, OutboxMessageEntity, IdempotencyKeyEntityOutbox, Saga, идемпотентность

Owned Types

  • CubemapFilesContainerDbType — контейнер идентификаторов файлов граней кубмапа (PositiveX, NegativeX, PositiveY, NegativeY, PositiveZ, NegativeZ). Используется в LayoutPanoramaPointFileEntity и PropertyObjectPanoramaPointFileEntity как свойство Image.
  • LayoutTopdownPanoramaFramePoint — точка на кадре вида сверху: PointId, Position (Npgsql Point). Используется в LayoutTopdownPanoramaFrameEntity в коллекции Points.

Enums

Связи между сущностями