Данная программа реализована в рамках лабораторных работ курса "Проектирование и архитектура программных систем".
Тема разработки: Система обработки заказов
Предметная область: Ателье
Реализованные прецеденты
Авторизация в системе
Регистрация в системе
Оформление заказа
Просмотр описания товара/предмета при заказе
Отмена заказа для клиентов системы если заказ находится в статусе ожидания
Просмотр заказов и их содержимого
Установка статусов заказа
Технические особенности
Реализованы консольный и веб интерфейсы
Разграничение прав доступа для пользователей системы
Обработка ошибок и флагов запуска программы
База данных:
В качестве СУБД выбрана PostgreSQL
Изменения в базе данных обеспечены с использованием транзакции
Подстановка значении в запросах выполнена с использованием экранирования
Веб-интерфейс:
Для работы с HTTP сервером использован фреймворк Gin
Хранение сессии пользователя реализовано с помощью Redis
Кеширование результатов базы данных в Redis
Справка по использованию
Использование: studio --type <тип интерфейса>
Флаги:
-V Печать номера версии и выход
-help
Показать эту помощь
-http string
Сокет для веб-сервера (default ":8080")
-log
Печатать логи
-pgsql string
Сокет для подключения к pgSQL (default "localhost:5432")
-redis string
Сокет для подключения к Redis (default "localhost:6379")
-registration
Регистрация нового клиента для CLI
-type string
Тип интерфейса: CLI, Web (default "web")