Skip to content
Prev Previous commit
Next Next commit
fix: move in_range method from TimEntry to worked time module
  • Loading branch information
Angeluz-07 committed Jun 17, 2020
commit e0cbe9fa30a65effae2aa49166e80f2b790fa735
6 changes: 0 additions & 6 deletions time_tracker_api/time_entries/time_entries_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -113,12 +113,6 @@ def elapsed_time(self) -> timedelta:
end_datetime = str_to_datetime(self.end_date)
return end_datetime - start_datetime

def in_range(self, start_date: datetime, end_date: datetime) -> bool:
return (
start_date <= str_to_datetime(self.start_date) <= end_date
and start_date <= str_to_datetime(self.end_date) <= end_date
)

def __add__(self, other):
if type(other) is ProjectCosmosDBModel:
time_entry = self.__class__
Expand Down
16 changes: 11 additions & 5 deletions utils/worked_time.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,17 @@ def summary(self):


def filter_time_entries(time_entries, dr: DateRange):
return [
t
for t in time_entries
if t.in_range(start_date=dr.start(), end_date=dr.end())
]
start, end = dr.start(), dr.end()
result = []
for t in time_entries:
te_start, te_end = (
str_to_datetime(t.start_date),
str_to_datetime(t.end_date),
)
in_range = start <= te_start <= end or start <= te_end <= end
if in_range:
result.append(t)
return result


def worked_time_in_day(time_entries, tz):
Expand Down