From 732a0ef5399badf284413193bfe96a89c7754a57 Mon Sep 17 00:00:00 2001 From: pablohashescobar Date: Tue, 1 Aug 2023 12:19:56 +0530 Subject: [PATCH 1/2] chore: project create retun sort order --- apiserver/plane/api/views/project.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apiserver/plane/api/views/project.py b/apiserver/plane/api/views/project.py index 26064d33152..dde4627c0cb 100644 --- a/apiserver/plane/api/views/project.py +++ b/apiserver/plane/api/views/project.py @@ -238,9 +238,13 @@ def create(self, request, slug): ] ) + + project = Project.objects.get(pk=serializer.data["id"], workspace__slug=slug) + serializer = ProjectDetailSerializer(project) + return Response(serializer.data, status=status.HTTP_201_CREATED) return Response( - [serializer.errors[error][0] for error in serializer.errors], + serializer.errors, status=status.HTTP_400_BAD_REQUEST, ) except IntegrityError as e: From 750a1ffbfe3e7c43a469e9e743a462fcdce843dc Mon Sep 17 00:00:00 2001 From: pablohashescobar Date: Tue, 1 Aug 2023 12:39:29 +0530 Subject: [PATCH 2/2] chore: project create return sort order --- apiserver/plane/api/views/project.py | 12 +++++------- apiserver/plane/db/models/project.py | 2 +- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/apiserver/plane/api/views/project.py b/apiserver/plane/api/views/project.py index dde4627c0cb..dfeab07cc0a 100644 --- a/apiserver/plane/api/views/project.py +++ b/apiserver/plane/api/views/project.py @@ -176,7 +176,7 @@ def create(self, request, slug): serializer.save() # Add the user as Administrator to the project - ProjectMember.objects.create( + project_member = ProjectMember.objects.create( project_id=serializer.data["id"], member=request.user, role=20 ) @@ -238,11 +238,9 @@ def create(self, request, slug): ] ) - - project = Project.objects.get(pk=serializer.data["id"], workspace__slug=slug) - serializer = ProjectDetailSerializer(project) - - return Response(serializer.data, status=status.HTTP_201_CREATED) + data = serializer.data + data["sort_order"] = project_member.sort_order + return Response(data, status=status.HTTP_201_CREATED) return Response( serializer.errors, status=status.HTTP_400_BAD_REQUEST, @@ -269,7 +267,7 @@ def create(self, request, slug): status=status.HTTP_410_GONE, ) except Exception as e: - capture_exception(e) + pr(e) return Response( {"error": "Something went wrong please try again later"}, status=status.HTTP_400_BAD_REQUEST, diff --git a/apiserver/plane/db/models/project.py b/apiserver/plane/db/models/project.py index 7049e3ced93..2cbd70369b0 100644 --- a/apiserver/plane/db/models/project.py +++ b/apiserver/plane/db/models/project.py @@ -161,7 +161,7 @@ class ProjectMember(ProjectBaseModel): def save(self, *args, **kwargs): if self._state.adding: smallest_sort_order = ProjectMember.objects.filter( - workspace=self.workspace, member=self.member + workspace_id=self.project.workspace_id, member=self.member ).aggregate(smallest=models.Min("sort_order"))["smallest"] # Project ordering