Beispiel #1
0
        private static async void BotOnCallbackQuery(object sender, CallbackQueryEventArgs ev)
        {
            if (ev.CallbackQuery.Data == "по категориям")
            {
                await Bot.SendTextMessageAsync(message.Chat.Id, DataBaseCon.SelectRowsByCategory((int)message.Chat.Id));

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
            if (ev.CallbackQuery.Data == "по датам")
            {
                await Bot.SendTextMessageAsync(message.Chat.Id, DataBaseCon.SelectRowsByDates((int)message.Chat.Id));

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
            if (ev.CallbackQuery.Data == "Транспорт")
            {
                DataBaseCon.InsertAmount((int)message.Chat.Id, bill, "Транспорт");
                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id, "Расходы на транспорт зафиксированы");

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
            else if (ev.CallbackQuery.Data == "Мобильная связь")
            {
                DataBaseCon.InsertAmount((int)message.Chat.Id, bill, "Мобильная связь");
                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id, "Расходы на мобильную связь зафиксированы");

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
            else if (ev.CallbackQuery.Data == "Продукты питания")
            {
                DataBaseCon.InsertAmount((int)message.Chat.Id, bill, "Продукты питания");
                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id, "Расходы на продукты питания зафиксированы");

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
            else if (ev.CallbackQuery.Data == "Техника")
            {
                DataBaseCon.InsertAmount((int)message.Chat.Id, bill, "Техника");
                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id, "Расходы на технику зафиксированы");

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
            else if (ev.CallbackQuery.Data == "Другое")
            {
                DataBaseCon.InsertAmount((int)message.Chat.Id, bill, "Другое");
                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id, "Расходы на другую категорию зафиксированы");

                await Bot.AnswerCallbackQueryAsync(ev.CallbackQuery.Id);
            }
        }
Beispiel #2
0
        private static void BotOnMessageReceived(object sender, MessageEventArgs messageEventArgs)
        {
            message = messageEventArgs.Message;

            if (message == null || message.Type != MessageType.TextMessage)
            {
                return;
            }

            if (message.Text.StartsWith("/help"))
            {
                Bot.SendTextMessageAsync(message.Chat.Id, WalletKeeper.Constants.HELP_MESSAGE);
            }


            if (message.Text.StartsWith("/spending"))
            {
                var keyboard2 = new Telegram.Bot.Types.ReplyMarkups.InlineKeyboardMarkup();
                keyboard2.InlineKeyboard = new Telegram.Bot.Types.InlineKeyboardButtons.InlineKeyboardButton[][]
                {
                    new Telegram.Bot.Types.InlineKeyboardButtons.InlineKeyboardButton[]
                    {
                        Telegram.Bot.Types.InlineKeyboardButtons.InlineKeyboardButton.WithCallbackData("по категориям"),
                        Telegram.Bot.Types.InlineKeyboardButtons.InlineKeyboardButton.WithCallbackData("по датам"),
                    },
                };

                Bot.SendTextMessageAsync(message.Chat.Id, "Выбери вид отчетности", replyMarkup: keyboard2);
            }

            if (message.Text.StartsWith("/start"))
            {
                DataBaseCon.InsertUser((int)message.Chat.Id, message.Chat.FirstName);
                Bot.SendTextMessageAsync(message.Chat.Id, $"Привет, {message.Chat.FirstName}" + WalletKeeper.Constants.START_MESSAGE);
            }
            if (message.Text.StartsWith("/delete"))
            {
                DataBaseCon.DeleteRows((int)message.Chat.Id);
                Bot.SendTextMessageAsync(message.Chat.Id, WalletKeeper.Constants.DELETE_DONE);
            }
        }