[EPIC-INV-001] Procurement & Receipt Parsing Engine
Управление закупками, фиксация цен и оркестрация асинхронного разбора чеков ОФД
NoteКраткая карточка эпика
- Эпик: (EPIC-INV-001)
- Компоненты: shop-engine, Kafka (KRaft), Mobile App (Button: 1. Shop), Shop_db
- Статус: Готово к реализации
- Направление связи: Клиент \(\rightarrow\) S3 Upload \(\rightarrow\) Kafka (
bpds.inventory.in.receipt.upload)
Бизнес-контекст и цель (Business Context)
Эпик изолирует финансово-номенклатурную сторону закупок. При сканировании чека приложение загружает медиа-файл в S3 и шлет легковесную команду со ссылкой в Kafka. ИИ-воркер возвращает структурированный JSON, который shop-engine сохраняет в Shop_db (база цен) и передает дальше на склад для постановки партий на баланс.
Список атомарных задач:
- [Migrations] Схема истории покупок [Метод 1]: Создание таблиц чеков, сырых позиций и исторических цен магазинов (
001_init_shop_engine.sql). - [Backend] Эмиттер загрузки чека [Метод 2]: Реализация эндпоинта отправки ссылки на файл чека из S3 в топик
bpds.inventory.in.receipt.upload(receipt_upload_producer.py). - [Backend] Приемник распознанных чеков [Метод 3]: Консьюмер топика
bpds.inventory.out.receipt.parsedдля сохранения структуры чека и цен (receipt_parsed_consumer.py). - [Frontend] Экран Покупок (Shop) [Экран 1]: Реализация интерфейса кнопки
1. Shopс камерой для сканирования QR/чеков и отображения списка цен (shop_screen.dart).