From 346b6eaf78e604a3c21e1ac05bd5be3862fd853d Mon Sep 17 00:00:00 2001 From: Francisco Salas Date: Thu, 14 Nov 2024 13:51:34 +0100 Subject: [PATCH] aw6373: read organic matter from eurofins if available --- CarbonCalculation24.cs | 8 ++++++++ Models/FarmMapsCarbonRequest.cs | 18 ++++++++++++++++-- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/CarbonCalculation24.cs b/CarbonCalculation24.cs index b1ab325..b836c1c 100644 --- a/CarbonCalculation24.cs +++ b/CarbonCalculation24.cs @@ -217,7 +217,15 @@ namespace FarmMapsAPI.Carbon { string provinceCode = GetProvinceCode(dataTransformationSet, postalCode); var crpYield = cropYieldConfig.SingleOrDefault(x => x.CropName.ToLower() == cropCode.ToLower()); + if (crpYield == null) + { + return 0; + } var crpYieldProvince = crpYield.Yields.SingleOrDefault(x => x.ProvinceCode == provinceCode); + if (crpYieldProvince == null) + { + return 0; + } var cropYield = crpYieldProvince.YearData.SingleOrDefault(x => x.Year == year)?.YieldValue; return cropYield; } diff --git a/Models/FarmMapsCarbonRequest.cs b/Models/FarmMapsCarbonRequest.cs index 0e81046..f85fa83 100644 --- a/Models/FarmMapsCarbonRequest.cs +++ b/Models/FarmMapsCarbonRequest.cs @@ -21,6 +21,9 @@ namespace FarmMapsAPI.Carbon.Models //added public int CalculateUntil { get; set; } + + //fsa + public int CalculateFrom { get; set; } } public class CropFieldFarmMaps @@ -31,10 +34,11 @@ namespace FarmMapsAPI.Carbon.Models public double Area { get; set; } [Required] public string SoilType { get; set; } + public string SoilTypeDefault { get; set; } [Required] public SoilPropertyFarmMaps SoilProperty { get; set; } [Required] - public List HistoricalCropData { get; set; } + public List HistoricalCropData { get; set; } } public class HistoricalCropDataFarmMaps @@ -78,10 +82,20 @@ namespace FarmMapsAPI.Carbon.Models { public double? OM_Const { get; set; } public double? C_Const { get; set; } + public double? OM_ConstDefault { get; set; } public string OM_Choice { get; set; } public double? Clay_Content { get; set; } + public double? Clay_ContentDefault { get; set; } public bool Depth10 { get; set; } - public int? Depth { get; set; } + public int? Depth { get; set; } + [JsonIgnore] + public List OrganicMatters { get; set; } + } + + public class OrganicMatterFarmMaps + { + public int Year { get; set; } + public double OrganicMatter { get; set; } } public class GreenManureTypeFarmMaps