From 583d5b4e3e973e1ccfdbdd91e781a83366ccd894 Mon Sep 17 00:00:00 2001 From: Lorenz Stechauner Date: Wed, 21 Feb 2024 11:16:52 +0100 Subject: [PATCH] ClientParameters: Add WG Weinland and Baden --- Elwig/Helpers/ClientParameters.cs | 38 +++++++++++++---------- Elwig/Windows/DeliveryAdminWindow.xaml.cs | 12 +++---- Elwig/Windows/MainWindow.xaml.cs | 1 + 3 files changed, 29 insertions(+), 22 deletions(-) diff --git a/Elwig/Helpers/ClientParameters.cs b/Elwig/Helpers/ClientParameters.cs index fdd6686..91757fd 100644 --- a/Elwig/Helpers/ClientParameters.cs +++ b/Elwig/Helpers/ClientParameters.cs @@ -7,20 +7,20 @@ using System.Threading.Tasks; namespace Elwig.Helpers { public class ClientParameters { - public enum Type { Matzen, Winzerkeller }; + public enum Type { Matzen, Winzerkeller, Weinland, Baden }; public bool IsMatzen => Client == Type.Matzen; public bool IsWinzerkeller => Client == Type.Winzerkeller; - public bool IsWolkersdorf => Client == Type.Winzerkeller && App.ZwstId == "W"; - public bool IsHaugsdorf => Client == Type.Winzerkeller && App.ZwstId == "H"; - public bool IsSitzendorf => Client == Type.Winzerkeller && App.ZwstId == "S"; + public bool IsWeinland => Client == Type.Weinland; + public bool IsBaden => Client == Type.Baden; + public bool IsWolkersdorf => IsWinzerkeller && App.ZwstId == "W"; + public bool IsHaugsdorf => IsWinzerkeller && App.ZwstId == "H"; + public bool IsSitzendorf => IsWinzerkeller && App.ZwstId == "S"; + public bool IsGrInzersdorf => IsWeinland; - public bool HasRebler(string? zwstId) => IsMatzen || (IsWinzerkeller && zwstId == "W"); - public bool HasRebler(Branch? b) => HasRebler(b?.ZwstId); - public bool HasRebler() => HasRebler(App.ZwstId); - public bool HasKisten(string? zwstId) => IsWinzerkeller && (zwstId == "H" || zwstId == "S"); - public bool HasKisten(Branch? b) => HasKisten(b?.ZwstId); - public bool HasKisten() => HasKisten(App.ZwstId); + public bool HasNetWeighing(string? zwstId) => IsMatzen || (IsWinzerkeller && zwstId == "W"); + public bool HasNetWeighing(Branch? b) => HasNetWeighing(b?.ZwstId); + public bool HasNetWeighing() => HasNetWeighing(App.ZwstId); public string NameToken; public string NameShort; @@ -36,8 +36,8 @@ namespace Elwig.Helpers { public PostalDest PostalDest { set { - Plz = value.AtPlz.Plz; - Ort = value.AtPlz.Ort.Name; + Plz = value.AtPlz!.Plz; + Ort = value.AtPlz!.Ort.Name; } } public int Plz; @@ -72,8 +72,14 @@ namespace Elwig.Helpers { NameSuffix = parameters.GetValueOrDefault("CLIENT_NAME_SUFFIX"); NameType = parameters["CLIENT_NAME_TYPE"] ?? throw new KeyNotFoundException(); switch (Name) { - case "Winzergenossenschaft für Matzen und Umgebung": Client = Type.Matzen; break; - case "Winzerkeller im Weinviertel": Client = Type.Winzerkeller; break; + case "Winzergenossenschaft für Matzen und Umgebung": + Client = Type.Matzen; break; + case "Winzerkeller im Weinviertel": + Client = Type.Winzerkeller; break; + case "Winzergenossenschaft Weinland": + Client = Type.Weinland; break; + case "Winzergenossenschaft Baden - Bad Vöslau": + Client = Type.Baden; break; }; Plz = int.Parse(parameters["CLIENT_PLZ"] ?? ""); @@ -115,7 +121,7 @@ namespace Elwig.Helpers { case 2: deliveryNoteStats = "SHORT"; break; case 3: deliveryNoteStats = "FULL"; break; } - return new (string, string?)[] { + return [ ("CLIENT_NAME_TOKEN", NameToken), ("CLIENT_NAME_SHORT", NameShort), ("CLIENT_NAME", Name), @@ -137,7 +143,7 @@ namespace Elwig.Helpers { ("TEXT_DELIVERYNOTE", TextDeliveryNote), ("TEXT_DELIVERYCONFIRMATION", TextDeliveryConfirmation), ("TEXT_CREDITNOTE", TextCreditNote), - }; + ]; } public async Task UpdateValues() { diff --git a/Elwig/Windows/DeliveryAdminWindow.xaml.cs b/Elwig/Windows/DeliveryAdminWindow.xaml.cs index f8ff688..ffa5b30 100644 --- a/Elwig/Windows/DeliveryAdminWindow.xaml.cs +++ b/Elwig/Windows/DeliveryAdminWindow.xaml.cs @@ -218,7 +218,7 @@ namespace Elwig.Windows { } private void InitialDefaultInputs() { - if (App.Client.HasRebler(BranchInput.SelectedValue as Branch)) { + if (App.Client.HasNetWeighing(BranchInput.SelectedValue as Branch)) { GerebeltGewogenInput.IsEnabled = false; SetDefaultValue(GerebeltGewogenInput, true); } else { @@ -226,7 +226,7 @@ namespace Elwig.Windows { UnsetDefaultValue(GerebeltGewogenInput); } - if (App.Client.HasKisten(BranchInput.SelectedValue as Branch)) { + if (!App.Client.HasNetWeighing(BranchInput.SelectedValue as Branch)) { LesewagenInput.IsEnabled = false; SetDefaultValue(LesewagenInput, false); HandPickedInput.IsThreeState = false; @@ -256,9 +256,9 @@ namespace Elwig.Windows { ClearOriginalValues(); ClearDefaultValues(); - GerebeltGewogenInput.IsChecked = App.Client.HasRebler(BranchInput.SelectedValue as Branch); + GerebeltGewogenInput.IsChecked = App.Client.HasNetWeighing(BranchInput.SelectedValue as Branch); LesewagenInput.IsChecked = false; - HandPickedInput.IsChecked = App.Client.HasKisten(BranchInput.SelectedValue as Branch) ? true : null; + HandPickedInput.IsChecked = !App.Client.HasNetWeighing(BranchInput.SelectedValue as Branch) ? true : null; GebundenInput.IsChecked = null; InitialDefaultInputs(); @@ -1731,14 +1731,14 @@ namespace Elwig.Windows { } private void GerebeltGewogenInput_Changed(object sender, RoutedEventArgs evt) { - if (App.Client.HasKisten(BranchInput.SelectedValue as Branch)) { + if (!App.Client.HasNetWeighing(BranchInput.SelectedValue as Branch)) { HandPickedInput.IsChecked = !GerebeltGewogenInput.IsChecked; } CheckBox_Changed(sender, evt); } private void HandPickedInput_Changed(object sender, RoutedEventArgs evt) { - if (App.Client.HasKisten(BranchInput.SelectedValue as Branch)) { + if (!App.Client.HasNetWeighing(BranchInput.SelectedValue as Branch)) { GerebeltGewogenInput.IsChecked = !HandPickedInput.IsChecked; } CheckBox_Changed(sender, evt); diff --git a/Elwig/Windows/MainWindow.xaml.cs b/Elwig/Windows/MainWindow.xaml.cs index d1627da..26bea9f 100644 --- a/Elwig/Windows/MainWindow.xaml.cs +++ b/Elwig/Windows/MainWindow.xaml.cs @@ -9,6 +9,7 @@ namespace Elwig.Windows { InitializeComponent(); var v = Assembly.GetExecutingAssembly().GetName().Version; VersionField.Text = "Version: " + (v == null ? "?" : $"{v.Major}.{v.Minor}.{v.Build}") + $" – {App.BranchName}"; + if (App.Client.Client == null) VersionField.Text += " (Unbekannt)"; if (!App.Config.Debug) { TestWindowButton.Visibility = Visibility.Hidden; //QueryWindowButton.Visibility = Visibility.Hidden;