start.py 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. from aiogram import types, Dispatcher
  2. from bot.keyboards import main_kb, register_kb, check_register_kb
  3. from bot import database
  4. from bot import sql
  5. from bot.dispatcher import bot
  6. from aiogram.dispatcher.storage import FSMContext
  7. from handlers.user.states import SendBugState
  8. from handlers.admin.notifications import new_bug
  9. # @dp.message_handler(commands=['start'])
  10. async def start_cmd(message: types.Message):
  11. db = database.Database()
  12. await message.delete()
  13. if not db.sql_fetchone(sql.check_id(message.from_user.id)):
  14. await message.answer(f"🤖Вас приветствует лакей ТТИТ🤖\n\n"
  15. "Для доступа к функциям нужно пройти простую регистрацию\n", reply_markup=register_kb)
  16. elif db.sql_fetchone(sql.check_approved(message.from_user.id)) == "0":
  17. await message.answer(f"Ваша заявка находится на рассмотрении", reply_markup=check_register_kb)
  18. else:
  19. await message.answer(f"🤖Вас приветствует лакей ТТИТ🤖\n"
  20. f"\n"
  21. f"Я помогу Вам запланировать мероприятие в 405 аудитории.\n\n"
  22. f"Меня еще разрабатыают по этому умею немного.\n\n"
  23. f"Вот мои функции:\n"
  24. f"Запланировать мероприятие\n"
  25. f"Мои события\n"
  26. f"Все события\n\n"
  27. f"Если есть пожелания или замечания\n"
  28. f"Можете обратиться к @FeldwebelWillman\n"
  29. f"Или воспользовтаься обратной связью /bug",
  30. reply_markup=main_kb)
  31. async def stop_cmd(message: types.Message):
  32. if message.from_user.id == 338836490:
  33. await message.answer("Остановка")
  34. else:
  35. await message.answer("Я слушаюсь только создателя")
  36. async def send_report(message: types.Message):
  37. await SendBugState.send_bug.set()
  38. await message.answer("Опишите проблему")
  39. async def get_report(message: types.Message, state: FSMContext):
  40. await state.update_data(bug=message.text)
  41. await state.update_data(from_user=message.from_user.username)
  42. data = await state.get_data()
  43. await state.finish()
  44. await new_bug(data)
  45. await message.delete()
  46. def main_register(dp: Dispatcher):
  47. dp.register_message_handler(start_cmd, commands=['start', 'help'])
  48. dp.register_message_handler(stop_cmd, commands=['stop'])
  49. dp.register_message_handler(send_report, commands=['bug'])
  50. dp.register_message_handler(get_report, state=SendBugState.send_bug)