diff --git a/Elwig/Documents/CreditNote.cs b/Elwig/Documents/CreditNote.cs index 52853a0..f850ac6 100644 --- a/Elwig/Documents/CreditNote.cs +++ b/Elwig/Documents/CreditNote.cs @@ -1,6 +1,7 @@ using Elwig.Helpers; using Elwig.Models.Dtos; using Elwig.Models.Entities; +using System; using System.Collections.Generic; using System.Linq; @@ -59,9 +60,9 @@ namespace Elwig.Documents { if (considerTotalPenalty) { var total = data.Rows.SelectMany(r => r.Buckets).Sum(b => b.Value); var totalUnderDelivery = total - p.Member.BusinessShares * season.MinKgPerBusinessShare; - MemberTotalUnderDelivery = totalUnderDelivery < 0 ? totalUnderDelivery * (season.PenaltyPerKg ?? 0) - (season.PenaltyAmount ?? 0) : 0; + MemberTotalUnderDelivery = totalUnderDelivery < 0 ? totalUnderDelivery * (season.PenaltyPerKg ?? 0) - (season.PenaltyAmount ?? 0) - (season.PenaltyPerBsAmount * Math.Floor(-(decimal)totalUnderDelivery / season.MinKgPerBusinessShare) ?? 0) : 0; if (total == 0) - MemberTotalUnderDelivery -= (season.PenaltyNone ?? 0); + MemberTotalUnderDelivery -= (season.PenaltyNone ?? 0) + (season.PenaltyPerBsNone * p.Member.BusinessShares ?? 0); } if (considerAutoBusinessShares) { var fromDate = $"{season.Year}-01-01";