Этот проект представляет собой Telegram-бота, который позволяет пользователям создавать, просматривать и удалять дерево категорий. Бот реализован с использованием Spring Boot и PostgreSQL, а для взаимодействия с Telegram API применяется библиотека TelegramBots.
-
Просмотр дерева категорий:
/viewTree -
Добавление элемента:
- Корневого элемента:
/addElement <название элемента> - Дочернего элемента:
/addElement <родительский элемент> <дочерний элемент>
- Корневого элемента:
-
Удаление элемента (вместе с дочерними):
/removeElement <название элемента> -
Просмотр списка команд:
/help
Дополнительные (необязательные) команды:
- Скачивание дерева в Excel:
/download- Загрузка дерева из Excel:
/upload- Админ Панель:
/check <password>
- Backend: Spring Boot
- База данных: PostgreSQL (Spring Data JPA)
- Telegram API: TelegramBots
- Контейнеризация: Docker
- Архитектура: Command pattern, SOLID
- Тестирование: Unit Tests (JUnit)
/start
telegram.bot-token:${TELEGRAM_BOT_TOKEN:7852665315:AAEOAXvEuLHMDxQR9hFwHHbHmtTnluAj81A} telegram.bot-username:${TELEGRAM_BOT_USERNAME:Pandev_Tech-Task_bot} security.admin-secret:${ADMIN_SECRET:1234}
Если вы хотите стать адмиином то введите /check 1234
-
Клонирование репозитория:
git clone https://github.com/Yersdev/Pandev_Tech_Task.git cd Pandev_Tech_Task -
Настроить базу данных в
application.properties:spring.application.name=Pandev_Tech_Task # JPA/Hibernate Properties spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.format_sql=true spring.datasource.url=${DB_URL:jdbc:postgresql://db:5432/mydatabase} spring.datasource.username=${DB_USERNAME:postgres} spring.datasource.password=${DB_PASSWORD:12345678} spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect -
Запустить проект:
docker compose up --build
- Собрать Docker-образ:
docker compose up --build
Если проект поддерживает CI/CD, можно настроить автоматический деплой через GitHub Actions или GitLab CI/CD, добавив соответствующие .yml файлы в корень репозитория.
Если у вас есть вопросы, обращайтесь по почте: yersultanamangedlindev@gmail.com





