Exemple #1
0
    def create(self, request, *args, **kwargs):
        """
        Insert a new workflow

        """
        request.data[u'owner'] = request.user.id

        d = copy.deepcopy(request.data)

        request.data.pop('tasks')
        # first round without tasks, to get reference to workflow instance
        serializer, headers = create_serializer(self, request)

        # create tasks...
        wf = serializer.save()

        d = self.__linkTasks(d, wf)

        print d

        serializer = WorkflowSerializer(instance=wf, data=d, partial=True)
        serializer.is_valid(raise_exception=True)
        # add tasks dependencies
        serializer.save()

        History.new(event=History.ADD,
                    actor=request.user,
                    object=serializer.instance)

        return Response(serializer.data,
                        status=status.HTTP_201_CREATED,
                        headers=headers)
Exemple #2
0
    def create(self, request, *args, **kwargs):
        """
        Add a result as a response to a task

        """
        serializer, headers = create_serializer(self, request)

        History.new(event=History.ADD, actor=request.user, object=serializer.instance)

        return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
Exemple #3
0
    def create(self, request, *args, **kwargs):
        """
        Insert a new result

        """
        request.data[u'user'] = request.user.id

        serializer, headers = create_serializer(self, request)

        #History.new(event=History.ADD, actor=request.user, object=serializer.instance)

        return Response(serializer.data, status=status.HTTP_201_CREATED)
Exemple #4
0
    def create(self, request, *args, **kwargs):
        """
        Insert a new request

        """
        request.data[u'user'] = request.user.id

        serializer, headers = create_serializer(self, request)
        process = serializer.instance.processtaskuser.processtask.process
        process_owner = process.executioner

        History.new(event=History.ADD,
                    actor=request.user,
                    object=serializer.instance,
                    authorized=[process_owner],
                    related=[process])

        return Response(serializer.data,
                        status=status.HTTP_201_CREATED,
                        headers=headers)