31 lines
1.0 KiB
C#
31 lines
1.0 KiB
C#
using Elwig.Helpers.Billing;
|
|
using Elwig.Models.Dtos;
|
|
using Elwig.Models.Entities;
|
|
using System.Linq;
|
|
|
|
namespace Elwig.Documents {
|
|
public class PaymentVariantSummary : Document {
|
|
|
|
public new static string Name => "Auszahlungsvariante";
|
|
|
|
public PaymentVariantSummaryData Data;
|
|
public PaymentVar Variant;
|
|
public BillingData BillingData;
|
|
public string CurrencySymbol;
|
|
public int MemberNum;
|
|
public int DeliveryNum;
|
|
public int DeliveryPartNum;
|
|
|
|
public PaymentVariantSummary(PaymentVar v, PaymentVariantSummaryData data) :
|
|
base($"{Name} {v.Year} - {v.Name}") {
|
|
Variant = v;
|
|
BillingData = BillingData.FromJson(v.Data);
|
|
Data = data;
|
|
CurrencySymbol = v.Season.Currency.Symbol ?? v.Season.Currency.Code;
|
|
MemberNum = v.Credits.Count;
|
|
DeliveryNum = v.DeliveryPartPayments.DistinctBy(p => p.DeliveryPart.Delivery).Count();
|
|
DeliveryPartNum = v.DeliveryPartPayments.Count;
|
|
}
|
|
}
|
|
}
|