diff --git a/app/assistance/serializers/request.py b/app/assistance/serializers/request.py index 6e79bdf5..9c89ec27 100644 --- a/app/assistance/serializers/request.py +++ b/app/assistance/serializers/request.py @@ -107,7 +107,6 @@ class RequestAddTicketModelSerializer( 'real_start_date', 'real_finish_date', 'opened_by', - 'organization', 'project', 'milestone', 'subscribed_teams', diff --git a/app/assistance/tests/unit/ticket_request/test_ticket_request_viewset.py b/app/assistance/tests/unit/ticket_request/test_ticket_request_viewset.py new file mode 100644 index 00000000..42e987ac --- /dev/null +++ b/app/assistance/tests/unit/ticket_request/test_ticket_request_viewset.py @@ -0,0 +1,13 @@ +from django.test import TestCase + +from core.tests.abstract.test_ticket_viewset import Ticket, TicketViewSetPermissionsAPI + + +class TicketRequestPermissionsAPI( + TicketViewSetPermissionsAPI, + TestCase, +): + + ticket_type = 'request' + + ticket_type_enum = Ticket.TicketType.REQUEST diff --git a/app/core/serializers/ticket.py b/app/core/serializers/ticket.py index 6ae308bc..d7d28710 100644 --- a/app/core/serializers/ticket.py +++ b/app/core/serializers/ticket.py @@ -145,7 +145,7 @@ class TicketModelSerializer(TicketBaseSerializer): try: - self.validated_data['ticket_type'] = self._context['view'].ticket_type_id + self.validated_data['ticket_type'] = self._context['view']._ticket_type_id except: @@ -154,6 +154,15 @@ class TicketModelSerializer(TicketBaseSerializer): raise UnknownTicketType() + if 'view' in self._context: + + if self._context['view'].action == 'create': + + if hasattr(self._context['view'], 'request'): + + self.validated_data['opened_by_id'] = self._context['view'].request.user.id + + return is_valid