async def process_callback_button1(callback_query: types.CallbackQuery): global product # Известные категории из БД. markup = InlineKeyboardMarkup(row_width=1) for items in DBMS.all_categories(): item = InlineKeyboardButton(items, callback_data=items) markup.add(item) # Выбор новой. item = InlineKeyboardButton('Новая категория', callback_data="new") markup.add(item) await bot.send_message(callback_query.message.chat.id, 'Выбери категорию:', reply_markup=markup)
# Известные категории из БД. markup = InlineKeyboardMarkup(row_width=1) for items in DBMS.all_categories(): item = InlineKeyboardButton(items, callback_data=items) markup.add(item) # Выбор новой. item = InlineKeyboardButton('Новая категория', callback_data="new") markup.add(item) await bot.send_message(callback_query.message.chat.id, 'Выбери категорию:', reply_markup=markup) # Если была выбрана уже известная категория. @dp.callback_query_handler(lambda c: c.data in DBMS.all_categories()) async def process_callback_button1(callback_query: types.CallbackQuery): global product product.category = callback_query.data DBMS.add_product(product) await bot.send_message( callback_query.message.chat.id, f"Товар {product.codename} на сумму {product.price} " f"добавлен в категорию {product.category}.") # Если была выбрана новая категория. @dp.callback_query_handler(lambda c: c.data == 'new') async def process_callback_button1(callback_query: types.CallbackQuery): await Statement.answer.set() await bot.send_message(callback_query.message.chat.id,
product = DBMS.product_exist(raw_message) print(product) #%% Если категория уже в БД, но продукт - нет. raw_message = 'Клубника - 200' product = DBMS.product_exist(raw_message) if not product.category: product.category = 'Продукты' DBMS.add_product(product) #%% Вывод всех категорий при помощи метода all_categories. print('Все категории:') [print(category) for category in DBMS.all_categories()] #%% Вывод всех расходов по категориям. print(DBMS.db.all_categories_costs()) ############## ### Доходы ### ############## #%% Создаем сообщение. raw_message = 'Валера - 18000' #%% Добавляем доход в БД.