Удаление

2024-08-12 17:46 | Публичная
class DataDeletionManager:
    def __init__(self, dp: Dispatcher):
        self.dp = dp
        self.register_handlers()

    def register_handlers(self):
         @self.dp.callback_query(SalesDataCallback.filter(F.foo == 'delete_date'))
         @user_permission
         async def command_delete_custom_date(
                 query: CallbackQuery,
                 state: FSMContext,
                 callback_data: SalesDataCallback,
         ):
             await query.message.edit_text(
                 text=f"За какой период вы хотите удалить данные? Напишите дату 'YYYY.MM'.\n"
                      f"Например: <code>{delete_last_month_date()}</code>",
                 parse_mode='HTML',
                 reply_markup=None
             )
             await state.set_state(Form.del_custom_data)


             @self.dp.message(Form.del_custom_data)
             @user_permission
             async def command_del_custom_date(
                     message: Message,
                     state: FSMContext
             ) -> None:
                 try:
                     custom_date = message.text.strip()
                     if not re.match(r'^\d{4}\.\d{2}$', custom_date):
                         await message.answer(f'Не верный формат - {custom_date} должно быть YYYY.MM', parse_mode='HTML')
                         await state.clear()
                         await return_to_main_menu(message, message_text='Произошла ошибка возвращаемся в Главное меню.',
                                                   state=state)
                         return
                     await message.answer(f'Дата: <b>{custom_date}</b> принята.', parse_mode='HTML')
# TODO: Нужно дописать саму функцию удаления
# TODO: Нужно сделать проверку на добавления файлов, чтобы мы не могли загружать в прошлое и будущее


                 finally:
                     await state.clear()
Вернуться ко Всем Вставкам
Открыть чат
Чат с Send-Code AI Закрыть чат