lk: add 3rd month option for timesheet view
This commit is contained in:
+9
-3
@@ -207,6 +207,7 @@ async def send_tabel_months_menu(msg: Message, user_id: str):
|
||||
now = datetime.now()
|
||||
m1 = now.replace(day=1) - timedelta(days=1) # Прошлый месяц (M-1)
|
||||
m2 = m1.replace(day=1) - timedelta(days=1) # Позапрошлый месяц (M-2)
|
||||
m3 = m2.replace(day=1) - timedelta(days=1) # За два месяца (M-3)
|
||||
|
||||
months_ru = {
|
||||
1: "Январь", 2: "Февраль", 3: "Март", 4: "Апрель", 5: "Май", 6: "Июнь",
|
||||
@@ -215,11 +216,13 @@ async def send_tabel_months_menu(msg: Message, user_id: str):
|
||||
|
||||
m1_str = f"{months_ru[m1.month]} {m1.year} г."
|
||||
m2_str = f"{months_ru[m2.month]} {m2.year} г."
|
||||
m3_str = f"{months_ru[m3.month]} {m3.year} г."
|
||||
|
||||
menu_text = (
|
||||
"⏱ <b>Выберите месяц для просмотра табеля:</b>\n\n"
|
||||
f"{EMOJI_DIGITS['1']} — {m1_str}\n"
|
||||
f"{EMOJI_DIGITS['2']} — {m2_str}\n\n"
|
||||
f"{EMOJI_DIGITS['2']} — {m2_str}\n"
|
||||
f"{EMOJI_DIGITS['3']} — {m3_str}\n\n"
|
||||
f"<i>{EMOJI_DIGITS['9']} — Назад\n{EMOJI_DIGITS['0']} — В главное меню</i>"
|
||||
)
|
||||
|
||||
@@ -403,7 +406,7 @@ async def lk_router_handler(msg: Message):
|
||||
elif cmd == "9":
|
||||
set_state(user_id, "LK_MODE")
|
||||
await send_dynamic_lk_main_menu(msg, user_id)
|
||||
elif cmd in ["1", "2"]:
|
||||
elif cmd in ["1", "2", "3"]:
|
||||
log_menu_stats(user_id, "Личный кабинет", f"Просмотр табеля (вариант {cmd})")
|
||||
await msg.answer(lk_tabel_loading(EMOJI_DIGITS), parse_mode="html")
|
||||
try:
|
||||
@@ -411,10 +414,13 @@ async def lk_router_handler(msg: Message):
|
||||
now = datetime.now()
|
||||
|
||||
m1 = now.replace(day=1) - timedelta(days=1)
|
||||
m2 = m1.replace(day=1) - timedelta(days=1)
|
||||
if cmd == "1":
|
||||
target_date = m1 # Прошлый месяц
|
||||
elif cmd == "2":
|
||||
target_date = m1.replace(day=1) - timedelta(days=1) # Позапрошлый месяц
|
||||
target_date = m2 # Позапрошлый месяц
|
||||
elif cmd == "3":
|
||||
target_date = m2.replace(day=1) - timedelta(days=1) # За два месяца
|
||||
|
||||
tabel_report = await asyncio.to_thread(
|
||||
get_tabel_report_text,
|
||||
|
||||
Reference in New Issue
Block a user