Browse Source

Добавлена функция просмотра мероприятий за текущий день
Обновлен gitignore

Vildan 2 years ago
parent
commit
8bbe1afd0b
5 changed files with 29 additions and 18 deletions
  1. 2 1
      .gitignore
  2. 7 5
      bot/functions.py
  3. 5 0
      draft.py
  4. 13 10
      handlers/user/events.py
  5. 2 2
      main.py

+ 2 - 1
.gitignore

@@ -184,4 +184,5 @@ fabric.properties
 # idea folder, uncomment if you don't need it
 .idea
 
-*.sql
+*.sql
+sql.py

+ 7 - 5
bot/functions.py

@@ -56,9 +56,11 @@ def beauty_reg_request(data):
 
 
 def beauty_all_events(data):
-    result = (f"Инициатор:\n{data['Инициатор']}\n\n"
+    result = (f"******************\n"
+              f"Инициатор:\n{data['Инициатор']}\n\n"
               f"Событие:\n{data['Описание']}\n\n"
-              f"Дата:\n{data['Дата']}")
+              f"Дата:\n{data['Дата']}\n\n"
+              )
     return result
 
 
@@ -73,13 +75,13 @@ def date_range(range):
     days_per_month = {1: 31, 2: 28, 3: 30, 4: 31, 5: 30, 6: 31,
                       7: 31, 8: 31, 9: 30, 10: 31, 11: 30, 12: 31}
     if range == "today":
-        return f"{today}"
+        return today
 
     if range == "week":
         first = today - timedelta(days=weekday)
         # upper bound
         last = today + timedelta(days=(6 - weekday))
-        return f"{first} {last}"
+        return f"{first} and {last}"
 
     if range == "month":
         first = today.replace(day=1)
@@ -91,4 +93,4 @@ def date_range(range):
                 last = today.replace(day=28)
             else:
                 raise
-        return f"{first}  {last}"
+        return f"{first} and {last}"

+ 5 - 0
draft.py

@@ -24,4 +24,9 @@
 #     await bot.answer_callback_query(call.id)
 #     await bot.send_message(call.message.chat.id, "Вы выбрали " + call.data)
 
+        # events = db.sql_parse_all_events(f"select events_table.description, user_table.name, events_table.dat from events_table inner join user_table on events_table.owner = user_table.tg_id")
 
+
+#        await message.answer("Список всех событий")
+#        for event in events:
+#           await message.answer(beauty_all_events(event))

+ 13 - 10
handlers/user/events.py

@@ -1,8 +1,7 @@
 from aiogram import types, Dispatcher
 from bot import database
 from bot.keyboards import register_kb, make_calendar, events_range_kb
-from bot.functions import make_date, date_range
-
+from bot.functions import make_date, date_range, beauty_all_events
 
 async def make_event(message: types.message):
     db = database.Database()
@@ -21,6 +20,7 @@ async def make_event(message: types.message):
 
 async def select_date(call: types.CallbackQuery):
     await call.message.answer(call.data)
+    # TODO: Планирование по дате
 
 
 async def my_events(message: types.Message):
@@ -49,22 +49,25 @@ async def all_events(message: types.Message):
 
 
 async def select_range(call: types.CallbackQuery):
+    db = database.Database()
     if call.data == "today":
         await call.message.answer(date_range(call.data))
+        tim = str(date_range("today"))
+        tim = "'"+tim+"'"
+        data1 = db.sql_parse_all_events(sql=f"select events_table.description, user_table.name, events_table.dat "
+                                           f"from events_table inner join user_table "
+                                           f"on events_table.owner = user_table.tg_id "
+                                           f"where events_table.dat={tim}")
+        msg = ""
+        for elem in data1:
+            msg += "".join(beauty_all_events(elem))
+        await call.message.answer(msg)
     if call.data == "week":
         await call.message.answer(date_range(call.data))
     if call.data == "month":
         await call.message.answer(date_range(call.data))
 
 
-        # events = db.sql_parse_all_events(f"select events_table.description, user_table.name, events_table.dat from events_table inner join user_table on events_table.owner = user_table.tg_id")
-
-
-#        await message.answer("Список всех событий")
-#        for event in events:
-#           await message.answer(beauty_all_events(event))
-
-
 def events_register(dp: Dispatcher):
     dp.register_message_handler(make_event, text="🎯 Запланировать мероприятие")
     dp.register_message_handler(my_events, text="🗒 Мои события")

+ 2 - 2
main.py

@@ -1,13 +1,13 @@
 from aiogram.utils import executor
 from bot.dispatcher import dp
 import handlers.admin.admin_menu
-
+import logging
 
 if __name__ == '__main__':
+    logging.basicConfig(level=logging.INFO)
     handlers.user.registration.register_handlers(dp)
     handlers.start.main_register(dp)
     handlers.user.events.events_register(dp)
     handlers.admin.admin_menu.register_admin_menu(dp)
     handlers.admin.manage_users.admin_handlers(dp)
     executor.start_polling(dp, skip_updates=True)
-