Commit e606b94c authored by Gladys Forte's avatar Gladys Forte

views

parent 9d701a28
...@@ -348,6 +348,7 @@ class ChangeRequestTemplatePost(APIView): ...@@ -348,6 +348,7 @@ class ChangeRequestTemplatePost(APIView):
status=status.HTTP_500_INTERNAL_SERVER_ERROR) status=status.HTTP_500_INTERNAL_SERVER_ERROR)
class ChangeRequestFormsViewset(meviewsets.ModelViewSet): class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
lookup_field = 'form_code' lookup_field = 'form_code'
...@@ -617,131 +618,6 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -617,131 +618,6 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
serializer = self.get_serializer(instance) serializer = self.get_serializer(instance)
return Response(serializer.data) return Response(serializer.data)
# @transaction.atomic
def create(self, request, *args, **kwargs):
try:
form_code = request.data['form_code']
created = ''
if not form_code.lower() == 'frm':
header = models.ChangeRequestFormHeader.objects.filter(
Q(form_code=form_code) &
Q(deleted_at=None)
)
instance = header.first()
# if instance.requested_by_user != logged_user(self):
# return Response(
# {"message": "access denied, this form is not for the logged user"},
# status=status.HTTP_406_NOT_ACCEPTABLE
# )
header.update(
deleted_at=datetime.now()
)
# request.data['created'] = instance.created
created = instance.created
# models.ChangeRequestFormStakeHolders.objects.filter(
# form_code=form_code
# ).update(
# deleted_at=datetime.now()
# )
# models.ChangeRequestFormAttachments.objects.filter(
# form_code=form_code
# ).update(
# deleted_at=datetime.now()
# )
# models.ChangeRequestFormDetails.objects.filter(
# form_code=form_code
# ).update(
# deleted_at=datetime.now()
# )
# models.ChangeRequestFormApprovers.objects.filter(
# form_code=form_code
# ).update(
# deleted_at=datetime.now()
# )
series = form_code
if request.data['status'] == 'Pending':
if instance.status == 'Draft':
CR_Prefix = request.data['requested_to_template_id']
if CR_Prefix:
db_counter = models.ChangeRequestFormHeader.objects.filter(
deleted_at=None
).count()
db_counter = db_counter + 2
db_counter = db_counter - 1
request.data['requested_to_template_id'] = number_generator(CR_Prefix, db_counter)
# get all details needed for report
company_desc = get_companies_details(
request.data['requested_to_company']
)
department_desc = get_group_details(
request.data['requested_to_department']
)
requested_desc = get_account_details(
request.data['requested_by_user']
)
request.data['company_desc'] = company_desc['name']
request.data['department_desc'] = department_desc['name']
request.data['requested_desc'] = requested_desc['name']
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
if serializer.is_valid():
x = serializer.save()
if not created == '':
x.created = instance.created
x.save()
else:
x.created = datetime.now()
x.save()
# self.perform_create(serializer)
if form_code.lower() == 'frm':
id = serializer.data['id']
template_id = request.data['requested_to_template_id']
db_counter = models.ChangeRequestFormHeader.objects.filter(
deleted_at=None
).count()
db_counter = db_counter + 2
db_counter = db_counter - 1
series = number_generator("FRM", db_counter)
models.ChangeRequestFormHeader.objects.filter(id=id).update(
set__form_code=series
)
if template_id and request.data['status'] == 'Pending':
models.ChangeRequestFormHeader.objects.filter(id=id).update(
set__requested_to_template_id=number_generator(
template_id, db_counter
)
)
# test = cancel_overdue(request)
headers = self.get_success_headers(serializer.data)
return Response(
data={"code": series},
status=status.HTTP_201_CREATED, headers=headers
)
except Exception as e:
message = {
'code': 500,
'status': 'failed',
'message': 'Request was not able to process' + str(e.__class__)
}
return Response(message,
status=status.HTTP_500_INTERNAL_SERVER_ERROR)
@action(detail=True, @action(detail=True,
methods=['get'], methods=['get'],
url_path='history', url_path='history',
...@@ -775,6 +651,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -775,6 +651,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
return self.get_paginated_response(serializer.data) return self.get_paginated_response(serializer.data)
class ChangeRequestFormPost(APIView): class ChangeRequestFormPost(APIView):
# @transaction.atomic() # @transaction.atomic()
......
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