Commit 3b947b48 authored by John Red Medrano's avatar John Red Medrano

code refactor on class rms at decorators

parent 63a74211
...@@ -25,6 +25,8 @@ class ApplicationViewSet(viewsets.ModelViewSet): ...@@ -25,6 +25,8 @@ class ApplicationViewSet(viewsets.ModelViewSet):
ordering_fields = '__all__' ordering_fields = '__all__'
search_fields = ('name', 'code') search_fields = ('name', 'code')
@decorators.rms.application_crate
@transaction.atomic @transaction.atomic
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
...@@ -79,6 +81,7 @@ class ApplicationViewSet(viewsets.ModelViewSet): ...@@ -79,6 +81,7 @@ class ApplicationViewSet(viewsets.ModelViewSet):
return Response(status=status.HTTP_204_NO_CONTENT) return Response(status=status.HTTP_204_NO_CONTENT)
@decorators.rms.application_crate
@transaction.atomic @transaction.atomic
def update(self, request, *args, **kwargs): def update(self, request, *args, **kwargs):
......
...@@ -79,6 +79,7 @@ class CompanyViewSet(viewsets.ModelViewSet): ...@@ -79,6 +79,7 @@ class CompanyViewSet(viewsets.ModelViewSet):
return Response(status=status.HTTP_204_NO_CONTENT) return Response(status=status.HTTP_204_NO_CONTENT)
@decorators.rms.company_crate
@transaction.atomic @transaction.atomic
def update(self, request, *args, **kwargs): def update(self, request, *args, **kwargs):
......
...@@ -33,6 +33,7 @@ class ModuleViewSet(viewsets.ModelViewSet): ...@@ -33,6 +33,7 @@ class ModuleViewSet(viewsets.ModelViewSet):
'code', 'component', 'sort_id' 'code', 'component', 'sort_id'
) )
@decorators.rms.module_crate
@transaction.atomic @transaction.atomic
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
...@@ -84,7 +85,7 @@ class ModuleViewSet(viewsets.ModelViewSet): ...@@ -84,7 +85,7 @@ class ModuleViewSet(viewsets.ModelViewSet):
serializer = self.get_serializer(queryset, many=True) serializer = self.get_serializer(queryset, many=True)
return Response(serializer.data) return Response(serializer.data)
@decorators.rms.application_crate
@transaction.atomic @transaction.atomic
def update(self, request, *args, **kwargs): def update(self, request, *args, **kwargs):
partial = kwargs.pop('partial', False) partial = kwargs.pop('partial', False)
......
...@@ -51,22 +51,11 @@ class rms: ...@@ -51,22 +51,11 @@ class rms:
def user_type(self): def user_type(self):
return rms.user(self).user_type return rms.user(self).user_type
# @staticmethod def superuser_create(self):
# def user_delete(function): if rms.user_type(self) != rms.enums_super:
# @wraps(function) raise ParseError(rms.access_error)
# def wrapper(self, request, *args, **kwargs): else:
return True
# return function(self, request, *args, **kwargs)
# return wrapper
@staticmethod
def admin_permission(function):
@wraps(function)
def wrapper(self, request, *args, **kwargs):
if rms.user_type(self) == rms.enums_user:
raise ParseError(access_error)
return function(self, request, *args, **kwargs)
return wrapper
@staticmethod @staticmethod
def user_create(function): def user_create(function):
...@@ -102,7 +91,8 @@ class rms: ...@@ -102,7 +91,8 @@ class rms:
rms.access_error rms.access_error
) )
elif rms.user_type(self) == rms.enums_department: elif rms.user_type(self) == rms.enums_department:
if request.user.department.code != rms.user(self).department.code: instance = self.get_object()
if rms.user(self).department.code != instance.department.code:
raise ParseError( raise ParseError(
rms.department_error rms.department_error
) )
...@@ -122,10 +112,7 @@ class rms: ...@@ -122,10 +112,7 @@ class rms:
def company_crate(function): def company_crate(function):
@wraps(function) @wraps(function)
def wrapper(self, request, *args, **kwargs): def wrapper(self, request, *args, **kwargs):
if rms.user_type(self) != rms.enums_super: rms.superuser_create(self)
raise ParseError(
rms.access_error
)
return function(self, request, *args, **kwargs) return function(self, request, *args, **kwargs)
return wrapper return wrapper
...@@ -133,16 +120,7 @@ class rms: ...@@ -133,16 +120,7 @@ class rms:
def department_crate(function): def department_crate(function):
@wraps(function) @wraps(function)
def wrapper(self, request, *args, **kwargs): def wrapper(self, request, *args, **kwargs):
# if rms.user_type(self) == rms.enums_super: rms.superuser_create(self)
# pass
# elif rms.user_type(self) != rms.enums_super or rms.user_type(self) != rms.enums_company:
# raise ParseError(
# rms.access_error
# )
if rms.user_type(self) != rms.enums_super:
raise ParseError(
rms.access_error
)
return function(self, request, *args, **kwargs) return function(self, request, *args, **kwargs)
return wrapper return wrapper
...@@ -150,10 +128,15 @@ class rms: ...@@ -150,10 +128,15 @@ class rms:
def application_crate(function): def application_crate(function):
@wraps(function) @wraps(function)
def wrapper(self, request, *args, **kwargs): def wrapper(self, request, *args, **kwargs):
if rms.user_type(self) != rms.enums_super: rms.superuser_create(self)
raise ParseError( return function(self, request, *args, **kwargs)
rms.access_error return wrapper
)
@staticmethod
def module_crate(function):
@wraps(function)
def wrapper(self, request, *args, **kwargs):
rms.superuser_create(self)
return function(self, request, *args, **kwargs) return function(self, request, *args, **kwargs)
return wrapper return wrapper
......
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