Commit 659fd6e1 authored by Gladys Forte's avatar Gladys Forte

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

parents c55f7f2b 7bda9f15
from rest_framework import serializers
from app.entities import models
from django.forms.models import model_to_dict
class ChangeRequestTemplateApproversSerializer(
serializers.ModelSerializer
):
def to_representation(self, instance):
try:
ret = super().to_representation(instance)
user_object = {
"id": instance.user.id,
"name": instance.user.name,
"username": instance.user.username,
"code": instance.user.code,
"email": instance.user.email,
"contact_no": instance.user.contact_no
}
ret['company'] = model_to_dict(instance.user.department.company)
ret['department'] = model_to_dict(instance.user.department)
ret['user'] = user_object
return ret
except Exception as e:
ret['company'] = "none"
ret['department'] = "none"
ret['name'] = "none"
return ret
class Meta:
model = models.ChangeRequestTemplateApprovers
fields = '__all__'
read_only_fields = ['created', 'code']
\ No newline at end of file
from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateApprovers
from django.db.models import Q
class ApproverFilter(filters.FilterSet):
class Meta:
model = ChangeRequestTemplateApprovers
fields = '__all__'
from app.entities import models
from rest_framework import viewsets, status
from rest_framework.response import Response
from django_filters import rest_framework as filters
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.filters import SearchFilter, OrderingFilter
from app.applicationlayer.cms.template.approver.table_filters import ApproverFilter
from app.applicationlayer.cms.template.approver import serializers
from app.applicationlayer.utils import (
CustomPagination, status_message_response
)
class ChangeRequestTemplateApproversViewset(viewsets.ModelViewSet):
queryset = models.ChangeRequestTemplateApprovers.objects.all()
serializer_class = serializers.ChangeRequestTemplateApproversSerializer
pagination_class = CustomPagination
lookup_field = "code"
filter_backends = (DjangoFilterBackend, SearchFilter, OrderingFilter)
filterset_class = ApproverFilter
ordering_fields = '__all__'
search_fields = (
'name', 'code',
'department__company__name',
'department__name',
'email', 'contact_no'
)
def list(self, request, *args, **kwargs):
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
)
...@@ -14,11 +14,17 @@ class ChangeRequestTemplateApproversSerializer( ...@@ -14,11 +14,17 @@ class ChangeRequestTemplateApproversSerializer(
def to_representation(self, instance): def to_representation(self, instance):
ret = super().to_representation(instance) ret = super().to_representation(instance)
try: try:
user_object = {
"id": instance.user.id,
"name": instance.user.name,
"username": instance.user.username,
"code": instance.user.code,
"email": instance.user.email,
"contact_no": instance.user.contact_no
}
ret['company'] = model_to_dict(instance.user.department.company) ret['company'] = model_to_dict(instance.user.department.company)
ret['department'] = model_to_dict(instance.user.department) ret['department'] = model_to_dict(instance.user.department)
ret['name'] = instance.user.name ret['user'] = user_object
ret['email'] = instance.user.email
ret['contact_no'] = instance.user.contact_no
return ret return ret
...@@ -26,8 +32,6 @@ class ChangeRequestTemplateApproversSerializer( ...@@ -26,8 +32,6 @@ class ChangeRequestTemplateApproversSerializer(
ret['company'] = "none" ret['company'] = "none"
ret['department'] = "none" ret['department'] = "none"
ret['name'] = "none" ret['name'] = "none"
ret['email'] = "none"
ret['contact_no'] = "none"
return ret return ret
class Meta: class Meta:
......
from rest_framework import serializers
from app.entities import models
from django.forms.models import model_to_dict
class ChangeRequestTemplateStakeholdersSerializer(
serializers.ModelSerializer
):
def to_representation(self, instance):
try:
ret = super().to_representation(instance)
user_object = {
"id": instance.user.id,
"name": instance.user.name,
"username": instance.user.username,
"code": instance.user.code,
"email": instance.user.email,
"contact_no": instance.user.contact_no
}
ret['company'] = model_to_dict(instance.user.department.company)
ret['department'] = model_to_dict(instance.user.department)
ret['user'] = user_object
return ret
except Exception as e:
ret['company'] = "none"
ret['department'] = "none"
ret['name'] = "none"
return ret
class Meta:
model = models.ChangeRequestTemplateStakeHolders
fields = '__all__'
read_only_fields = ['created', 'code']
\ No newline at end of file
from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateStakeHolders
from django.db.models import Q
class StakeHolderFilter(filters.FilterSet):
class Meta:
model = ChangeRequestTemplateStakeHolders
fields = '__all__'
from app.entities import models
from rest_framework import viewsets, status
from rest_framework.response import Response
from django_filters import rest_framework as filters
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.filters import SearchFilter, OrderingFilter
from app.applicationlayer.cms.template.stakeholder.table_filters import StakeHolderFilter
from app.applicationlayer.cms.template.stakeholder import serializers
from app.applicationlayer.utils import (
CustomPagination, status_message_response
)
class ChangeRequestTemplateStakeholdersViewset(viewsets.ModelViewSet):
queryset = models.ChangeRequestTemplateStakeHolders.objects.all()
serializer_class = serializers.ChangeRequestTemplateStakeholdersSerializer
pagination_class = CustomPagination
lookup_field = "code"
filter_backends = (DjangoFilterBackend, SearchFilter, OrderingFilter)
filterset_class = StakeHolderFilter
ordering_fields = '__all__'
search_fields = (
'name', 'code',
'department__company__name',
'department__name',
'email', 'contact_no'
)
def list(self, request, *args, **kwargs):
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
)
...@@ -3,20 +3,25 @@ from rest_framework import routers ...@@ -3,20 +3,25 @@ from rest_framework import routers
from django.conf.urls import url from django.conf.urls import url
from app.applicationlayer.management.notification.views import NotificationsViewset from app.applicationlayer.management.notification.views import NotificationsViewset
from app.applicationlayer.cms.template import views as crtemplate_views from app.applicationlayer.cms.template import views as crtemplate_views
from app.applicationlayer.cms.form import views as crform_views from app.applicationlayer.cms.form import views as crform_views
from app.applicationlayer.cms.allowed_company import views as allowed from app.applicationlayer.cms.allowed_company import views as allowed
from app.applicationlayer.cms.master.company.views import ChangeRequestCompanyViewSet from app.applicationlayer.cms.master.company.views import ChangeRequestCompanyViewSet
from app.applicationlayer.cms.master.department.views import ChangeRequestDepartmentViewSet from app.applicationlayer.cms.master.department.views import ChangeRequestDepartmentViewSet
from app.applicationlayer.cms.template.approver import views as approver
from app.applicationlayer.cms.template.stakeholder import views as stakeholder
router = routers.DefaultRouter() router = routers.DefaultRouter()
router.register(r'notifications', NotificationsViewset) router.register(r'notifications', NotificationsViewset)
router.register(r'template', crtemplate_views.ChangeRequestTemplatesViewset) router.register(r'template', crtemplate_views.ChangeRequestTemplatesViewset)
router.register(r'template-approvers', crtemplate_views.ChangeRequestTemplateApproversViewset) router.register(r'template-approvers', approver.ChangeRequestTemplateApproversViewset)
router.register(r'template-attachments', crtemplate_views.ChangeRequestTemplateAttachmentsViewset) router.register(r'template-attachments', crtemplate_views.ChangeRequestTemplateAttachmentsViewset)
router.register(r'template-stakeholders', crtemplate_views.ChangeRequestTemplateStakeHoldersViewset) router.register(r'template-stakeholders', stakeholder.ChangeRequestTemplateStakeholdersViewset)
router.register(r'template-details', crtemplate_views.ChangeRequestTemplateDetailsViewset) router.register(r'template-details', crtemplate_views.ChangeRequestTemplateDetailsViewset)
router.register(r'form', crform_views.ChangeRequestFormsViewset) router.register(r'form', crform_views.ChangeRequestFormsViewset)
......
...@@ -13,12 +13,12 @@ from rest_framework.response import Response ...@@ -13,12 +13,12 @@ from rest_framework.response import Response
from django.forms.models import model_to_dict from django.forms.models import model_to_dict
from app.entities.models import User, EntityLog, PasswordReset, Application from app.entities.models import User, EntityLog, PasswordReset, Application
from app.helper.decorators import rms, error_safe from app.helper.decorators import rms, error_safe
from django_filters import rest_framework as filters
from django.contrib.auth.hashers import make_password from django.contrib.auth.hashers import make_password
from django_filters import rest_framework as filters
from django_filters.rest_framework import DjangoFilterBackend from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from app.applicationlayer.management.account import serializer
from app.applicationlayer.management.account.table_filters import AccountFilterset from app.applicationlayer.management.account.table_filters import AccountFilterset
from app.applicationlayer.management.account import serializer
from app.applicationlayer.utils import ( from app.applicationlayer.utils import (
CustomPagination, status_message_response, log_save, CustomPagination, status_message_response, log_save,
main_threading main_threading
......
This source diff could not be displayed because it is too large. You can view the blob instead.
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