Commit f5222293 authored by John Red Medrano's avatar John Red Medrano

fixed user list onf template and form, user dont allowed edit when the user has transaction on CMS

parent 46d5f9ef
...@@ -25,7 +25,7 @@ class UserListForm(APIView): ...@@ -25,7 +25,7 @@ class UserListForm(APIView):
user_list = models.User.objects.filter( user_list = models.User.objects.filter(
department=dept department=dept
).exclude(id=1) ).exclude(id=1)
user_list = user_list.exclude(id=request.user.id) # user_list = user_list.exclude(id=request.user.id)
print(user_list.query) print(user_list.query)
page = self.paginate_queryset(user_list) page = self.paginate_queryset(user_list)
......
...@@ -25,7 +25,7 @@ class UserListTemplate(APIView): ...@@ -25,7 +25,7 @@ class UserListTemplate(APIView):
user_list = models.User.objects.filter( user_list = models.User.objects.filter(
department=dept department=dept
).exclude(id=1) ).exclude(id=1)
user_list = user_list.exclude(id=request.user.id) # user_list = user_list.exclude(id=request.user.id)
print(user_list.query) print(user_list.query)
page = self.paginate_queryset(user_list) page = self.paginate_queryset(user_list)
......
...@@ -12,7 +12,8 @@ from django.contrib.auth.hashers import check_password ...@@ -12,7 +12,8 @@ from django.contrib.auth.hashers import check_password
from rest_framework.response import Response from rest_framework.response import Response
from app.applicationlayer.utils import model_to_dict from app.applicationlayer.utils import model_to_dict
from app.entities.models import ( from app.entities.models import (
User, EntityLog, PasswordReset, Application, UserImage User, EntityLog, PasswordReset, Application, UserImage,
ChangeRequestFormHeader, ChangeRequestTemplateHeader
) )
from app.helper.decorators import rms, error_safe from app.helper.decorators import rms, error_safe
from django.contrib.auth.hashers import make_password from django.contrib.auth.hashers import make_password
...@@ -27,6 +28,7 @@ from app.applicationlayer.utils import ( ...@@ -27,6 +28,7 @@ from app.applicationlayer.utils import (
main_threading main_threading
) )
from rest_framework.exceptions import ParseError from rest_framework.exceptions import ParseError
from django.db.models import Q
class UserViewSet(viewsets.ModelViewSet): class UserViewSet(viewsets.ModelViewSet):
...@@ -161,7 +163,35 @@ class UserViewSet(viewsets.ModelViewSet): ...@@ -161,7 +163,35 @@ class UserViewSet(viewsets.ModelViewSet):
partial = kwargs.pop('partial', False) partial = kwargs.pop('partial', False)
instance = self.get_object() instance = self.get_object()
serializer = self.get_serializer(instance, data=request.data, partial=partial)
cms_form = ChangeRequestFormHeader.objects.filter(
Q(frm_approvers__user__code=instance.code) |
Q(frm_stakes__user__code=instance.code) |
Q(requested_by_user__code=instance.code) |
Q(requested_to_user__code=instance.code)
)
cms_template = ChangeRequestTemplateHeader.objects.filter(
Q(created_by_user__code=instance.code) |
Q(requested_to_user__code=instance.code)
)
print(instance.department.code)
print(request.data['department'])
if instance.department.code != request.data['department']:
if cms_form.count() <= 0 or cms_template.count() <= 0:
raise ParseError(
'Cannot delete this record the user has a record on change request it might cause a data error'
)
serializer = self.get_serializer(
instance, data=request.data, partial=partial
)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
old_instance = model_to_dict(instance) old_instance = model_to_dict(instance)
......
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