diff --git a/dasettings/views.py b/dasettings/views.py index 29fb9a3..64802e8 100644 --- a/dasettings/views.py +++ b/dasettings/views.py @@ -903,13 +903,24 @@ def SettingsAjaxRouter(request): #tempdays_year = False if(request.GET["land"] == "true"): + tempdays_year = loadingFreeDaysMulti(request.user.profile.agency.plz, request.GET["year"], True) + allfreedays = FreeDays.objects.filter(agency=request.user.profile.agency) if(tempdays_year != False): for k in tempdays_year.keys(): tempdate = tempdays_year[k].split("-") - FreeDays(agency=request.user.profile.agency, name=k, day=datetime.datetime(int(tempdate[0]),int(tempdate[1]),int(tempdate[2])), year=int(request.GET["year"])).save() + + double = False + + for day in allfreedays: + if day.day == datetime.date(int(tempdate[0]),int(tempdate[1]),int(tempdate[2])) and day.year == int(request.GET["year"]): + double = True + + + if double == False: + FreeDays(agency=request.user.profile.agency, name=k, day=datetime.datetime(int(tempdate[0]),int(tempdate[1]),int(tempdate[2])), year=int(request.GET["year"])).save() messages.success(request, f'Feiertage erfolgreich gespeichert!') success = True @@ -918,11 +929,21 @@ def SettingsAjaxRouter(request): else: tempdays_year = loadingFreeDaysMulti(request.user.profile.agency.plz, request.GET["year"], False) - + allfreedays = FreeDays.objects.filter(agency=request.user.profile.agency) + if(tempdays_year != False): for k in tempdays_year.keys(): + + double = False + tempdate = tempdays_year[k]["datum"].split("-") - FreeDays(agency=request.user.profile.agency, name=k, day=datetime.datetime(int(tempdate[0]),int(tempdate[1]),int(tempdate[2])), year=int(request.GET["year"])).save() + + for day in allfreedays: + + if day.day == datetime.date(int(tempdate[0]),int(tempdate[1]),int(tempdate[2])) and day.year == int(request.GET["year"]): + double = True + if double == False: + FreeDays(agency=request.user.profile.agency, name=k, day=datetime.datetime(int(tempdate[0]),int(tempdate[1]),int(tempdate[2])), year=int(request.GET["year"])).save() messages.success(request, f'Feiertage erfolgreich gespeichert!') success = True diff --git a/users/views.py b/users/views.py index b5316a5..0dda13b 100644 --- a/users/views.py +++ b/users/views.py @@ -41,7 +41,7 @@ from channels_presence.models import Room from channels_presence.models import Presence import channels.layers from datetime import date, timedelta -from timemanagement.models import Workday, Absence, Breaks, FreeDays +from timemanagement.models import Workday, Absence, Breaks import base64 import filetype from django.db.models.signals import m2m_changed