diff --git a/proto/common/common.proto b/proto/common/common.proto index 5d969b4103cd8e4f760243d39c195a535a0f8f2b..500490a3024906f09479e18ded7143134cc77600 100644 --- a/proto/common/common.proto +++ b/proto/common/common.proto @@ -5,6 +5,7 @@ option go_package = "git.perx.ru/perxis/perxis-go/proto/common;common"; package common; import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; // Deprecated // Поддержка этой реализации фильтра осталась только РІ запросе РїРѕРёСЃРєР° записей (Items.Find) @@ -73,3 +74,32 @@ message Version { string commit = 4; int32 build_number = 5; } + +// Определение типов событий +enum EventType { + EVENT_UNKNOWN = 0; + EVENT_CREATE = 1; + EVENT_UPDATE = 2; + EVENT_DELETE = 3; + EVENT_PUBLISH = 4; + EVENT_UNPUBLISH = 5; + // Добавляем события РїРѕ необходимости +} + +// Структура события +message Event { + // РўРёРї события + EventType type = 1; + // Время события + google.protobuf.Timestamp timestamp = 2; + // Рдентификатор пользователя, вызвавшего событие + string caller = 3; + // РўРёРї сущности (например, "Item", "User", "Order") + string entity_type = 4; + // Рдентификатор затронутой сущности + string entity_id = 5; + // Данные РґРѕ изменения (для событий обновления Рё удаления) + google.protobuf.Struct old_data = 6; + // Новые данные (для событий создания Рё обновления) + google.protobuf.Struct new_data = 7; +} \ No newline at end of file