Add filter

This commit is contained in:
sangeethailango
2025-01-02 22:40:51 +05:30
parent 3f7033816f
commit 80e21ea9dd
2 changed files with 14 additions and 12 deletions
+2 -7
View File
@@ -151,7 +151,6 @@ class IssueRecentVisitSerializer(serializers.ModelSerializer):
def get_project_identifier(self, obj):
project = obj.project
project = Project.objects.get(id=project.id)
return project.identifier if project else None
class ProjectMemberSerializer(BaseSerializer):
@@ -169,7 +168,7 @@ class ProjectRecentVisitSerializer(serializers.ModelSerializer):
fields = ["id", "name", "logo_props", "project_members", "identifier"]
def get_project_members(self, obj):
members = ProjectMember.objects.filter(project_id=obj.id)
members = ProjectMember.objects.filter(project_id=obj.id).select_related('member')
serializer = ProjectMemberSerializer(members, many=True)
return serializer.data
@@ -183,15 +182,11 @@ class PageRecentVisitSerializer(serializers.ModelSerializer):
fields = ["id", "name", "logo_props", "project_id", "owned_by", "project_identifier"]
def get_project_id(self, obj):
project = (
obj.projects.first()
)
return project.id if project else None
return obj.project_id if hasattr(obj, 'project_id') else obj.projects.values_list('id', flat=True).first()
def get_project_identifier(self, obj):
project = obj.projects.first()
project = Project.objects.get(id=project.id)
return project.identifier if project else None
def get_entity_model_and_serializer(entity_type):
@@ -17,8 +17,15 @@ class UserRecentVisitViewSet(BaseViewSet):
@allow_permission([ROLE.ADMIN, ROLE.MEMBER, ROLE.GUEST], level="WORKSPACE")
def list(self, request, slug):
user_recent_visits = UserRecentVisit.objects.filter(workspace__slug=slug)
serializer = WorkspaceRecentVisitSerializer(user_recent_visits, many=True)
return Response(serializer.data, status=status.HTTP_200_OK)
user_recent_visits = UserRecentVisit.objects.filter(workspace__slug=slug)
entity_name = request.query_params.get("entity_name")
if entity_name:
user_recent_visits = user_recent_visits.filter(entity_name=entity_name)[:10]
user_recent_visits = user_recent_visits[:10]
serializer = WorkspaceRecentVisitSerializer(user_recent_visits, many=True)
return Response(serializer.data, status=status.HTTP_200_OK)