Cash-register это кассовый аппарат магазина. На серавер отправляется мотод POST с id товарами и затем формируется PDF файл и создается url на этот файл в QR-code, после чего отправляется ссылка в ответ на метод POST в котором содержется ссылка на QR-code. При переходе на ссылку сканируется QR-code, после чего можно скачать PDF файл (кассовый чек).
Cash-register использует технологии с открытым исходным кодом для работы:
- Django - это высокоуровневый Python веб-фреймворк!
- Django rest framework - это мощный набор инструментов для создания веб-сервисов и API на основе фреймворка Django.
- Djanog-environ - позволяет использовать переменные среды.
- Fpdf - библиотека для создания PDF.
- Qrcode - библиотека для генерации QR кодов.
- Art - библиотека для генерации ASCII-графики и текстовых изображений.
- Simple Term Menu - меню для консольных программ
Создать файл .env в корне проекта с необходимыми переменными. Рекомендуется использовать IP адрес комьютера локальной сети чтобы выла возможность протестировать на мобильном телефоне. ipconfig или ifconfig отобразят ip вашего комьютера в локальной сети.
- Пример ALLOWED_HOSTS должен выглядеть примерно так
192.168.0.1
. - Пример SITE_URL должен выглядеть примерно так
http://192.168.0.1:8000/
SECRET_KEY=
ALLOWED_HOSTS=
SITE_URL=
Cash-register использует Python вирсия 3+.
Установка зависимостей и запуск приложения.
cd cash-register
python install -r requirements.txt
python manage.py migrate
python manage.py runserver {your_ip_address}:8000
- Отправить список ids формат JSON
{'items': [1, 2, 3]}
POST/cash-machine
- Запустить консольного клиента из корня проекта python client.py
Этот проект создан в качестве тестового задания. Возможно в будущем он будет развиваться и будет поддерживаться разработчиками.