2424from rest_framework .views import APIView
2525from rest_framework_simplejwt .tokens import RefreshToken
2626
27+ from api .v1 .v1_forms .models import FormApprovalAssignment
28+ from api .v1 .v1_data .models import PendingDataApproval
2729from api .v1 .v1_profile .constants import UserRoleTypes
2830from api .v1 .v1_profile .models import Access , Administration , Levels
2931from api .v1 .v1_users .models import SystemUser , Organisation , \
@@ -493,6 +495,8 @@ def delete(self, request, user_id, version):
493495 if login_user .id == instance .id :
494496 return Response ({'message' : "Could not do self deletion" },
495497 status = status .HTTP_409_CONFLICT )
498+ FormApprovalAssignment .objects .filter (user = instance ).delete ()
499+ PendingDataApproval .objects .filter (user = instance ).delete ()
496500 instance .deleted_at = timezone .now ()
497501 instance .save ()
498502 return Response (status = status .HTTP_204_NO_CONTENT )
@@ -506,6 +510,8 @@ def delete(self, request, user_id, version):
506510 summary = 'To update user' )
507511 def put (self , request , user_id , version ):
508512 if request .data .get ("role" ) == UserRoleTypes .super_admin :
513+ FormApprovalAssignment .objects .filter (user_id = user_id ).delete ()
514+ PendingDataApproval .objects .filter (user_id = user_id ).delete ()
509515 request .data .update ({
510516 "administration" :
511517 Administration .objects .filter (level__level = 0 ).first ().id
0 commit comments