From 42ce5ea78cb4674a01c1912f90b4831c670415c1 Mon Sep 17 00:00:00 2001 From: jiyoon607 Date: Tue, 27 May 2025 00:02:12 +0900 Subject: [PATCH] =?UTF-8?q?Feat:=20=EB=B6=80=EC=8A=A4=20=EB=AA=A9=EB=A1=9D?= =?UTF-8?q?=20=EB=82=A0=EC=A7=9C=20=ED=95=84=ED=84=B0=EB=A7=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- booth/views.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/booth/views.py b/booth/views.py index 95daf23..96bcd8a 100644 --- a/booth/views.py +++ b/booth/views.py @@ -3,6 +3,7 @@ from rest_framework.decorators import action from rest_framework.response import Response from django.db.models import Case, When, Value, IntegerField, Count, Q +from django.utils import timezone from rest_framework.filters import OrderingFilter from .models import Booth from .serializers import * @@ -29,6 +30,7 @@ def get_serializer_class(self): return BoothDetailSerializer def get_queryset(self): + today = timezone.now().date() # '운영중 - 대기중지 - 운영전 - 운영종료' + 가나다 순서로 정렬 queryset = Booth.objects.all().annotate( operating_status_order=Case( @@ -38,7 +40,7 @@ def get_queryset(self): When(operating_status='finished', then=Value(4)), output_field=IntegerField() ) - ) + ).filter(booth_start_time__date=today) # 오늘 부스만 return queryset.order_by('operating_status_order', 'booth_name') # 부스 목록 조회 @@ -165,6 +167,7 @@ def get_serializer_class(self): return BoothWaitingDetailSerializer def get_queryset(self): + today = timezone.now().date() # '운영중 - 대기중지 - 운영전 - 운영종료' + 가나다 순서로 정렬 queryset = Booth.objects.all().annotate( operating_status_order=Case( @@ -174,7 +177,7 @@ def get_queryset(self): When(operating_status='finished', then=Value(4)), output_field=IntegerField() ) - ) + ).filter(booth_start_time__date=today) # 오늘 부스만 return queryset.order_by('operating_status_order', 'booth_name') # 부스 목록 - 대기 정보 조회 @@ -329,7 +332,8 @@ def get_serializer_class(self): return GDGBoothDetailSerializer def get_queryset(self): - queryset = Booth.objects.all() + today = timezone.now().date() + queryset = Booth.objects.all().filter(booth_start_time__date=today) # 오늘 부스만 return queryset.order_by('booth_name') # 부스 목록 조회