add change_project_folder apis

This commit is contained in:
behruz-dev
2025-08-07 10:01:16 +05:00
parent 686afdc0cf
commit 94dbf577fa
4 changed files with 517 additions and 2 deletions

View File

@@ -137,4 +137,22 @@ class ProjectFolderDetailSerializer(serializers.ModelSerializer):
]
def get_projects_count(self, obj):
return obj.projects.count()
return obj.projects.count()
class ChangeProjectFolderSerializer(serializers.Serializer):
project_id = serializers.UUIDField()
project_folder_id = serializers.UUIDField()
def validate(self, data):
project = Project.objects.filter(id=data['project_id']).first()
if not project:
raise serializers.ValidationError("Project not found")
project_folder = ProjectFolder.objects.filter(id=data['project_folder_id']).first()
if not project_folder:
raise serializers.ValidationError("Project Folder not found")
if project.folder == project_folder:
raise serializers.ValidationError("the project folder is attached for this project")
data['project'] = project
data['project_folder'] = project_folder
return data