From 77781d227c1166057d49f98406b6847b101a90dc Mon Sep 17 00:00:00 2001 From: Lorenz Stechauner Date: Thu, 27 Apr 2023 23:34:58 +0200 Subject: [PATCH] Add Deliveries --- Elwig/Documents/BusinessDocument.cshtml.cs | 13 ++- Elwig/Documents/DeliveryNote.cshtml | 32 ++++++++ Elwig/Documents/DeliveryNote.cshtml.cs | 12 +++ Elwig/Documents/Document.cshtml | 4 +- Elwig/Documents/Document.cshtml.cs | 4 +- Elwig/Documents/Html.cs | 1 + Elwig/Documents/style.css | 5 ++ Elwig/Helpers/AppDbContext.cs | 3 + Elwig/Models/Delivery.cs | 76 +++++++++++++++++ Elwig/Models/DeliveryPart.cs | 96 ++++++++++++++++++++++ Elwig/Models/Member.cs | 12 +++ Elwig/Models/WineOrigin.cs | 22 +++++ Elwig/Windows/MainWindow.xaml.cs | 6 +- Elwig/fetch-resources.bat | 4 +- 14 files changed, 278 insertions(+), 12 deletions(-) create mode 100644 Elwig/Documents/DeliveryNote.cshtml create mode 100644 Elwig/Documents/DeliveryNote.cshtml.cs create mode 100644 Elwig/Models/Delivery.cs create mode 100644 Elwig/Models/DeliveryPart.cs create mode 100644 Elwig/Models/WineOrigin.cs diff --git a/Elwig/Documents/BusinessDocument.cshtml.cs b/Elwig/Documents/BusinessDocument.cshtml.cs index b6e9505..caf4e2b 100644 --- a/Elwig/Documents/BusinessDocument.cshtml.cs +++ b/Elwig/Documents/BusinessDocument.cshtml.cs @@ -3,16 +3,21 @@ using Elwig.Models; namespace Elwig.Documents { public abstract class BusinessDocument : Document { + public Member Member; + public BusinessDocument(string title, Member m) : base(title) { Member = m; } - public Member Member { get; set; } - public string Address { get { - // TODO Name/Rechnungsadresse - return $"{Member.GivenName} {Member.FamilyName}\n{Member.Address}"; + var b = Member.BillingAddress; + var plz = (b == null) ? Member.PostalDest.AtPlz : b.PostalDest.AtPlz; + if (b != null) { + return $"{b.Name}\n{b.Address}\n{plz.Plz} {plz.Dest}"; + } else { + return $"{Member.Name}\n{Member.Address}\n{plz.Plz} {plz.Dest}"; + } } } } diff --git a/Elwig/Documents/DeliveryNote.cshtml b/Elwig/Documents/DeliveryNote.cshtml new file mode 100644 index 0000000..c2d6258 --- /dev/null +++ b/Elwig/Documents/DeliveryNote.cshtml @@ -0,0 +1,32 @@ +@using RazorLight +@inherits TemplatePage +@model Elwig.Documents.DeliveryNote +@{ Layout = "BusinessDocument"; } + +

Traubenübernahmeschein Nr. @Model.Delivery.LsNr

+ + + + + + + + + + + + + + + + @foreach (var part in Model.Delivery.Parts.OrderBy(p => p.DPNr)) { + + + + + + + + } + +
SorteQualitätsstufeGradationGewicht
°KMW°Oekg
@part.Variant.Name@part.Quality.Name@part.Kmw@part.Oe@part.Weight
diff --git a/Elwig/Documents/DeliveryNote.cshtml.cs b/Elwig/Documents/DeliveryNote.cshtml.cs new file mode 100644 index 0000000..1900649 --- /dev/null +++ b/Elwig/Documents/DeliveryNote.cshtml.cs @@ -0,0 +1,12 @@ +using Elwig.Models; + +namespace Elwig.Documents { + public class DeliveryNote : BusinessDocument { + + public Delivery Delivery; + + public DeliveryNote(Delivery d) : base($"Lieferschein {d.LsNr}", d.Member) { + Delivery = d; + } + } +} diff --git a/Elwig/Documents/Document.cshtml b/Elwig/Documents/Document.cshtml index 4de9c25..494c18d 100644 --- a/Elwig/Documents/Document.cshtml +++ b/Elwig/Documents/Document.cshtml @@ -5,8 +5,8 @@ - @Model.Title - + @Model.Title +