| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- from rest_framework import serializers
- import time
- # import ast
- # from .models import Device
- class SearchEquipSerializer(serializers.Serializer):
- device_id = serializers.CharField(help_text="搜索设备号", required=True)
- isfullId = serializers.IntegerField(help_text="是否完整搜索固定值1", required=False)
- def validate_device_id(self, value):
- value = value.strip()
- if len(value) < 4:
- raise serializers.ValidationError("设备号长度不能小于4位")
- else:
- return value
- # class DeviceDetailSerializer(serializers.Serializer):
- # req = serializers.CharField(help_text="类型", required=True)
- # device_id = serializers.CharField(help_text="设备号", required=True)
- # start_timestamp = serializers.IntegerField(help_text="开始时间戳(秒级)", required=True)
- # end_timestamp = serializers.IntegerField(help_text="结束时间戳(秒级)", required=True)
- # page = serializers.IntegerField(help_text="页码", required=True)
- # page_size = serializers.IntegerField(help_text="页长", required=True)
- # 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
- class DeviceDetailSerializer(serializers.Serializer):
- req = serializers.CharField(help_text="类型", required=True)
- device_id = serializers.CharField(help_text="设备号", required=True)
- start_timestamp = serializers.IntegerField(help_text="开始时间戳(秒级)", required=False)
- end_timestamp = serializers.IntegerField(help_text="结束时间戳(秒级)", required=False)
- page = serializers.IntegerField(help_text="页码", required=False)
- page_size = serializers.IntegerField(help_text="页长", required=False)
- def validate(self, attrs):
- if attrs.get("req")=="history":
- if not attrs.get("start_timestamp",""):
- raise serializers.ValidationError({"start_timestamp":"参数为必填项"})
- if not attrs.get("end_timestamp",""):
- raise serializers.ValidationError({"end_timestamp":"参数为必填项"})
- if attrs["start_timestamp"] > attrs["end_timestamp"]:
- raise serializers.ValidationError({"timestamp":"结束时间不能小于开始时间"})
- if not attrs.get("page",""):
- attrs["page"] = 1
- if not attrs.get("page_size",""):
- attrs["page_size"] = 10
- elif attrs.get("req")=="new":
- if not attrs.get("page_size",""):
- attrs["page_size"] = 1
- if not attrs.get("offset",""):
- attrs["offset"] = 0
- else:
- raise serializers.ValidationError({"req":"参数超出阈值"})
- return attrs
|