Commit 58f38099 authored by Gladys Forte's avatar Gladys Forte

Merge pull request #784 in RMS/api-main-service from core-dev-gladys to RMSv2

* commit '708e4724':
  remove unused import from CMS folders
  {dev bugfix} clean imports
parents e87e33b8 708e4724
...@@ -2,6 +2,7 @@ from rest_framework import serializers ...@@ -2,6 +2,7 @@ from rest_framework import serializers
from app.entities.models import AllowedCompany from app.entities.models import AllowedCompany
from app.applicationlayer.utils import model_to_dict from app.applicationlayer.utils import model_to_dict
class AllowedCompanySerializer(serializers.ModelSerializer): class AllowedCompanySerializer(serializers.ModelSerializer):
def to_representation(self, instance): def to_representation(self, instance):
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import AllowedCompany from app.entities.models import AllowedCompany
from django.db.models import Q from django.db.models import Q
......
# from rest_framework.views import APIView
from rest_framework import status, viewsets from rest_framework import status, viewsets
from rest_framework.response import Response from rest_framework.response import Response
from app.entities import enums
from app.entities.models import AllowedCompany from app.entities.models import AllowedCompany
from app.applicationlayer.utils import CustomPagination, status_message_response from app.applicationlayer.utils import (CustomPagination,
# from rest_framework.exceptions import ParseError status_message_response)
from django_filters import rest_framework as filters 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
...@@ -20,7 +18,6 @@ from django.db import IntegrityError ...@@ -20,7 +18,6 @@ from django.db import IntegrityError
class AllowedCompanyViewSet(viewsets.ModelViewSet): class AllowedCompanyViewSet(viewsets.ModelViewSet):
# queryset = AllowedCompany.objects.all()
queryset = AllowedCompany.objects.select_related( queryset = AllowedCompany.objects.select_related(
'id_number', 'company_pivot', 'group_pivots' 'id_number', 'company_pivot', 'group_pivots'
).all() ).all()
...@@ -34,8 +31,7 @@ class AllowedCompanyViewSet(viewsets.ModelViewSet): ...@@ -34,8 +31,7 @@ class AllowedCompanyViewSet(viewsets.ModelViewSet):
'id_number__code', 'company_pivot__code', 'id_number__code', 'company_pivot__code',
'group_pivots__code' 'group_pivots__code'
) )
# @decorators.rms.user_list
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset()) queryset = self.filter_queryset(self.get_queryset())
......
...@@ -2,11 +2,8 @@ from app.entities import models ...@@ -2,11 +2,8 @@ from app.entities import models
from datetime import datetime from datetime import datetime
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework import status, views from rest_framework import status, views
from django.db.models import Q from django.db.models import Q
import requests
from django.conf import settings from django.conf import settings
from datetime import timedelta
from app.helper.email_service import sender from app.helper.email_service import sender
from app.applicationlayer.utils import main_threading from app.applicationlayer.utils import main_threading
from rest_framework.permissions import AllowAny from rest_framework.permissions import AllowAny
...@@ -26,7 +23,7 @@ class CancelTriggerAPIView(views.APIView): ...@@ -26,7 +23,7 @@ class CancelTriggerAPIView(views.APIView):
list_of_emails = [] list_of_emails = []
for data in today_mail: for data in today_mail:
if data.is_sent == False and data.form_code.status == 'Pending' and data.frm_approver.is_action == True: if data.is_sent is False and data.form_code.status == 'Pending' and data.frm_approver.is_action is True:
cr_link = f'{CR_FRONT_LINK}/{data.form_code}' cr_link = f'{CR_FRONT_LINK}/{data.form_code}'
...@@ -44,7 +41,7 @@ class CancelTriggerAPIView(views.APIView): ...@@ -44,7 +41,7 @@ class CancelTriggerAPIView(views.APIView):
requestor_recipient = data.form_code.requested_by_user.email requestor_recipient = data.form_code.requested_by_user.email
admin = 'Test' admin = 'Test'
args_requestor = [requestor_name, auto_cancel_date, args_requestor = [requestor_name, auto_cancel_date,
date_submitted_last_approver, approver_pending_action, date_submitted_last_approver, approver_pending_action,
cr_number, cr_name, company_requestedto, cr_number, cr_name, company_requestedto,
department_requestedto, priority_level, form_status, url, department_requestedto, priority_level, form_status, url,
......
...@@ -2,11 +2,8 @@ from app.entities import models ...@@ -2,11 +2,8 @@ from app.entities import models
from datetime import datetime from datetime import datetime
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework import status, views from rest_framework import status, views
from django.db.models import Q from django.db.models import Q
import requests
from django.conf import settings from django.conf import settings
from datetime import timedelta
from app.helper.email_service import sender from app.helper.email_service import sender
from app.applicationlayer.utils import main_threading from app.applicationlayer.utils import main_threading
from rest_framework.permissions import AllowAny from rest_framework.permissions import AllowAny
...@@ -27,7 +24,7 @@ class OverdueTriggerAPIView(views.APIView): ...@@ -27,7 +24,7 @@ class OverdueTriggerAPIView(views.APIView):
list_of_emails = [] list_of_emails = []
for data in today_mail: for data in today_mail:
if data.is_sent == False and (data.form_code.status == 'Pending' or if data.is_sent is False and (data.form_code.status == 'Pending' or
data.form_code.status == 'Approved' or data.form_code.status == 'Approved' or
data.form_code.status == 'Rejected'): data.form_code.status == 'Rejected'):
......
...@@ -2,9 +2,7 @@ from app.entities import models ...@@ -2,9 +2,7 @@ from app.entities import models
from datetime import datetime from datetime import datetime
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework import status, views from rest_framework import status, views
from django.db.models import Q from django.db.models import Q
import requests
from django.conf import settings from django.conf import settings
from datetime import timedelta from datetime import timedelta
from app.helper.email_service import sender from app.helper.email_service import sender
...@@ -29,7 +27,7 @@ class ReminderTriggerAPIView(views.APIView): ...@@ -29,7 +27,7 @@ class ReminderTriggerAPIView(views.APIView):
list_of_emails = [] list_of_emails = []
for data in today_mail: for data in today_mail:
if data.frm_approver.is_action == True and data.form_code.status == 'Pending': if data.frm_approver.is_action is True and data.form_code.status == 'Pending':
# common details # common details
cr_link = f'{CR_FRONT_LINK}/{data.frm_approver.form_code}' cr_link = f'{CR_FRONT_LINK}/{data.frm_approver.form_code}'
......
from app.entities import models from app.entities import models
from rest_framework import serializers from rest_framework import serializers
from app.applicationlayer.utils import model_to_dict
class ChangeRequestFormApproversSerializer( class ChangeRequestFormApproversSerializer(
......
...@@ -12,8 +12,7 @@ from app.applicationlayer.utils import ( ...@@ -12,8 +12,7 @@ from app.applicationlayer.utils import (
class ChangeRequestFormApproversViewset(viewsets.ModelViewSet): class ChangeRequestFormApproversViewset(viewsets.ModelViewSet):
# queryset = models.ChangeRequestFormApprovers.objects.all().order_by('level')
queryset = models.ChangeRequestFormApprovers.objects.select_related( queryset = models.ChangeRequestFormApprovers.objects.select_related(
'form_code', 'tmp_approver' 'form_code', 'tmp_approver'
).all().order_by('level') ).all().order_by('level')
......
from app.entities import models from app.entities import models
from rest_framework import serializers from rest_framework import serializers
from app.applicationlayer.utils import model_to_dict
class ChangeRequestFormAttachmentsSerializer( class ChangeRequestFormAttachmentsSerializer(
......
from app.entities import models from app.entities import models
from rest_framework import serializers from rest_framework import serializers
from app.applicationlayer.utils import model_to_dict
class ChangeRequestFormDetailsSerializer( class ChangeRequestFormDetailsSerializer(
......
...@@ -12,8 +12,7 @@ from app.applicationlayer.utils import ( ...@@ -12,8 +12,7 @@ from app.applicationlayer.utils import (
class ChangeRequestFormDetailsViewset(viewsets.ModelViewSet): class ChangeRequestFormDetailsViewset(viewsets.ModelViewSet):
# queryset = models.ChangeRequestFormDetails.objects.all()
queryset = models.ChangeRequestFormDetails.objects.select_related( queryset = models.ChangeRequestFormDetails.objects.select_related(
'form_code' 'form_code'
).all() ).all()
......
from rest_framework import viewsets as meviewsets
from rest_framework.viewsets import ReadOnlyModelViewSet from rest_framework.viewsets import ReadOnlyModelViewSet
from drf_renderer_xlsx.mixins import XLSXFileMixin from drf_renderer_xlsx.mixins import XLSXFileMixin
from drf_renderer_xlsx.renderers import XLSXRenderer from drf_renderer_xlsx.renderers import XLSXRenderer
from app.entities.models import ( from app.entities.models import (
ChangeRequestFormHeader, ChangeRequestFormHeader,
ChangeRequestFormApprovers,
ChangeRequestFormStakeHolders,
AllowedCompany AllowedCompany
) )
# from app.applicationlayer.form_listing_ import headers
from app.applicationlayer.cms.form.download.serializers import headers from app.applicationlayer.cms.form.download.serializers import headers
from django.db.models import CharField, Value
from django.db.models import Q from django.db.models import Q
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework.permissions import AllowAny from rest_framework.permissions import AllowAny
# from cms.applicationlayer.utilities import logged_user
class DownloadRequest(XLSXFileMixin, ReadOnlyModelViewSet): class DownloadRequest(XLSXFileMixin, ReadOnlyModelViewSet):
......
import configparser import configparser
import shutil import shutil
import os import os
from django.shortcuts import render
from rest_framework import viewsets from rest_framework import viewsets
from rest_framework.views import APIView from rest_framework.views import APIView
from app.entities import models from app.entities import models
from datetime import datetime from datetime import datetime
from datetime import timedelta
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework import status, views from rest_framework import status, views
from rest_framework.decorators import action from rest_framework.decorators import action
from django.http import Http404
from django.db.models import Q from django.db.models import Q
import requests
from django.conf import settings from django.conf import settings
from rest_framework.exceptions import ValidationError from rest_framework.exceptions import ValidationError
from django.db import transaction, IntegrityError, connection from django.db import transaction
from app.applicationlayer.utils import (QuerySetHelper, from app.applicationlayer.utils import (status_message_response,
status_message_response, send_broadcast_message,
send_broadcast_message) CustomPagination,
model_to_dict,
main_threading,
error_message)
from app.businesslayer.changerequest import (change_request, from app.businesslayer.changerequest import (change_request,
change_request_template) change_request_template)
from app.applicationlayer.cms.utils_cr import (number_generator, from app.applicationlayer.cms.utils_cr import (next_approver_email,
send_mail_requestor,
next_approver_email,
crhistory_save, crhistory_save,
send_mail_vendor,
get_max_batchno, get_max_batchno,
generate_template_id, generate_template_id,
crhistory_create_save, crhistory_create_save,
entity_log_bulk, entity_log_bulk,
reminder_trigger_save, reminder_trigger_save,
overdue_trigger_save, overdue_trigger_save,
reset_autoemail_tables,
delete_master_attachment_file) delete_master_attachment_file)
from app.entities import enums from app.entities import enums
from app.applicationlayer.utils import model_to_dict
import json import json
from django.shortcuts import get_object_or_404 from django.shortcuts import get_object_or_404
from django.db.models import Min from django.db.models import Min
from app.applicationlayer.utils import (CustomPagination,
status_message_response)
from rest_framework.exceptions import ParseError
from app.businesslayer.changerequest.change_request import ( from app.businesslayer.changerequest.change_request import (
form_add_edit_delete form_add_edit_delete
) )
...@@ -66,8 +58,6 @@ from app.applicationlayer.cms.form.header.table_filters import HeaderFilterSet ...@@ -66,8 +58,6 @@ from app.applicationlayer.cms.form.header.table_filters import HeaderFilterSet
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django_filters.rest_framework import DjangoFilterBackend from django_filters.rest_framework import DjangoFilterBackend
import json
from app.applicationlayer.utils import main_threading
from django.core.files.base import ContentFile from django.core.files.base import ContentFile
from django.conf import settings from django.conf import settings
...@@ -76,9 +66,6 @@ from django.http import HttpResponse ...@@ -76,9 +66,6 @@ from django.http import HttpResponse
from xhtml2pdf import pisa from xhtml2pdf import pisa
from app.helper.decorators import * from app.helper.decorators import *
from app.applicationlayer.utils import error_message
config = configparser.ConfigParser() config = configparser.ConfigParser()
config_file = os.path.join('./', 'env.ini') config_file = os.path.join('./', 'env.ini')
config.read(config_file) config.read(config_file)
...@@ -223,22 +210,6 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet): ...@@ -223,22 +210,6 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
overdue_filtered = change_request.filter_overdue(self.queryset) overdue_filtered = change_request.filter_overdue(self.queryset)
overdue = overdue_filtered.count() overdue = overdue_filtered.count()
# server side computations
# status_total = pending + approved + rejected + cancelled + completed
# close = rejected + cancelled + completed
# opened = pending + approved
# open_percent = round((opened/status_total) * 100)
# close_percent = round((close/status_total) * 100)
# priority_total = high + normal
# high_percent = round((high/priority_total) * 100)
# normal_percent = round((normal/priority_total) * 100)
message = { message = {
'account_no': id_number, 'account_no': id_number,
...@@ -251,10 +222,6 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet): ...@@ -251,10 +222,6 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
'normal': normal, 'normal': normal,
'awaiting': awaiting, 'awaiting': awaiting,
'overdue': overdue, 'overdue': overdue,
# 'open_percent': open_percent,
# 'close_percent': close_percent,
# 'high_percent': high_percent,
# 'normal_percent': normal_percent,
'code': 200, 'code': 200,
'status': 'success', 'status': 'success',
'message': 'Dashboard Summary' 'message': 'Dashboard Summary'
...@@ -579,13 +546,10 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet): ...@@ -579,13 +546,10 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
# shutil.copy(full_file_name, dest) # shutil.copy(full_file_name, dest)
for file_name in attch: for file_name in attch:
print(file_name['file_upload__url'])
a = os.path.join(settings.MEDIA_ROOT, file_name['file_upload__url']) a = os.path.join(settings.MEDIA_ROOT, file_name['file_upload__url'])
# full_file_name = os.path.join(my_folder, file_name['file_upload__url']) # full_file_name = os.path.join(my_folder, file_name['file_upload__url'])
# print(full_file_name) # print(full_file_name)
if os.path.isfile(a): if os.path.isfile(a):
print(a)
# print(type(a))
b = open(a, 'r') b = open(a, 'r')
shutil.copy(b, my_folder) shutil.copy(b, my_folder)
else: else:
......
...@@ -12,7 +12,7 @@ from app.applicationlayer.utils import ( ...@@ -12,7 +12,7 @@ from app.applicationlayer.utils import (
class ChangeRequestFormStakeHoldersViewset(viewsets.ModelViewSet): class ChangeRequestFormStakeHoldersViewset(viewsets.ModelViewSet):
# queryset = models.ChangeRequestFormStakeHolders.objects.all()
queryset = models.ChangeRequestFormStakeHolders.objects.select_related( queryset = models.ChangeRequestFormStakeHolders.objects.select_related(
'form_code' 'form_code'
).all() ).all()
......
...@@ -4,7 +4,6 @@ from app.applicationlayer.utils import (CustomPagination, ...@@ -4,7 +4,6 @@ from app.applicationlayer.utils import (CustomPagination,
from app.applicationlayer.management.account.serializer import ChangeRequestList from app.applicationlayer.management.account.serializer import ChangeRequestList
from app.entities import models from app.entities import models
from rest_framework.response import Response from rest_framework.response import Response
from django.db.models import Q
from rest_framework import status from rest_framework import status
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import Company from app.entities.models import Company
from django.db.models import Q from django.db.models import Q
......
from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from rest_framework.filters import SearchFilter, OrderingFilter
from app.entities.models import ( from app.entities.models import (
Company, AllowedCompany, Company, AllowedCompany,
ChangeRequestFormHeader, AllowedCompany ChangeRequestFormHeader
) )
from rest_framework import viewsets, status from rest_framework import viewsets
from app.businesslayer.company.serializer import AdminCompanySerializer from app.businesslayer.company.serializer import AdminCompanySerializer
from app.applicationlayer.utils import CustomPagination, status_message_response from app.applicationlayer.utils import (CustomPagination,
status_message_response)
from django_filters.rest_framework import DjangoFilterBackend from django_filters.rest_framework import DjangoFilterBackend
from app.applicationlayer.management.company import serializer from app.applicationlayer.management.company import serializer
from app.applicationlayer.cms.master.form.company.table_filters import ( from app.applicationlayer.cms.master.form.company.table_filters import (
ChangeRequestCompanyFilterSet ChangeRequestCompanyFilterSet
) )
from app.helper.decorators import rms
from rest_framework.response import Response from rest_framework.response import Response
from django.db.models import Q from django.db.models import Q
from rest_framework.decorators import action from rest_framework.decorators import action
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import Department from app.entities.models import Department
from django.db.models import Q from django.db.models import Q
......
from rest_framework import viewsets, status from rest_framework import viewsets
from rest_framework.response import Response from rest_framework.response import Response
from app.applicationlayer.utils import model_to_dict
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from app.entities.models import Department, AllowedCompany, Delegation from app.entities.models import Department, AllowedCompany
from app.applicationlayer.utils import ( from app.applicationlayer.utils import (
CustomPagination, status_message_response CustomPagination, status_message_response
) )
from django_filters.rest_framework import DjangoFilterBackend from django_filters.rest_framework import DjangoFilterBackend
from app.applicationlayer.master.department import serializer from app.applicationlayer.master.department import serializer
from app.applicationlayer.cms.master.form.department.table_filters import ( from app.applicationlayer.cms.master.form.department.table_filters import (
ChangeRequestDepartmentFilterSet ChangeRequestDepartmentFilterSet
) )
from app.helper.decorators import rms
from django.db.models import Q from django.db.models import Q
from rest_framework.exceptions import ParseError
class ChangeRequestDepartmentFormViewSet(viewsets.ModelViewSet): class ChangeRequestDepartmentFormViewSet(viewsets.ModelViewSet):
......
...@@ -3,10 +3,7 @@ from app.applicationlayer.utils import (CustomPagination, ...@@ -3,10 +3,7 @@ from app.applicationlayer.utils import (CustomPagination,
status_message_response) status_message_response)
from app.applicationlayer.management.account.serializer import ChangeRequestList from app.applicationlayer.management.account.serializer import ChangeRequestList
from app.entities import models from app.entities import models
from rest_framework.response import Response from django.db.models import Q
from django.db.models import Q, F
from rest_framework import status
# from django.db.models import F
class UserListTemplate(APIView): class UserListTemplate(APIView):
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import Company from app.entities.models import Company
from django.db.models import Q from django.db.models import Q
......
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from app.entities.models import Company, AllowedCompany from app.entities.models import Company, AllowedCompany
from rest_framework import viewsets, status from rest_framework import viewsets
from app.businesslayer.company.serializer import AdminCompanySerializer from app.businesslayer.company.serializer import AdminCompanySerializer
from app.applicationlayer.utils import CustomPagination, status_message_response from app.applicationlayer.utils import CustomPagination, status_message_response
from django_filters.rest_framework import DjangoFilterBackend from django_filters.rest_framework import DjangoFilterBackend
...@@ -9,7 +9,6 @@ from app.applicationlayer.management.company import serializer ...@@ -9,7 +9,6 @@ from app.applicationlayer.management.company import serializer
from app.applicationlayer.cms.master.template.company.table_filters import ( from app.applicationlayer.cms.master.template.company.table_filters import (
ChangeRequestCompanyFilterSet ChangeRequestCompanyFilterSet
) )
from app.helper.decorators import rms
from rest_framework.response import Response from rest_framework.response import Response
from django.db.models import Q from django.db.models import Q
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import User from app.entities.models import User
from django.db.models import Q
class DefaultApproverFilterSet(filters.FilterSet): class DefaultApproverFilterSet(filters.FilterSet):
......
from rest_framework import viewsets, status from rest_framework import viewsets
from rest_framework.response import Response from rest_framework.response import Response
from app.applicationlayer.utils import model_to_dict
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from app.entities.models import User, AllowedCompany from app.entities.models import User, AllowedCompany
...@@ -13,9 +12,7 @@ from app.applicationlayer.cms.master.template.default_approver import serializer ...@@ -13,9 +12,7 @@ from app.applicationlayer.cms.master.template.default_approver import serializer
from app.applicationlayer.cms.master.template.default_approver.table_filter import ( from app.applicationlayer.cms.master.template.default_approver.table_filter import (
DefaultApproverFilterSet DefaultApproverFilterSet
) )
from app.helper.decorators import rms
from django.db.models import Q from django.db.models import Q
from rest_framework.exceptions import ParseError
class DefaultApproverViewSet(viewsets.ModelViewSet): class DefaultApproverViewSet(viewsets.ModelViewSet):
......
...@@ -9,7 +9,7 @@ class AdminDepartmentSerializer(serializers.ModelSerializer): ...@@ -9,7 +9,7 @@ class AdminDepartmentSerializer(serializers.ModelSerializer):
ret = super().to_representation(instance) ret = super().to_representation(instance)
ret['company'] = model_to_dict(instance.company) ret['company'] = model_to_dict(instance.company)
return ret return ret
class Meta: class Meta:
model = Department model = Department
fields = '__all__' fields = '__all__'
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import Department from app.entities.models import Department
from django.db.models import Q from django.db.models import Q
......
from rest_framework import viewsets, status from rest_framework import viewsets
from rest_framework.response import Response from rest_framework.response import Response
from app.applicationlayer.utils import model_to_dict
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from app.entities.models import Department, AllowedCompany from app.entities.models import Department, AllowedCompany
...@@ -13,9 +12,7 @@ from app.applicationlayer.master.department import serializer ...@@ -13,9 +12,7 @@ from app.applicationlayer.master.department import serializer
from app.applicationlayer.cms.master.template.department.table_filters import ( from app.applicationlayer.cms.master.template.department.table_filters import (
ChangeRequestDepartmentFilterSet ChangeRequestDepartmentFilterSet
) )
from app.helper.decorators import rms
from django.db.models import Q from django.db.models import Q
from rest_framework.exceptions import ParseError
class ChangeRequestDepartmentTemplateViewSet(viewsets.ModelViewSet): class ChangeRequestDepartmentTemplateViewSet(viewsets.ModelViewSet):
......
from rest_framework import viewsets, status from rest_framework import viewsets
from rest_framework.response import Response from rest_framework.response import Response
from app.entities.models import ChangeRequestTemplateHeader, AllowedCompany from app.entities.models import ChangeRequestTemplateHeader, AllowedCompany
from app.applicationlayer.cms.master.template_list.serializers import ChangeRequestTemplatesSerializer from app.applicationlayer.cms.master.template_list.serializers import ChangeRequestTemplatesSerializer
......
from rest_framework import serializers from rest_framework import serializers
from app.entities import models from app.entities import models
from app.applicationlayer.utils import model_to_dict
class ChangeRequestTemplateApproversSerializer( class ChangeRequestTemplateApproversSerializer(
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateApprovers from app.entities.models import ChangeRequestTemplateApprovers
from django.db.models import Q
class ApproverFilter(filters.FilterSet): class ApproverFilter(filters.FilterSet):
......
from rest_framework import serializers from rest_framework import serializers
from app.entities import models from app.entities import models
from app.applicationlayer.utils import model_to_dict
class ChangeRequestTemplateAttachmentsSerializer( class ChangeRequestTemplateAttachmentsSerializer(
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateAttachments from app.entities.models import ChangeRequestTemplateAttachments
from django.db.models import Q
class AttachmentFilter(filters.FilterSet): class AttachmentFilter(filters.FilterSet):
......
from rest_framework import serializers from rest_framework import serializers
from app.entities import models from app.entities import models
from app.applicationlayer.utils import model_to_dict
class ChangeRequestTemplateDetailsSerializer( class ChangeRequestTemplateDetailsSerializer(
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateDetails from app.entities.models import ChangeRequestTemplateDetails
from django.db.models import Q
class DetailsFilter(filters.FilterSet): class DetailsFilter(filters.FilterSet):
......
from app.entities import models from app.entities import models
from rest_framework import serializers from rest_framework import serializers
from django.db.models import Q
from django.conf import settings
from app.applicationlayer.utils import model_to_dict
from drf_writable_nested import WritableNestedModelSerializer
from app.applicationlayer.cms.utils_cr import (get_account_details,
get_dept_details,
get_companies_details)
from app.applicationlayer.cms.template.approver.serializers import ChangeRequestTemplateApproversSerializer from app.applicationlayer.cms.template.approver.serializers import ChangeRequestTemplateApproversSerializer
from app.applicationlayer.cms.template.stakeholder.serializers import ChangeRequestTemplateStakeHoldersSerializer from app.applicationlayer.cms.template.stakeholder.serializers import ChangeRequestTemplateStakeHoldersSerializer
from app.applicationlayer.cms.template.attachment.serializers import ChangeRequestTemplateAttachmentsSerializer from app.applicationlayer.cms.template.attachment.serializers import ChangeRequestTemplateAttachmentsSerializer
from app.applicationlayer.cms.template.details.serializers import ChangeRequestTemplateDetailsSerializer from app.applicationlayer.cms.template.details.serializers import ChangeRequestTemplateDetailsSerializer
from django.conf import settings
from rest_framework.exceptions import ValidationError
from app.applicationlayer.cms.utils_cr import (
BadRequestException
)
class ChangeRequestTemplatesSerializer( class ChangeRequestTemplatesSerializer(
serializers.ModelSerializer serializers.ModelSerializer
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateHeader from app.entities.models import ChangeRequestTemplateHeader
from django.db.models import Q
class HeaderFilterSet(filters.FilterSet): class HeaderFilterSet(filters.FilterSet):
......
from rest_framework.views import APIView from rest_framework.views import APIView
from rest_framework import viewsets from rest_framework import viewsets
from app.entities import models from app.entities import enums, models
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework import status, views from rest_framework import status, views
...@@ -11,24 +11,18 @@ from django.db.models import Q ...@@ -11,24 +11,18 @@ from django.db.models import Q
from rest_framework.exceptions import ValidationError from rest_framework.exceptions import ValidationError
from django.db import transaction from django.db import transaction
from app.applicationlayer.utils import (CustomPagination, from app.applicationlayer.utils import (CustomPagination,
status_message_response) status_message_response,
log_save,
model_to_dict)
from app.applicationlayer.cms.utils_cr import ( from app.applicationlayer.cms.utils_cr import (
entity_log_bulk, entity_log_bulk,
delete_master_attachment_file delete_master_attachment_file
) )
from app.applicationlayer.utils import model_to_dict
from app.entities import enums, models
from django.db.models import Q
from app.applicationlayer.utils import log_save, CustomPagination
from rest_framework.exceptions import ParseError
from app.businesslayer.changerequest.change_request_template import ( from app.businesslayer.changerequest.change_request_template import (
tmp_add_edit_delete, tmp_add_edit_delete
validation_approver_same_level,
validation_existing_vendor_requestor
) )
from app.applicationlayer.management.account.serializer import ChangeRequestList
from app.applicationlayer.cms.template.approver.serializers import ChangeRequestTemplateApproversSerializer from app.applicationlayer.cms.template.approver.serializers import ChangeRequestTemplateApproversSerializer
from app.applicationlayer.cms.template.stakeholder.serializers import ChangeRequestTemplateStakeHoldersSerializer from app.applicationlayer.cms.template.stakeholder.serializers import ChangeRequestTemplateStakeHoldersSerializer
from app.applicationlayer.cms.template.details.serializers import ChangeRequestTemplateDetailsSerializer from app.applicationlayer.cms.template.details.serializers import ChangeRequestTemplateDetailsSerializer
...@@ -38,11 +32,6 @@ from app.applicationlayer.cms.template.header.serializers import ChangeRequestTe ...@@ -38,11 +32,6 @@ from app.applicationlayer.cms.template.header.serializers import ChangeRequestTe
from app.applicationlayer.cms.template.header.table_filters import HeaderFilterSet from app.applicationlayer.cms.template.header.table_filters import HeaderFilterSet
from app.helper.decorators import * from app.helper.decorators import *
# from django_filters import rest_framework as filters
# from rest_framework.filters import SearchFilter, OrderingFilter
# from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.filters import SearchFilter, OrderingFilter from rest_framework.filters import SearchFilter, OrderingFilter
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django_filters.rest_framework import DjangoFilterBackend from django_filters.rest_framework import DjangoFilterBackend
......
from django_filters import rest_framework as filters from django_filters import rest_framework as filters
from django.db.models import Count
from app.entities.models import ChangeRequestTemplateStakeHolders from app.entities.models import ChangeRequestTemplateStakeHolders
from django.db.models import Q
class StakeHolderFilter(filters.FilterSet): class StakeHolderFilter(filters.FilterSet):
......
from datetime import datetime from datetime import datetime
from django.db.models.functions import Lower
from functools import wraps
from django.conf import settings from django.conf import settings
import requests
from app.entities import models from app.entities import models
from datetime import timedelta from datetime import timedelta
from django.db.models import Q from django.db.models import Q
...@@ -11,10 +8,8 @@ from app.helper.email_service import sender ...@@ -11,10 +8,8 @@ from app.helper.email_service import sender
from app.applicationlayer.utils import log_save from app.applicationlayer.utils import log_save
from app.entities import enums from app.entities import enums
from app.applicationlayer.utils import model_to_dict from app.applicationlayer.utils import model_to_dict
from rest_framework.exceptions import ParseError
from django.db import IntegrityError from django.db import IntegrityError
from rest_framework.exceptions import APIException from rest_framework.exceptions import APIException
from django.db.models import Max
import os import os
......
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