DateHelper fix

This commit is contained in:
Maciej Sobkowiak 2021-06-06 21:56:01 +02:00
parent 7902a6fbeb
commit a59a496bb5

View File

@ -1,4 +1,6 @@
from datetime import date, datetime, timedelta, time
import re
# Monday - 0
# Tuesday - 1
@ -30,6 +32,8 @@ def convert_UTC_to_timestamp(date):
def get_day_of_week_number(day):
if day == 'dziś' or day == 'dzisiaj':
return get_current_day_of_week()
if day == 'poniedziałek':
return 0
elif day == 'wtorek':
@ -72,8 +76,33 @@ def get_datetime_from_day(day, hours, minutes):
date = get_current_date() + timedelta(days=(7 - abs(current_day_of_week-input_date_of_week)))
return datetime.combine(date, input_time)
# print(get_current_datetime('niedziela', 22, 21))
print(get_datetime_from_day('niedziela', 22, 21))
print(get_datetime_from_day('niedziela', 18, 21))
print(get_datetime_from_day('poniedziałek', 18, 21))
print(get_datetime_from_day('wtorek', 18, 21))
def get_date(date, time):
# parsowanie czasu
if re.match(r'^[0-2][0-9]$', time):
hours = int(time)
minutes = 00
elif re.match(r'^[0-2][0-9].[0-9][0-9]$', time):
m = re.search(r'^([0-2][0-9]).([0-9][0-9])$', time)
hours = int(m.group(1))
minutes = int(m.group(2))
# TODO jeżeli jeszcze jakieś dziwne formaty to obsłużyć przypadki
if re.match(r'^[0-3][0-9]\.[0-1][0-9]\.20[0-9]{2}$', date):
date = datetime.strptime(date, '%d.%m.%Y').date()
return datetime.combine(date, get_time_from_hours_minutes(hours, minutes))
else:
return get_datetime_from_day(date, hours, minutes)
# Tests
# print(get_datetime_from_day('niedziela', 22, 21))
# print(get_datetime_from_day('niedziela', 18, 21))
# print(get_datetime_from_day('poniedziałek', 18, 21))
# print(get_datetime_from_day('wtorek', 18, 21))
# print(get_date("07.06.2021", "12:00"))
# print(get_date("sobota", "00:00"))
# print(get_date("wtorek", "12:00"))
# print(get_date("12.06.2021", "23"))