perf: 修改组件状态

This commit is contained in:
ibuler
2022-11-04 11:40:16 +08:00
parent b0ae9b47ca
commit 30106bdbbb
11 changed files with 93 additions and 175 deletions

View File

@@ -21,7 +21,7 @@ __all__ = ['StatusViewSet', 'ComponentsMetricsAPIView']
class StatusViewSet(viewsets.ModelViewSet):
queryset = Status.objects.all()
serializer_class = serializers.StatusSerializer
serializer_class = serializers.StatSerializer
session_serializer_class = serializers.SessionSerializer
task_serializer_class = serializers.TaskSerializer
@@ -52,7 +52,7 @@ class StatusViewSet(viewsets.ModelViewSet):
terminal_id = self.kwargs.get("terminal", None)
if terminal_id:
terminal = get_object_or_404(Terminal, id=terminal_id)
return terminal.status.all()
return terminal.status_set.all()
return super().get_queryset()

View File

@@ -61,7 +61,7 @@ class CommandStorageViewSet(BaseStorageViewSetMixin, viewsets.ModelViewSet):
if not filterset.is_valid():
raise utils.translate_validation(filterset.errors)
command_qs = filterset.qs
if storage.type == const.CommandStorageTypeChoices.es:
if storage.type == const.CommandStorageType.es:
command_count = command_qs.count(limit_to_max_result_window=False)
else:
command_count = command_qs.count()

View File

@@ -47,7 +47,7 @@ class TerminalViewSet(JMSBulkModelViewSet):
s = self.request.query_params.get('status')
if not s:
return queryset
filtered_queryset_id = [str(q.id) for q in queryset if q.latest_status == s]
filtered_queryset_id = [str(q.id) for q in queryset if q.load == s]
queryset = queryset.filter(id__in=filtered_queryset_id)
return queryset