Skip to content

Генерация событий о заказах, стоп-продажах

Notifications You must be signed in to change notification settings

goretsky-integration/notification-services

Repository files navigation

Notification services

Сервисы которые генерируют события, которые попадают в router.

unit test python


📦 Настройка виртуального окружения

Создание виртуального окружения:

poetry env use python3.11

Активация виртуального окружения:

poetry shell

Установка необходимых зависимостей:

poetry install --without dev

⚙️ Конфигурационный файл

  • country_code - список допустимых значений.
  • logging:
    • level - допустимые значения: CRITICAL, ERROR, WARNING, INFO, DEBUG.
    • file_path - путь до фалйа, куда будут записываться логи.
  • api:
  • partial_ingredient_stop_sales:
    • disallowed_ingredient_names - blacklist слов, по которым будут фильтроваться стопы по ингредиентам.
    • allowed_ingredient_names - while-list слов, по которым будут фильтроваться стопы по ингредиентам.
  • cheated_orders:
    • skipped_phone_numbers - while-list номеров телефонов для сервиса cheated orders.
  • message_queue:
    • rabbitmq_url - URL RabbitMQ.

🤖 Сервисы:

❗️ Все сервисы нужно запускать из корня проекта ❗️

Стопы по каналам продаж:

Запуск:

python src/stop_sales_by_channels.py

Обязательные аргументы:

  • --sales-channel-names - название канала продаж. Варианты: delivery, dine_in, takeaway.

Опциональные аргуметны:

  • --remember - сохранить UUID стопов в локальное хранилище.
  • --ignore-remembered - проигнорировать стопы, сохраненные в локальном хранилище.

Стопы по ингредиентам:

Запуск:

python src/stop_sales_by_ingredients.py

Опциональные аргументы:

  • --remember - сохранить UUID стопов в локальное хранилище.
  • --ignore-remembered - проигнорировать стопы, сохраненные в локальном хранилище.
  • --only-partial-ingredients - отфильтровать стопы, которые указаны в разделе partial_ingredient_stop_sales в конфигурационном файле.
  • --include-empty-units - создавать события по стопам даже у тех пиццерий, в которых на данных момент стопов нет.

Стопы по улицам/секторам:

Запуск:

python src/stop_sales_v1.py

Обязательные аргументы:

  • --by - источник стоп-продаж. Варианты: streets, sectors.

Использованные промо-коды:

Запуск:

python src/promo_codes.py

Сертификаты за опоздание:

Запуск:

python src/late_delivery_vouchers.py

About

Генерация событий о заказах, стоп-продажах

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages