Skip to content
Snippets Groups Projects
Commit cb699e9c authored by Piotr Gawron's avatar Piotr Gawron
Browse files

appointments api is timezone aware

parent 3c947a7d
No related branches found
No related tags found
1 merge request!60Resolve "Export to Excel"
import traceback import traceback
from datetime import datetime
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.http import JsonResponse from django.http import JsonResponse
from django.urls import reverse from django.urls import reverse
from django.utils import timezone
from web.models import Appointment from web.models import Appointment
from web.views import e500_error from web.views import e500_error
...@@ -29,9 +31,11 @@ def get_appointments(request, type, min_date, max_date): ...@@ -29,9 +31,11 @@ def get_appointments(request, type, min_date, max_date):
raise TypeError("Unknown query type: " + type) raise TypeError("Unknown query type: " + type)
if min_date is not None: if min_date is not None:
min_date = datetime.strptime(min_date, "%Y-%m-%d").replace(tzinfo=timezone.now().tzinfo)
result = result.filter(datetime_when__gt=min_date) result = result.filter(datetime_when__gt=min_date)
if max_date is not None: if max_date is not None:
max_date = datetime.strptime(max_date, "%Y-%m-%d").replace(tzinfo=timezone.now().tzinfo)
result = result.filter(datetime_when__lt=max_date) result = result.filter(datetime_when__lt=max_date)
return result.order_by("datetime_when") return result.order_by("datetime_when")
...@@ -57,12 +61,12 @@ def appointments(request, type): ...@@ -57,12 +61,12 @@ def appointments(request, type):
sliced_subjects = all_appointments[start:(start + length)] sliced_subjects = all_appointments[start:(start + length)]
appointments = sliced_subjects result_appointments = sliced_subjects
count_filtered = all_appointments.count() count_filtered = all_appointments.count()
data = [] data = []
for appointment in appointments: for appointment in result_appointments:
data.append(serialize_appointment(appointment)) data.append(serialize_appointment(appointment))
return JsonResponse({ return JsonResponse({
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment