cameraserializers.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from rest_framework import serializers
  2. from smartfarming.models.camera import MongoCameraPhoto, MongoCameraData, MongoCameraAccount
  3. from smartfarming.models.device import MongoDevice
  4. class MongoCameraPhotoSerializers(serializers.ModelSerializer):
  5. class Meta:
  6. model = MongoCameraPhoto
  7. fields = "__all__"
  8. class MongoDeviceCameraSerializers(serializers.ModelSerializer):
  9. status = serializers.SerializerMethodField()
  10. sim = serializers.SerializerMethodField()
  11. photo_num = serializers.SerializerMethodField()
  12. camera_playback = serializers.SerializerMethodField()
  13. def get_photo_num(self, obj):
  14. return 1 if MongoCameraPhoto.objects.filter(device_id=obj.device_id) else 0
  15. def get_camera_playback(self, obj):
  16. return MongoCameraData.objects.get(device_id=obj.device_id).camera_playback
  17. def get_status(self, obj):
  18. return obj.device_status
  19. def get_sim(self, obj):
  20. return obj.simid
  21. class Meta:
  22. model = MongoDevice
  23. fields = [
  24. "device_name",
  25. "device_id",
  26. "status",
  27. "camera_playback",
  28. "sim",
  29. "photo_num"
  30. ]