UPDATE
This commit is contained in:
@@ -27,5 +27,80 @@ class FertilizationSectionSerializer(serializers.Serializer):
|
||||
expandableExplanation = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class NpkRatioSerializer(serializers.Serializer):
|
||||
n = serializers.FloatField(required=False)
|
||||
p = serializers.FloatField(required=False)
|
||||
k = serializers.FloatField(required=False)
|
||||
label = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class ApplicationMethodSerializer(serializers.Serializer):
|
||||
id = serializers.CharField(required=False, allow_blank=True)
|
||||
label = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class ApplicationIntervalSerializer(serializers.Serializer):
|
||||
value = serializers.FloatField(required=False)
|
||||
unit = serializers.CharField(required=False, allow_blank=True)
|
||||
label = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class DosageSerializer(serializers.Serializer):
|
||||
base_amount_per_hectare = serializers.FloatField(required=False)
|
||||
base_amount_per_square_meter = serializers.FloatField(required=False)
|
||||
unit = serializers.CharField(required=False, allow_blank=True)
|
||||
label = serializers.CharField(required=False, allow_blank=True)
|
||||
calculation_basis = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class PrimaryRecommendationSerializer(serializers.Serializer):
|
||||
fertilizer_code = serializers.CharField(required=False, allow_blank=True)
|
||||
fertilizer_name = serializers.CharField(required=False, allow_blank=True)
|
||||
display_title = serializers.CharField(required=False, allow_blank=True)
|
||||
fertilizer_type = serializers.CharField(required=False, allow_blank=True)
|
||||
npk_ratio = NpkRatioSerializer(required=False)
|
||||
application_method = ApplicationMethodSerializer(required=False)
|
||||
application_interval = ApplicationIntervalSerializer(required=False)
|
||||
dosage = DosageSerializer(required=False)
|
||||
reasoning = serializers.CharField(required=False, allow_blank=True)
|
||||
summary = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class NutrientItemSerializer(serializers.Serializer):
|
||||
key = serializers.CharField(required=False, allow_blank=True)
|
||||
name = serializers.CharField(required=False, allow_blank=True)
|
||||
value = serializers.FloatField(required=False)
|
||||
unit = serializers.CharField(required=False, allow_blank=True)
|
||||
description = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class NutrientAnalysisSerializer(serializers.Serializer):
|
||||
macro = NutrientItemSerializer(many=True, read_only=True)
|
||||
micro = NutrientItemSerializer(many=True, read_only=True)
|
||||
|
||||
|
||||
class ApplicationGuideStepSerializer(serializers.Serializer):
|
||||
step_number = serializers.IntegerField(required=False)
|
||||
title = serializers.CharField(required=False, allow_blank=True)
|
||||
description = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class ApplicationGuideSerializer(serializers.Serializer):
|
||||
safety_warning = serializers.CharField(required=False, allow_blank=True)
|
||||
steps = ApplicationGuideStepSerializer(many=True, read_only=True)
|
||||
|
||||
|
||||
class AlternativeRecommendationSerializer(serializers.Serializer):
|
||||
fertilizer_code = serializers.CharField(required=False, allow_blank=True)
|
||||
fertilizer_name = serializers.CharField(required=False, allow_blank=True)
|
||||
fertilizer_type = serializers.CharField(required=False, allow_blank=True)
|
||||
usage_method = serializers.CharField(required=False, allow_blank=True)
|
||||
description = serializers.CharField(required=False, allow_blank=True)
|
||||
|
||||
|
||||
class FertilizationRecommendResponseDataSerializer(serializers.Serializer):
|
||||
primary_recommendation = PrimaryRecommendationSerializer(read_only=True)
|
||||
nutrient_analysis = NutrientAnalysisSerializer(read_only=True)
|
||||
application_guide = ApplicationGuideSerializer(read_only=True)
|
||||
alternative_recommendations = AlternativeRecommendationSerializer(many=True, read_only=True)
|
||||
sections = FertilizationSectionSerializer(many=True, read_only=True)
|
||||
|
||||
Reference in New Issue
Block a user