Как получить нужные мне данные из таблицы по запросу пользователя , telegram bot на java , spring-boot?

Рейтинг: 0Ответов: 1Опубликовано: 23.04.2023

Подскажите как передать определенную строку из таблицы mysql по запросу пользователя командой например /help которая будет отвечать на его поставленный запрос в телеграм боте, написан на java , spring boot?

Таблица уже создана и там есть 2 столбца с id и ad - описанием.Сейчас из таблицы беруться все данные сразу и в определенное время данные пересылаются в бот, работает как рассылка по времени.Ниже я оставил метод который отвечает за взятие данных из таблицы.

  private  void sendAds() {
        //Список обьявлений, получение всех записей что есть в нашей таблице
        var ads = adsRepository.findAll();

        //Ищем всех юзеров и отправляем им всем сообщение
        var users = userRepository.findAll();

        //Каждому юзеру мы отправляем сообщение , берем чат id и потом переменную textToSend которая ищет
        // по подстроке все что начинаеться после пробела команды /send
        for (Ads ad : ads)
            for (User user : users) {
                prepareAndSendMessage(user.getChatId(), ad.getAd());
            }
        //Проходим по каждой строке столбца product и проходим по всему списку users,после возвращаем сообщение всем юзерам с chat id
        for (Ads product : ads) {
            for (User user : users) {
                prepareAndSendMessage(user.getChatId(), product.getProduct());
            }
        }

Ответы

▲ 0

Насколько я понял необходимо чтобы в ответ на сообщение допустим /help юзеру отправлялась информация о всех ad? Так сделайте обработку сообщений где если getMessage().getText.equals("/help") программа будет делать

for (Ads ad : ads){
                prepareAndSendMessage(user.getChatId(), ad.getAd());
            }