2026-03-26 15:39:31 +03:30
|
|
|
from rest_framework import serializers
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class FertilizationFarmDataSerializer(serializers.Serializer):
|
|
|
|
|
soilType = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
organicMatter = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
waterEC = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class FertilizationRecommendRequestSerializer(serializers.Serializer):
|
2026-04-27 00:40:59 +03:30
|
|
|
farm_uuid = serializers.UUIDField(required=True, help_text="UUID مزرعه برای دریافت توصیه کودی.")
|
|
|
|
|
plant_name = serializers.CharField(required=False, allow_blank=True, help_text="نام محصول یا گیاه.")
|
|
|
|
|
growth_stage = serializers.CharField(required=False, allow_blank=True, help_text="مرحله رشد گیاه.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class FertilizationSectionSerializer(serializers.Serializer):
|
|
|
|
|
type = serializers.ChoiceField(choices=["text", "list", "recommendation", "warning"])
|
|
|
|
|
title = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
icon = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
content = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
items = serializers.ListField(child=serializers.CharField(), required=False)
|
|
|
|
|
fertilizerType = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
amount = serializers.CharField(required=False, allow_blank=True)
|
2026-03-26 15:39:31 +03:30
|
|
|
applicationMethod = serializers.CharField(required=False, allow_blank=True)
|
2026-04-27 00:40:59 +03:30
|
|
|
timing = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
validityPeriod = serializers.CharField(required=False, allow_blank=True)
|
|
|
|
|
expandableExplanation = serializers.CharField(required=False, allow_blank=True)
|
2026-03-26 15:39:31 +03:30
|
|
|
|
|
|
|
|
|
|
|
|
|
class FertilizationRecommendResponseDataSerializer(serializers.Serializer):
|
2026-04-27 00:40:59 +03:30
|
|
|
sections = FertilizationSectionSerializer(many=True, read_only=True)
|