mirror of https://github.com/jumpserver/jumpserver
Merge pull request #3342 from jumpserver/perms_assets_search_bug
[Bugfix] 修复资产授权列表搜索 【node:node_name】/【node_id:node_id】/【is_valid:false】 出现500错误pull/3359/head
commit
a978bf990d
|
@ -73,14 +73,17 @@ class AssetPermissionViewSet(OrgModelViewSet):
|
||||||
node_id = self.request.query_params.get('node_id')
|
node_id = self.request.query_params.get('node_id')
|
||||||
node_name = self.request.query_params.get('node')
|
node_name = self.request.query_params.get('node')
|
||||||
if node_id:
|
if node_id:
|
||||||
node = get_object_or_none(Node, pk=node_id)
|
_nodes = Node.objects.filter(pk=node_id)
|
||||||
elif node_name:
|
elif node_name:
|
||||||
node = get_object_or_none(Node, name=node_name)
|
_nodes = Node.objects.filter(value=node_name)
|
||||||
else:
|
else:
|
||||||
return queryset
|
return queryset
|
||||||
if not node:
|
if not _nodes:
|
||||||
return queryset.none()
|
return queryset.none()
|
||||||
nodes = node.get_ancestors(with_self=True)
|
|
||||||
|
nodes = set()
|
||||||
|
for node in _nodes:
|
||||||
|
nodes |= set(node.get_ancestors(with_self=True))
|
||||||
queryset = queryset.filter(nodes__in=nodes)
|
queryset = queryset.filter(nodes__in=nodes)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ class BasePermissionQuerySet(models.QuerySet):
|
||||||
return self.filter(is_active=False)
|
return self.filter(is_active=False)
|
||||||
|
|
||||||
def invalid(self):
|
def invalid(self):
|
||||||
now = timezone.now
|
now = timezone.now()
|
||||||
q = (
|
q = (
|
||||||
Q(is_active=False) |
|
Q(is_active=False) |
|
||||||
Q(date_start__gt=now) |
|
Q(date_start__gt=now) |
|
||||||
|
|
Loading…
Reference in New Issue