Skip to content

Commit 5b304e2

Browse files
committed
feat: add workspace_ids filtering to resource mapping serializers
1 parent d542632 commit 5b304e2

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

apps/system_manage/serializers/resource_mapping_serializers.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
@date:2025/4/28 17:17
77
@desc:
88
"""
9+
import json
910
import os
1011

1112
from django.db import models
@@ -29,14 +30,16 @@ class ResourceMappingSerializer(serializers.Serializer):
2930
label=_('source Type'),
3031
child=serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_('source Type')))
3132
user_name = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_('creator'))
33+
workspace_ids = serializers.CharField(required=False, label=_('workspace_ids'))
3234

3335
def get_query_set(self):
3436
queryset = QuerySet(model=get_dynamics_model({
3537
'name': models.CharField(),
3638
'target_id': models.CharField(),
3739
"target_type": models.CharField(),
3840
"u.username": models.CharField(),
39-
'rm.source_type': models.CharField()
41+
'rm.source_type': models.CharField(),
42+
'workspace_id': models.CharField(),
4043
}))
4144

4245
queryset = queryset.filter(target_id=self.data.get('resource_id'),
@@ -48,6 +51,10 @@ def get_query_set(self):
4851
queryset = queryset.filter(**{'u.username__icontains': self.data.get('user_name')})
4952
if self.data.get("source_type"):
5053
queryset = queryset.filter(**{'rm.source_type__in': self.data.get('source_type')})
54+
if self.data.get('workspace_ids') is not None and len(self.data.get('workspace_ids')) > 0:
55+
workspace_ids = json.loads(self.data.get('workspace_ids'))
56+
queryset = queryset.filter(**{'workspace_id__in': workspace_ids})
57+
5158
return queryset
5259

5360
@staticmethod

0 commit comments

Comments
 (0)