mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-11-26 08:34:55 +00:00
@ -223,6 +223,8 @@ class AddJuniorAPIView(viewsets.ModelViewSet):
|
|||||||
junior.guardian_code.append(guardian.guardian_code)
|
junior.guardian_code.append(guardian.guardian_code)
|
||||||
else:
|
else:
|
||||||
return "Max"
|
return "Max"
|
||||||
|
if junior.guardian_code_status and ('-' in junior.guardian_code_status):
|
||||||
|
junior.guardian_code_status.remove('-')
|
||||||
if not junior.guardian_code_status:
|
if not junior.guardian_code_status:
|
||||||
junior.guardian_code_status = [str(NUMBER['two'])]
|
junior.guardian_code_status = [str(NUMBER['two'])]
|
||||||
else:
|
else:
|
||||||
@ -344,9 +346,19 @@ class JuniorTaskListAPIView(viewsets.ModelViewSet):
|
|||||||
"""Junior task list"""
|
"""Junior task list"""
|
||||||
serializer_class = TaskDetailsjuniorSerializer
|
serializer_class = TaskDetailsjuniorSerializer
|
||||||
permission_classes = [IsAuthenticated]
|
permission_classes = [IsAuthenticated]
|
||||||
|
filter_backends = (SearchFilter,)
|
||||||
|
search_fields = ['task_name', ]
|
||||||
pagination_class = PageNumberPagination
|
pagination_class = PageNumberPagination
|
||||||
http_method_names = ('get',)
|
http_method_names = ('get',)
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
queryset = JuniorTask.objects.filter(junior__auth=self.request.user
|
||||||
|
).prefetch_related('junior', 'junior__auth'
|
||||||
|
).order_by('due_date', 'created_at')
|
||||||
|
|
||||||
|
queryset = self.filter_queryset(queryset)
|
||||||
|
return queryset
|
||||||
|
|
||||||
def list(self, request, *args, **kwargs):
|
def list(self, request, *args, **kwargs):
|
||||||
"""Junior task list
|
"""Junior task list
|
||||||
status=0
|
status=0
|
||||||
@ -354,27 +366,14 @@ class JuniorTaskListAPIView(viewsets.ModelViewSet):
|
|||||||
page=1"""
|
page=1"""
|
||||||
try:
|
try:
|
||||||
status_value = self.request.GET.get('status')
|
status_value = self.request.GET.get('status')
|
||||||
search = self.request.GET.get('search')
|
queryset = self.get_queryset()
|
||||||
if search and str(status_value) == '0':
|
if status_value and status_value != '0':
|
||||||
# search with title and for all task list
|
queryset = queryset.filter(task_status=status_value)
|
||||||
queryset = JuniorTask.objects.filter(junior__auth=request.user,
|
|
||||||
task_name__icontains=search).order_by('due_date', 'created_at')
|
|
||||||
elif search and str(status_value) != '0':
|
|
||||||
# search with title and fetch task list with status wise
|
|
||||||
queryset = JuniorTask.objects.filter(junior__auth=request.user, task_name__icontains=search,
|
|
||||||
task_status=status_value).order_by('due_date', 'created_at')
|
|
||||||
if search is None and str(status_value) == '0':
|
|
||||||
# fetch all task list
|
|
||||||
queryset = JuniorTask.objects.filter(junior__auth=request.user).order_by('due_date', 'created_at')
|
|
||||||
elif search is None and str(status_value) != '0':
|
|
||||||
# fetch task list with status wise
|
|
||||||
queryset = JuniorTask.objects.filter(junior__auth=request.user,
|
|
||||||
task_status=status_value).order_by('due_date','created_at')
|
|
||||||
paginator = self.pagination_class()
|
paginator = self.pagination_class()
|
||||||
# use Pagination
|
# use Pagination
|
||||||
paginated_queryset = paginator.paginate_queryset(queryset, request)
|
paginated_queryset = paginator.paginate_queryset(queryset, request)
|
||||||
# use TaskDetailsSerializer serializer
|
# use TaskDetails juniorSerializer serializer
|
||||||
serializer = TaskDetailsjuniorSerializer(paginated_queryset, many=True)
|
serializer = self.serializer_class(paginated_queryset, many=True)
|
||||||
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)
|
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
|
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
|
||||||
|
|||||||
Reference in New Issue
Block a user