From 37bf8d0855a79d72090430ec4d3b3317f9ab0738 Mon Sep 17 00:00:00 2001
From: Lorenz Stechauner <lorenz.stechauner@necronda.net>
Date: Thu, 4 Jan 2024 15:05:40 +0100
Subject: [PATCH] Documents: Add Property Name

---
 Elwig/Documents/CreditNote.cs           | 4 +++-
 Elwig/Documents/DeliveryConfirmation.cs | 4 +++-
 Elwig/Documents/Document.cs             | 2 ++
 Elwig/Documents/MemberDataSheet.cs      | 6 ++++--
 4 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/Elwig/Documents/CreditNote.cs b/Elwig/Documents/CreditNote.cs
index 544d2e0..01445bb 100644
--- a/Elwig/Documents/CreditNote.cs
+++ b/Elwig/Documents/CreditNote.cs
@@ -7,6 +7,8 @@ using System.Linq;
 namespace Elwig.Documents {
     public class CreditNote : BusinessDocument {
 
+        public new static string Name => "Traubengutschrift";
+
         public PaymentMember? Payment;
         public Credit? Credit;
         public CreditNoteData Data;
@@ -17,7 +19,7 @@ namespace Elwig.Documents {
         public IEnumerable<(string Name, int Kg, decimal Amount)>? MemberUnderDeliveries;
 
         public CreditNote(AppDbContext ctx, PaymentMember p, CreditNoteData data, Dictionary<string, UnderDelivery>? underDeliveries = null) :
-            base($"Traubengutschrift {(p.Credit != null ? $"Nr. {p.Credit.Year}/{p.Credit.TgNr:000}" : p.Member.Name)} – {p.Variant.Name}", p.Member) {
+            base($"{Name} {(p.Credit != null ? $"Nr. {p.Credit.Year}/{p.Credit.TgNr:000}" : p.Member.Name)} – {p.Variant.Name}", p.Member) {
             UseBillingAddress = true;
             ShowDateAndLocation = true;
             Data = data;
diff --git a/Elwig/Documents/DeliveryConfirmation.cs b/Elwig/Documents/DeliveryConfirmation.cs
index f5fe519..a101c07 100644
--- a/Elwig/Documents/DeliveryConfirmation.cs
+++ b/Elwig/Documents/DeliveryConfirmation.cs
@@ -7,13 +7,15 @@ using System.Collections.Generic;
 namespace Elwig.Documents {
     public class DeliveryConfirmation : BusinessDocument {
 
+        public new static string Name => "Anlieferungsbestätigung";
+
         public Season Season;
         public DeliveryConfirmationData Data;
         public string? Text = App.Client.TextDeliveryConfirmation;
         public Dictionary<string, MemberBucket> MemberBuckets;
 
         public DeliveryConfirmation(AppDbContext ctx, int year, Member m, DeliveryConfirmationData data) :
-            base($"Anlieferungsbestätigung {year}", m) {
+            base($"{Name} {year}", m) {
             Season = ctx.Seasons.Find(year) ?? throw new ArgumentException("invalid season");
             ShowDateAndLocation = true;
             UseBillingAddress = true;
diff --git a/Elwig/Documents/Document.cs b/Elwig/Documents/Document.cs
index 33a4d4e..02cb73a 100644
--- a/Elwig/Documents/Document.cs
+++ b/Elwig/Documents/Document.cs
@@ -9,6 +9,8 @@ using Elwig.Helpers.Printing;
 namespace Elwig.Documents {
     public abstract partial class Document : IDisposable {
 
+        public static string Name => "Dokument";
+
         private TempFile? _pdfFile = null;
 
         public bool ShowFoldMarks = App.Config.Debug;
diff --git a/Elwig/Documents/MemberDataSheet.cs b/Elwig/Documents/MemberDataSheet.cs
index 9960e23..a885906 100644
--- a/Elwig/Documents/MemberDataSheet.cs
+++ b/Elwig/Documents/MemberDataSheet.cs
@@ -6,12 +6,14 @@ using System.Collections.Generic;
 namespace Elwig.Documents {
     public class MemberDataSheet : BusinessDocument {
 
+        public new static string Name => "Stammdatenblatt";
+
         public Season Season;
         public int Year = Utils.CurrentYear;
         public Dictionary<string, MemberBucket> MemberBuckets;
 
-        public MemberDataSheet(Member m, AppDbContext ctx) : base($"Stammdatenblatt {m.AdministrativeName}", m) {
-            DocumentId = $"Stammdatenblatt {m.MgNr}";
+        public MemberDataSheet(Member m, AppDbContext ctx) : base($"{Name} {m.AdministrativeName}", m) {
+            DocumentId = $"{Name} {m.MgNr}";
             Season = ctx.Seasons.Find(Year) ?? throw new ArgumentException("invalid season");
             MemberBuckets = ctx.GetMemberBuckets(Year, m.MgNr).GetAwaiter().GetResult();
         }