FruitBankHybridApp/FruitBank.Common/Helpers/MeasuringValuesHelper.cs

35 lines
1.3 KiB
C#

using FruitBank.Common.Entities;
namespace FruitBank.Common.Helpers;
public static class MeasuringValuesHelper
{
public static void SetShippingItemTotalMeasuringValues(ShippingItem? shippingItem)
{
if (shippingItem == null) return;
var totalMeasuringValues = GetTotalNetAndGrossWeightFromPallets(shippingItem);
shippingItem.MeasuredQuantity = totalMeasuringValues.TotalQuantity;
shippingItem.MeasuredNetWeight = totalMeasuringValues.TotalNetWeight;
shippingItem.MeasuredGrossWeight = totalMeasuringValues.TotalGrossWeight;
}
public static (int TotalQuantity, double TotalNetWeight, double TotalGrossWeight) GetTotalNetAndGrossWeightFromPallets(ShippingItem? shippingItem)
{
if (shippingItem?.ShippingItemPallets == null) return (0, 0d, 0d);
var totalQuantity = 0;
var totalNetWeight = 0d;
var totalGrossWeight = 0d;
foreach (var shippingItemPallet in shippingItem.ShippingItemPallets)
{
totalQuantity += shippingItemPallet.TrayQuantity;
totalNetWeight += shippingItemPallet.NetWeight;
totalGrossWeight += shippingItemPallet.GrossWeight;
}
return (totalQuantity, double.Round(totalNetWeight, 1), Math.Round(totalGrossWeight, 1));
}
}