Source code for ecstask.productavailability.utilities.date_util

from datetime import datetime
from dateutil.relativedelta import relativedelta


[docs]def is_more_than_one_year(new_mask_from, new_mask_until, _): now = datetime.now() today_datetime = datetime(now.year, now.month, now.day) from_time_difference = relativedelta(new_mask_from, today_datetime) from_difference_in_years = from_time_difference.years if from_difference_in_years >= 1: return True time_difference = relativedelta(new_mask_until, new_mask_from) difference_in_years = time_difference.years if difference_in_years >= 1: return True return False
[docs]def is_mask_date_overlapping(existing_mask_from, existing_mask_until, new_mask_from, new_mask_until): """ This method is used for finding the overlapping masking dates :param existing_mask_from: :param existing_mask_until: :param new_mask_from: :param new_mask_until: :return: """ ex_mask_from_date = existing_mask_from ex_mask_until_date = existing_mask_until new_mask_from_date = new_mask_from new_mask_until_date = new_mask_until if ex_mask_from_date <= new_mask_from_date and new_mask_until_date >= ex_mask_until_date: return True if ex_mask_from_date >= new_mask_from_date and new_mask_until_date <= ex_mask_until_date: return True return False