Commit af2e1c27 authored by Gladys Forte's avatar Gladys Forte

Merge pull request #227 in RMS/api-main-service from gladys-dev2 to RMSv2

* commit '84c80fc9':
  sort
parents 9be4e112 84c80fc9
......@@ -44,7 +44,7 @@ class ChangeRequestFormHeaderSerializer(
approver = 'Yes'
else:
approver = 'No'
ret['action_required'] = approver
requested_to_user = {
......
......@@ -99,8 +99,11 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
request.query_params.get('form_type'),
)
queryset = self.filter_queryset(self.queryset)
if len(request.query_params) == 0:
queryset = self.queryset.order_by('-created')
else:
queryset = self.filter_queryset(self.queryset)
page = self.paginate_queryset(queryset)
if page is not None:
......@@ -1023,6 +1026,13 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
next_approver_email(form_code, min_level)
# update next approver details
models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=form_code) & Q(level=int(min_level))
).update(
date_sent=datetime.now()
)
serializer = self.get_serializer(instance)
message = status_message_response(
......
from django.shortcuts import render
from app.entities import models
from app.applicationlayer import paginators
......@@ -49,7 +48,6 @@ def list_by_user(user_id_number):
return_queryset = None
return return_queryset
def filter_base(base_queryset,
......@@ -66,14 +64,15 @@ def filter_base(base_queryset,
try:
if company_requested_to:
return_queryset = return_queryset.filter(requested_to_company__exact=company_requested_to)
return_queryset = return_queryset.filter(
requested_to_company__exact=company_requested_to)
if department_requested_to:
return_queryset = return_queryset.filter(requested_to_department__exact=department_requested_to)
return_queryset = return_queryset.filter(
requested_to_department__exact=department_requested_to)
if form_type == 'open':
return_queryset = return_queryset.filter(status__ne='Closed')
return_queryset = return_queryset.filter(~Q(status='Closed'))
elif form_type == 'closed':
return_queryset = return_queryset.filter(status='Closed')
......@@ -88,50 +87,31 @@ def filter_base(base_queryset,
if created >= date_modified_from and created <= date_modified_to:
date_modified.append(query.id)
return_queryset = return_queryset.filter(id__in=date_modified)
else:
else:
date_modified_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_modified_not)
date_required = []
date_required_not = []
if date_required_from and date_required_to:
for query in return_queryset:
try:
if query.requested_to_target_date:
requested_to_target_date = datetime.strptime(query.requested_to_target_date[:-1], "%Y-%m-%dT%H:%M:%S.%f")
requested_to_target_date = datetime.strftime(requested_to_target_date, "%Y-%m-%d")
if requested_to_target_date >= date_required_from and requested_to_target_date <= date_required_to:
date_required.append(query.id)
return_queryset = return_queryset.filter(id__in=date_required)
else:
date_required_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_required_not)
else:
date_required_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_required_not)
except ValueError:
if query.requested_to_target_date:
requested_to_target_date = datetime.strptime(query.requested_to_target_date[:-1], "%Y-%m-%d %H:%M:%S")
requested_to_target_date = datetime.strftime(requested_to_target_date, "%Y-%m-%d")
if requested_to_target_date >= date_required_from and requested_to_target_date <= date_required_to:
date_required.append(query.id)
return_queryset = return_queryset.filter(id__in=date_required)
else:
date_required_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_required_not)
else:
date_required_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_required_not)
if query.requested_to_target_date:
requested_to_target_date = datetime.strftime(
query.requested_to_target_date,
"%Y-%m-%d")
if requested_to_target_date >= date_required_from and requested_to_target_date <= date_required_to:
date_required.append(query.id)
return_queryset = return_queryset.filter(id__in=date_required)
else:
date_required_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_required_not)
else:
date_required_not.append(query.id)
return_queryset = return_queryset.filter(id__nin=date_required_not)
return_queryset
......@@ -195,36 +175,28 @@ def filter_awaiting(base_queryset,
for query in return_queryset:
current_level = models.ChangeRequestFormApprovers.objects.filter(
no_actions = models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=query.form_code) &
(Q(action='') | Q(action=None))
).aggregate(Min('level'))
# for current in current_level:
if current_level:
current_level = current_level.get('level__min')
query = models.ChangeRequestFormApprovers.objects.filter(
) # .aggregate(Min('level'))
print("hello")
for no_action in no_actions:
print(no_action.level)
check_with_same_level = models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=query.form_code) &
(Q(action='') | Q(action=None)) &
Q(level=current_level)
)
Q(level=int(no_action.level))
).exclude(Q(action='') | Q(action=None))
print(query)
# first_level = current_level.first()
print(check_with_same_level)
# first_user = models.ChangeRequestFormApprovers.objects.filter(
# code=first_level).values('user')
if not check_with_same_level:
print("pumasok")
if no_action.user.code == user_id_number:
awaiting_included.append(query.form_code)
break
# print(first_user.user)
# if x == user_id_number:
# awaiting_included.append(query.form_code)
return_queryset = return_queryset.filter(form_code__in=awaiting_included)
return_queryset = return_queryset.filter(
form_code__in=awaiting_included)
except Exception as e:
pass
......
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