This commit is contained in:
shilixia 2021-04-28 11:48:32 +08:00
commit 3d9c0c8d98
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,4 @@
from re import template
from django.db.models.base import Model from django.db.models.base import Model
from rest_framework import serializers from rest_framework import serializers
from .models import * from .models import *
@ -30,6 +31,7 @@ class InspectTaskSerializer(serializers.ModelSerializer):
create_by_ = UserSimpleSerializer(source='create_by', read_only=True) create_by_ = UserSimpleSerializer(source='create_by', read_only=True)
dept_count = serializers.SerializerMethodField() dept_count = serializers.SerializerMethodField()
subtask_count = serializers.SerializerMethodField() subtask_count = serializers.SerializerMethodField()
template_name = serializers.CharField(source='template.name', read_only=True)
class Meta: class Meta:
model = InspectTask model = InspectTask
@ -41,6 +43,11 @@ class InspectTaskSerializer(serializers.ModelSerializer):
def get_subtask_count(self, obj): def get_subtask_count(self, obj):
return SubInspectTask.objects.filter(inspecttask=obj, is_deleted=False).count() return SubInspectTask.objects.filter(inspecttask=obj, is_deleted=False).count()
@staticmethod
def setup_eager_loading(queryset):
queryset = queryset.select_related('template',)
return queryset
class InspectTaskSimpleSerializer(serializers.ModelSerializer): class InspectTaskSimpleSerializer(serializers.ModelSerializer):
class Meta: class Meta:
model = InspectTask model = InspectTask

View File

@ -193,7 +193,7 @@ class InspectDeptViewSet(ListModelMixin, RetrieveModelMixin, GenericViewSet):
obj = self.get_object() obj = self.get_object()
if obj.state == '待检查': if obj.state == '待检查':
obj.state = '检查中' obj.state = '检查中'
obj.start_date = timezone.now() obj.start_date = timezone.now().date()
obj.save() obj.save()
return Response(InspectDeptSerializer(instance=obj).data, status=status.HTTP_200_OK) return Response(InspectDeptSerializer(instance=obj).data, status=status.HTTP_200_OK)
return Response('状态错误', status=status.HTTP_400_BAD_REQUEST) return Response('状态错误', status=status.HTTP_400_BAD_REQUEST)