Cook Service

Операционный Домен Склада и Покупок (INVENTORY)

Автор

Lead Systems Architect / FoodLifeCycle Core Team

Дата публикации

11 июня 2026 г.

cook-service, consume-service, waste-service

Сервисы-оркестраторы интерфейсных кнопок списания ресурсов (3. Cook, 4. Consume, 5. Waste).

  • База данных: Пишут логи операций в свои таблицы внутри fridge_db.

  • Интерфейсы (REST API):

    • POST /api/v1/cook/dish — инициация кулинарного цикла. Запрашивает тех-карту в MDM и шлет gRPC-команду MutateBalances на FIFO-вычет ингредиентов в склад. При успехе пушит готовое блюдо в топик №9 (bpds.inventory.out.meal_item.create).
    • POST /api/v1/consume/items — прямое порционное съедение продукта пользователем. Списывает вес со склада, шлет маркер FOOD_CONSUMED в Process Mining.
    • POST /api/v1/waste/items — утилизация испорченной еды. Принимает параметры списания и причины (PROPALO/SPOILT), штрафует веса лояльности, пушит маркер FOOD_WASTED в топик №14.