Задача
Необходимо разработать полноценного Telegram-бота для кофейни, работающего на чистом Python (без использования сторонних асинхронных фреймворков вроде Aiogram/Telebot, если иное не оговорено заказчиком). Бот должен иметь встроенную админ-панель (через Telegram или внешний веб-интерфейс) для управления меню, заказами и статистикой.
Требования к функционалу
- Команда старта с приветственным сообщением и главным меню
- Каталог с категориями и товарами (с ценой, описанием, фото)
- Корзина: добавление, изменение количества, удаление, оформление заказа
- Оформление заказа с выбором способа получения (самовывоз/доставка) и вводом контактов
- История заказов для пользователя
- Уведомления администратора о новых заказах
Админ-панель (необходимые функции)
- Просмотр всех заказов с возможностью менять статус (в обработке, готовится, готов, выдан/доставлен)
- Управлениие меню: добавление/редактирование/удаление товаров и категорий, загрузка изображений
- Смена цен и описаний
- Просмотр и выгрузка статистики (количество заказов, выручка за день/неделю/месяц)
- Умная возможность добавлять администраторов (несколько админов)
- Админ-панель должна быть защищена паролем/доступом (рекомендую реализовать через inline-кнопки с вводом пароля или через защищенную админ-ссылку, если используется веб-интерфейс)
Технические требования
- Код пишется на Python 3.10+ (чистый синтаксис, без сторонних асинхронных фреймворков, если не оговорено иное)
- Хранение данных - SQLite (можно MySQL/PostgreSQL, уточнить с исполнителем)
- Документирование кода: комментарии к ключевым функциям, краткое Readme по установке и запуску
- Структура проекта: отдельные файлы для бота, обработчиков, базы данных, констант
- Исходный код должен быть готов к развертыванию на сервере (рекомендации по настройке строки подключения)
Дополнительно (по желанию или по итогу обсуждения)
- Возможная интеграция с платежами (не обязательно на старте)
- Возможность отправлять пользователю рекламные рассылки (со скидками)
- Капча при регистрации (антиспам)
Сроки и оплата
Срок обсуждается. Предпочтителен постепенный дедливер (через 3-4 дня первый рабочий вариант бота + админка, через 6-8 дне доделка и публикация). Оплата по итогам приемки (в случае хорошего кода и чистой работы бота).