[WEB-3087] fix: project_id handling in cycle create write serializer (#6358)

* chore: handled cycle create write serailizer project_id current instance

* chore: updated instance validation in cycle write serializer
This commit is contained in:
guru_sainath 2025-01-09 16:23:53 +05:30 committed by GitHub
parent 8c57543f72
commit 448a34aa5f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 12 additions and 8 deletions

View file

@ -20,7 +20,11 @@ class CycleWriteSerializer(BaseSerializer):
data.get("start_date", None) is not None data.get("start_date", None) is not None
and data.get("end_date", None) is not None and data.get("end_date", None) is not None
): ):
project_id = self.initial_data.get("project_id") or self.instance.project_id project_id = (
self.initial_data.get("project_id", None)
or (self.instance and self.instance.get("project_id", None))
or self.context.get("project_id", None)
)
is_start_date_end_date_equal = ( is_start_date_end_date_equal = (
True True
if str(data.get("start_date")) == str(data.get("end_date")) if str(data.get("start_date")) == str(data.get("end_date"))

View file

@ -54,11 +54,7 @@ from plane.bgtasks.recent_visited_task import recent_visited_task
# Module imports # Module imports
from .. import BaseAPIView, BaseViewSet from .. import BaseAPIView, BaseViewSet
from plane.bgtasks.webhook_task import model_activity from plane.bgtasks.webhook_task import model_activity
from plane.utils.timezone_converter import ( from plane.utils.timezone_converter import convert_to_utc, user_timezone_converter
convert_utc_to_project_timezone,
convert_to_utc,
user_timezone_converter,
)
class CycleViewSet(BaseViewSet): class CycleViewSet(BaseViewSet):
@ -270,7 +266,9 @@ class CycleViewSet(BaseViewSet):
request.data.get("start_date", None) is not None request.data.get("start_date", None) is not None
and request.data.get("end_date", None) is not None and request.data.get("end_date", None) is not None
): ):
serializer = CycleWriteSerializer(data=request.data) serializer = CycleWriteSerializer(
data=request.data, context={"project_id": project_id}
)
if serializer.is_valid(): if serializer.is_valid():
serializer.save(project_id=project_id, owned_by=request.user) serializer.save(project_id=project_id, owned_by=request.user)
cycle = ( cycle = (
@ -357,7 +355,9 @@ class CycleViewSet(BaseViewSet):
status=status.HTTP_400_BAD_REQUEST, status=status.HTTP_400_BAD_REQUEST,
) )
serializer = CycleWriteSerializer(cycle, data=request.data, partial=True) serializer = CycleWriteSerializer(
cycle, data=request.data, partial=True, context={"project_id": project_id}
)
if serializer.is_valid(): if serializer.is_valid():
serializer.save() serializer.save()
cycle = queryset.values( cycle = queryset.values(