[MTELECHAA-139]add indisponibilites_for_a_date
gitea/imio-teleservices-templatetags/pipeline/head This commit looks good Details

This commit is contained in:
Nicolas Selva 2023-03-07 10:59:13 +01:00
parent 6e589ed837
commit e5ce3628b6
1 changed files with 29 additions and 0 deletions

View File

@ -270,3 +270,32 @@ def distinct_list(value):
return : (list)
"""
return list(set(value))
#####################
# LOCATION DE SALLE #
#####################
@register.filter
def indisponibilites_for_a_date(date_debut_fin, indisponibilites):
"""
start_end_date : str start_date|end_date
indisponibilites : json
"""
if date_debut_fin == "|":
return []
date_debut = datetime.datetime.strptime(str(date_debut_fin).split("|")[0], "%d/%m/%Y").date()
date_fin = datetime.datetime.strptime(str(date_debut_fin).split("|")[1], "%d/%m/%Y").date()
date_indisponibles = []
for indisponibilite in indisponibilites["data"]:
StartDate = datetime.datetime.strptime(indisponibilite["StartDate"], "%Y-%m-%dT%H:%M:%S").date()
EndDate = datetime.datetime.strptime(indisponibilite["EndDate"], "%Y-%m-%dT%H:%M:%S").date()
if (
(StartDate <= date_debut and date_debut <= EndDate)
or (StartDate <= date_fin and date_fin <= EndDate)
or (date_debut <= StartDate and StartDate <= date_fin)
or (date_debut <= EndDate and EndDate <= date_fin)
):
date_indisponibles.append(indisponibilite)
return date_indisponibles