Closed PrudyvusP closed 10 months ago
Задача временно закрывается Имеющиеся наработки:
serializers.py
offset = serializers.IntegerField(
default=1,
min_value=1,
max_value=15,
help_text='Кол-во дней + от переданной даты, на которые нужно '
'показать талоны'
)
views/organizations.py
from django.db.models import Prefetch, Count
free_appointments_query = (
Appointment
.objects
.only('id', 'datetime_start')
.values('datetime_start__date')
.filter(organization__uuid=uuid, status=Appointment.FREE,
specialty=spec, datetime_start__date=which_date)
specialty=spec,
datetime_start__date__gte=which_date,
datetime_start__date__lte=which_date +
datetime.timedelta(days=offset)
)
.annotate(total=Count('id'))
В этом запросе отдается datetime и количество свободных записей на соответсвующий день
Необходимо пересмотреть подход по отдаче списка свободных талонов на день в сторону отдачи массива свободных талонов на N - дней вперед, где N мы принимаем как параметр и считаем равным не больше 14