| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- from rest_framework import serializers
- class ZhiBaoSelectViewSerializer(serializers.Serializer):
- identify_model = serializers.CharField(help_text="识别模型", required=True)
- start_time = serializers.IntegerField(help_text="开始时间 秒级时间戳", required=True)
- end_time = serializers.IntegerField(help_text="结束时间 秒级时间戳", required=True)
- pest_name = serializers.CharField(help_text="害虫名称", required=False)
- page = serializers.IntegerField(help_text="页码", required=True)
- page_size = serializers.IntegerField(help_text="每页数量", required=True)
- def validate_identify_model(self, value):
- if value not in ["A","B"]:
- raise serializers.ValidationError("无法识别筛选模型")
- return value
- def validate_start_time(self, value):
- if value<0:
- raise serializers.ValidationError("时间戳不能小于0")
- return value
-
- def validate_end_time(self, value):
- if value<0:
- raise serializers.ValidationError("时间戳不能小于0")
- return value
-
- def validate_page(self, value):
- if value<1:
- raise serializers.ValidationError("页码不能小于1")
- return value
-
- def validate_page_size(self, value):
- if value<1:
- raise serializers.ValidationError("每页数据不能小于1")
- return value
- def validate(self, attrs):
- if attrs["start_time"] > attrs["end_time"]:
- raise serializers.ValidationError("结束时间不能小于开始时间")
- return attrs
|