Commit 9712c84b authored by John Red Medrano's avatar John Red Medrano

Merge branch 'RMSv2' of http://42.61.118.105:7990/scm/rms/api-main-service into red-develop

parents 8cdc401f 46ad7d25
...@@ -196,7 +196,6 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -196,7 +196,6 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
self.queryset = self.queryset.order_by('-created') self.queryset = self.queryset.order_by('-created')
self.queryset = QuerySetHelper.Sort(self) self.queryset = QuerySetHelper.Sort(self)
# self.queryset = QuerySetHelper.Filter(self)
return super(ChangeRequestFormsViewset, self).list(request) return super(ChangeRequestFormsViewset, self).list(request)
...@@ -275,11 +274,18 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -275,11 +274,18 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
) )
def re_route(self, request, *args, **kwargs): def re_route(self, request, *args, **kwargs):
form_code = kwargs['form_code']
# generate batchno history # generate batchno history
batchno = get_max_batchno("batch") batchno = get_max_batchno("batch")
partial = kwargs.pop('partial', False)
instance = self.get_object()
form_code = kwargs['form_code']
body_data = request.data
# get old data # get old data
old_instance = models.ChangeRequestFormHeader.objects.filter( old_instance = models.ChangeRequestFormHeader.objects.filter(
form_code=form_code).values() form_code=form_code).values()
......
...@@ -2,6 +2,9 @@ from app.entities import models ...@@ -2,6 +2,9 @@ from app.entities import models
from rest_framework import serializers from rest_framework import serializers
from django.db.models import Q from django.db.models import Q
from drf_writable_nested import WritableNestedModelSerializer from drf_writable_nested import WritableNestedModelSerializer
from app.applicationlayer.cms.utils_cr import (get_account_details,
get_dept_details,
get_companies_details)
class ChangeRequestTemplateApproversSerializer( class ChangeRequestTemplateApproversSerializer(
...@@ -52,6 +55,39 @@ class ChangeRequestTemplatesSerializer( ...@@ -52,6 +55,39 @@ class ChangeRequestTemplatesSerializer(
tmp_details = ChangeRequestTemplateDetailsSerializer( tmp_details = ChangeRequestTemplateDetailsSerializer(
many=True, read_only=True) many=True, read_only=True)
def to_representation(self, instance):
ret = super().to_representation(instance)
try:
company = instance.requested_to_company.code
department = instance.requested_to_department.code
point_of_contact = instance.requested_to_user.code
created_by = instance.created_by_user.code
company = get_companies_details(company)
company = company.values_list('name', flat=True)[0]
department = get_dept_details(department)
department = department.values_list('name', flat=True)[0]
point_of_contact = get_account_details(point_of_contact)
point_of_contact = point_of_contact.values_list('name', flat=True)[0]
created_by = get_account_details(created_by)
created_by = created_by.values_list('name', flat=True)[0]
ret['company'] = company
ret['department'] = department
ret['point_of_contact'] = point_of_contact
ret['created_by'] = created_by
return ret
except Exception as e:
ret['company'] = "none"
ret['department'] = "none"
ret['point_of_contact'] = "none"
ret['created_by'] = "none"
return ret
class Meta: class Meta:
model = models.ChangeRequestTemplateHeader model = models.ChangeRequestTemplateHeader
# fields = '__all__' # fields = '__all__'
...@@ -60,7 +96,8 @@ class ChangeRequestTemplatesSerializer( ...@@ -60,7 +96,8 @@ class ChangeRequestTemplatesSerializer(
'requested_to_priority', 'description', 'created', 'requested_to_priority', 'description', 'created',
'requested_to_template_id', 'requested_to_company', 'requested_to_template_id', 'requested_to_company',
'requested_to_department', 'requested_to_user', 'requested_to_department', 'requested_to_user',
'created_by_user', 'created_by_department', 'tmp_approvers', 'created_by_user', 'created_by_department',
'tmp_stakes', 'tmp_attachments', 'tmp_details') 'tmp_approvers', 'tmp_stakes', 'tmp_attachments',
'tmp_details')
read_only_fields = ['created', 'template_no'] read_only_fields = ['created', 'template_no']
\ No newline at end of file
...@@ -126,7 +126,7 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet): ...@@ -126,7 +126,7 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet):
message = status_message_response( message = status_message_response(
200, 200,
'success', 'success',
'list of Templates found', 'List of Templates found',
serializer.data serializer.data
) )
...@@ -423,46 +423,132 @@ class ChangeRequestTemplateApproversViewset(meviewsets.ModelViewSet): ...@@ -423,46 +423,132 @@ class ChangeRequestTemplateApproversViewset(meviewsets.ModelViewSet):
queryset = models.ChangeRequestTemplateApprovers.objects.all() queryset = models.ChangeRequestTemplateApprovers.objects.all()
serializer_class = serializers.ChangeRequestTemplateApproversSerializer serializer_class = serializers.ChangeRequestTemplateApproversSerializer
pagination_class = paginators.SimplePageNumberPagination pagination_class = CustomPagination
lookup_field = "code" lookup_field = "code"
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
self.queryset = self.queryset.order_by('-created')
self.queryset = QuerySetHelper.Sort(self) self.queryset = QuerySetHelper.Sort(self)
return super(ChangeRequestTemplateApproversViewset, self).list(request)
page = self.paginate_queryset(self.queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
message = status_message_response(
200,
'success',
'List of Templates Approvers 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 ChangeRequestTemplateAttachmentsViewset(meviewsets.ModelViewSet): class ChangeRequestTemplateAttachmentsViewset(meviewsets.ModelViewSet):
queryset = models.ChangeRequestTemplateAttachments.objects.all() queryset = models.ChangeRequestTemplateAttachments.objects.all()
serializer_class = serializers.ChangeRequestTemplateAttachmentsSerializer serializer_class = serializers.ChangeRequestTemplateAttachmentsSerializer
pagination_class = paginators.SimplePageNumberPagination pagination_class = CustomPagination
lookup_field = "code" lookup_field = "code"
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
self.queryset = self.queryset.order_by('-created')
self.queryset = QuerySetHelper.Sort(self) self.queryset = QuerySetHelper.Sort(self)
return super(
ChangeRequestTemplateAttachmentsViewset, self page = self.paginate_queryset(self.queryset)
).list(request)
if page is not None:
serializer = self.get_serializer(page, many=True)
message = status_message_response(
200,
'success',
'List of Templates Attachments 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 ChangeRequestTemplateStakeHoldersViewset(meviewsets.ModelViewSet): class ChangeRequestTemplateStakeHoldersViewset(meviewsets.ModelViewSet):
queryset = models.ChangeRequestTemplateStakeHolders.objects.all() queryset = models.ChangeRequestTemplateStakeHolders.objects.all()
serializer_class = serializers.ChangeRequestTemplateStakeHoldersSerializer serializer_class = serializers.ChangeRequestTemplateStakeHoldersSerializer
pagination_class = paginators.SimplePageNumberPagination pagination_class = CustomPagination
lookup_field = "code" lookup_field = "code"
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
self.queryset = self.queryset.order_by('-created')
self.queryset = QuerySetHelper.Sort(self) self.queryset = QuerySetHelper.Sort(self)
return super(ChangeRequestTemplateStakeHoldersViewset, self).list(request)
page = self.paginate_queryset(self.queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
message = status_message_response(
200,
'success',
'List of Templates Stakeholders 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 ChangeRequestTemplateDetailsViewset(meviewsets.ModelViewSet): class ChangeRequestTemplateDetailsViewset(meviewsets.ModelViewSet):
queryset = models.ChangeRequestTemplateDetails.objects.all() queryset = models.ChangeRequestTemplateDetails.objects.all()
serializer_class = serializers.ChangeRequestTemplateDetailsSerializer serializer_class = serializers.ChangeRequestTemplateDetailsSerializer
pagination_class = paginators.SimplePageNumberPagination pagination_class = CustomPagination
lookup_field = "code" lookup_field = "code"
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
self.queryset = self.queryset.order_by('-created')
self.queryset = QuerySetHelper.Sort(self) self.queryset = QuerySetHelper.Sort(self)
return super(ChangeRequestTemplateDetailsViewset, self).list(request)
page = self.paginate_queryset(self.queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
message = status_message_response(
200,
'success',
'List of Templates Details 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
)
...@@ -14,7 +14,8 @@ from django.http import Http404 ...@@ -14,7 +14,8 @@ from django.http import Http404
from django.db.models import Q from django.db.models import Q
from app.applicationlayer.cms.utils_cr import ( from app.applicationlayer.cms.utils_cr import (
number_generator, crhistory_save, entity_log_bulk, crhistory_log_bulk_delete number_generator, crhistory_save, entity_log_bulk,
crhistory_log_bulk_delete
) )
from django.forms.models import model_to_dict from django.forms.models import model_to_dict
from app.entities import enums, models from app.entities import enums, models
......
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