Предполагается следующее рабочее окружение:
- php7.1+
- mongodb 3+ с php драйвером.
- rabbitmq
Установка зависимостей через composer install
.
Настройки подключения к MongoDB и RMQ указывается в .env
файле в корне приложения или через переменные окружения.
Для наполнения БД запускать php artisan seed:consumer
.
Команда удаляет и заново создаёт пустые коллекции в БД. Подключается к RabbitMQ и ждёт сообщений. Логирует свою работу в stdout. Успешный запуск и подключение выведет в лог seed_consumer.DEBUG: start work [] []
.
Генерация тестовых данных осуществляется через запуск php ./seed_publisher.php
. Подключается к RMQ и публикует сообщения для указанного количества дней, по умолчанию 70 дней. Количество дней для наполнения можно задать через первым аргументов запуска php ./seed_publisher.php 365
. После этого, если был запущен seed:consumer
, данные начнут попадать в БД, в зависимости от конфигурации это займёт до нескольких минут (процесс сопроваждается выводом сообщений в лог).
Запуск приложения через встроенный веб сервер, порт по умолчанию 8000
php artisan serve
Сумма чеков с разбивкой по месяцам
/api/v1/year_stats/checks?year=2018
Сумма чеков за месяц по дням
/api/v1/month_stats/checks?year=2018&month=8
Список касс
/api/v1/cashboxes