Commit c5abfae8 authored by Gladys Forte's avatar Gladys Forte

added is active

parent a6bf5ce1
...@@ -1058,6 +1058,49 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet): ...@@ -1058,6 +1058,49 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
return Response(message, status=status.HTTP_200_OK) return Response(message, status=status.HTTP_200_OK)
@action(
methods=['GET'], detail=False,
url_path='archived', url_name='archived'
)
def archived(self, request, *args, **kwargs):
self.serializer_class = ChangeRequestFormHeaderSerializerList
id_number = self.request.user.code
self.queryset = change_request.list_by_user_archived(id_number)
self.queryset = change_request.filter_base(
self.queryset,
request.query_params.get('company_requested_to'),
request.query_params.get('department_requested_to'),
request.query_params.get('date_modified_from'),
request.query_params.get('date_modified_to'),
request.query_params.get('date_required_from'),
request.query_params.get('date_required_to'),
request.query_params.get('form_type'),
)
queryset = self.filter_queryset(self.queryset)
page = self.paginate_queryset(queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
message = status_message_response(
200,
'success',
'List of Archived Change Request Form found',
serializer.data
)
return self.get_paginated_response(message)
serializer = self.get_serializer(self.queryset, many=True)
return Response(
serializer.data,
status=status.HTTP_200_OK
)
class ChangeRequestFormPost(APIView): class ChangeRequestFormPost(APIView):
......
...@@ -38,7 +38,8 @@ def list_by_user(user_id_number): ...@@ -38,7 +38,8 @@ def list_by_user(user_id_number):
Q(requested_to_department__in=priviledgeCrs) Q(requested_to_department__in=priviledgeCrs)
).exclude( ).exclude(
Q(status__icontains='Draft') & Q(status__icontains='Draft') &
~Q(requested_by_user=user_id_number) ~Q(requested_by_user=user_id_number) |
Q(status__icontains='Archived')
).distinct() ).distinct()
return return_queryset return return_queryset
...@@ -49,6 +50,32 @@ def list_by_user(user_id_number): ...@@ -49,6 +50,32 @@ def list_by_user(user_id_number):
return return_queryset return return_queryset
def list_by_user_archived(user_id_number):
try:
priviledgeCrs = models.AllowedCompany.objects.filter(
Q(id_number=user_id_number) &
Q(view_all_change_request=True)
).values('group_pivots')
return_queryset = models.ChangeRequestFormHeader.objects.filter(
Q(status__icontains='Archived') |
Q(frm_approvers__user__code=user_id_number) |
Q(frm_stakes__user__code=user_id_number) |
Q(requested_by_user=user_id_number) |
Q(requested_to_department__in=priviledgeCrs)
).exclude(
Q(status__icontains='Draft') &
~Q(requested_by_user=user_id_number)
).distinct()
return return_queryset
except Exception as e:
return_queryset = None
return return_queryset
def list_by_user_without_dept(user_id_number): def list_by_user_without_dept(user_id_number):
try: try:
...@@ -58,7 +85,8 @@ def list_by_user_without_dept(user_id_number): ...@@ -58,7 +85,8 @@ def list_by_user_without_dept(user_id_number):
Q(requested_by_user=user_id_number) Q(requested_by_user=user_id_number)
).exclude( ).exclude(
Q(status__icontains='Draft') & Q(status__icontains='Draft') &
~Q(requested_by_user=user_id_number) ~Q(requested_by_user=user_id_number) |
Q(status__icontains='Archived')
).distinct() ).distinct()
return return_queryset return return_queryset
......
...@@ -397,6 +397,8 @@ class BaseHeader(models.Model): ...@@ -397,6 +397,8 @@ class BaseHeader(models.Model):
created = models.DateTimeField(auto_now_add=True) created = models.DateTimeField(auto_now_add=True)
is_active = models.BooleanField(default=False)
class Meta: class Meta:
abstract = True abstract = True
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment