Compare commits
	
		
			9 Commits
		
	
	
		
			80ed90941d
			...
			v0.2.1
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| e9e4c75edd | |||
| ff1a4e7182 | |||
| 1e9cad6de7 | |||
| 62fe087598 | |||
| 7f01b85878 | |||
| a659d07db2 | |||
| b2a78907cf | |||
| 7bcf532b26 | |||
| 595f9a049c | 
| @@ -9,24 +9,21 @@ namespace Elwig.Dialogs { | |||||||
|         public int Weight = 0; |         public int Weight = 0; | ||||||
|         public string? Reason = null; |         public string? Reason = null; | ||||||
|  |  | ||||||
|         public ManualWeighingDialog() { |         public ManualWeighingDialog(string? reason = null) { | ||||||
|             InitializeComponent(); |             InitializeComponent(); | ||||||
|  |             ReasonInput.Text = reason; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void ConfirmButton_Click(object sender, RoutedEventArgs evt) { |         private void ConfirmButton_Click(object sender, RoutedEventArgs evt) { | ||||||
|             DialogResult = true; |             DialogResult = true; | ||||||
|             Weight = int.Parse(WeightInput.Text); |             Weight = int.Parse(WeightInput.Text); | ||||||
|             Reason = Regex.Replace(ReasonInput.Text, @"\s+", "").Trim(); |             Reason = Regex.Replace(ReasonInput.Text, @"\s+", " ").Trim(); | ||||||
|             if (Reason == "") { |             if (Reason == "") Reason = null; | ||||||
|                 Reason = null; |  | ||||||
|             } else if (!Reason.EndsWith(".") || !Reason.EndsWith("!") || !Reason.EndsWith("?")) { |  | ||||||
|                 Reason += "."; |  | ||||||
|             } |  | ||||||
|             Close(); |             Close(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void UpdateButtons() { |         private void UpdateButtons() { | ||||||
|             ConfirmButton.IsEnabled = WeightInput.Text.Length > 0 && ReasonInput.Text.Trim().Length > 0; |             ConfirmButton.IsEnabled = WeightInput.Text.Length > 0; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void WeightInput_TextChanged(object sender, TextChangedEventArgs evt) { |         private void WeightInput_TextChanged(object sender, TextChangedEventArgs evt) { | ||||||
|   | |||||||
| @@ -18,12 +18,14 @@ | |||||||
|     <link rel="stylesheet" href="file:///@Raw(Model.DataPath)\resources\style-page.css"/> |     <link rel="stylesheet" href="file:///@Raw(Model.DataPath)\resources\style-page.css"/> | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
|  |     @if (Model.ShowFoldMarks) { | ||||||
|         <div class="m1"></div> |         <div class="m1"></div> | ||||||
|         <div class="m2"></div> |         <div class="m2"></div> | ||||||
|         <div class="m3"></div> |         <div class="m3"></div> | ||||||
|         <div class="m1 r"></div> |         <div class="m1 r"></div> | ||||||
|         <div class="m2 r"></div> |         <div class="m2 r"></div> | ||||||
|         <div class="m3 r"></div> |         <div class="m3 r"></div> | ||||||
|  |     } | ||||||
|     <div class="footer-wrapper"> |     <div class="footer-wrapper"> | ||||||
|         <div class="pre-footer"> |         <div class="pre-footer"> | ||||||
|             <span class="date">@($"{Model.Date:dddd, d. MMMM yyyy}")</span> |             <span class="date">@($"{Model.Date:dddd, d. MMMM yyyy}")</span> | ||||||
|   | |||||||
| @@ -8,6 +8,7 @@ namespace Elwig.Documents { | |||||||
|  |  | ||||||
|         private TempFile? PdfFile = null; |         private TempFile? PdfFile = null; | ||||||
|  |  | ||||||
|  |         public bool ShowFoldMarks = App.Config.Debug; | ||||||
|         public string DataPath; |         public string DataPath; | ||||||
|         public int CurrentNextSeason; |         public int CurrentNextSeason; | ||||||
|         public string? DocumentId; |         public string? DocumentId; | ||||||
|   | |||||||
| @@ -7,7 +7,7 @@ | |||||||
|     <UseWPF>true</UseWPF> |     <UseWPF>true</UseWPF> | ||||||
|     <PreserveCompilationContext>true</PreserveCompilationContext> |     <PreserveCompilationContext>true</PreserveCompilationContext> | ||||||
|     <ApplicationIcon>elwig.ico</ApplicationIcon> |     <ApplicationIcon>elwig.ico</ApplicationIcon> | ||||||
|     <Version>0.1.0</Version> |     <Version>0.2.1</Version> | ||||||
|     <SatelliteResourceLanguages>de-AT</SatelliteResourceLanguages> |     <SatelliteResourceLanguages>de-AT</SatelliteResourceLanguages> | ||||||
|   </PropertyGroup> |   </PropertyGroup> | ||||||
|  |  | ||||||
|   | |||||||
| @@ -8,6 +8,7 @@ namespace Elwig.Helpers { | |||||||
|     public class Config { |     public class Config { | ||||||
|  |  | ||||||
|         private readonly string FileName; |         private readonly string FileName; | ||||||
|  |         public bool Debug; | ||||||
|         public string DatabaseFile = App.DataPath + "database.sqlite3"; |         public string DatabaseFile = App.DataPath + "database.sqlite3"; | ||||||
|         public string? DatabaseLog = null; |         public string? DatabaseLog = null; | ||||||
|         public string? Branch = null; |         public string? Branch = null; | ||||||
| @@ -49,6 +50,13 @@ namespace Elwig.Helpers { | |||||||
|                 Branch = branch; |                 Branch = branch; | ||||||
|             } |             } | ||||||
|  |  | ||||||
|  |             if (ini == null || !ini.TryGetKey("general.debug", out string debug)) { | ||||||
|  |                 Debug = false; | ||||||
|  |             } else { | ||||||
|  |                 debug = debug.ToLower(); | ||||||
|  |                 Debug = debug == "1" || debug == "true" || debug == "yes" || debug == "on"; | ||||||
|  |             } | ||||||
|  |  | ||||||
|             ScaleList.Clear(); |             ScaleList.Clear(); | ||||||
|             Scales = ScaleList; |             Scales = ScaleList; | ||||||
|             if (ini != null) { |             if (ini != null) { | ||||||
| @@ -72,6 +80,7 @@ namespace Elwig.Helpers { | |||||||
|             using var file = new StreamWriter(FileName, false, Utils.UTF8); |             using var file = new StreamWriter(FileName, false, Utils.UTF8); | ||||||
|             file.Write($"\r\n[general]\r\n"); |             file.Write($"\r\n[general]\r\n"); | ||||||
|             if (Branch != null) file.Write($"branch = {Branch}\r\n"); |             if (Branch != null) file.Write($"branch = {Branch}\r\n"); | ||||||
|  |             if (Debug) file.Write("debug = true\r\n"); | ||||||
|             file.Write($"\r\n[database]\r\nfile = {DatabaseFile}\r\n"); |             file.Write($"\r\n[database]\r\nfile = {DatabaseFile}\r\n"); | ||||||
|             if (DatabaseLog != null) file.Write($"log = {DatabaseLog}\r\n"); |             if (DatabaseLog != null) file.Write($"log = {DatabaseLog}\r\n"); | ||||||
|             foreach (var s in ScaleList) { |             foreach (var s in ScaleList) { | ||||||
|   | |||||||
| @@ -219,8 +219,8 @@ namespace Elwig.Helpers { | |||||||
|                 .Sum(); |                 .Sum(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         public static (int, string?)? ShowManualWeighingDialog() { |         public static (int, string?)? ShowManualWeighingDialog(string? reason = null) { | ||||||
|             var d = new ManualWeighingDialog(); |             var d = new ManualWeighingDialog(reason); | ||||||
|             return d.ShowDialog() == true ? (d.Weight, d.Reason) : null; |             return d.ShowDialog() == true ? (d.Weight, d.Reason) : null; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -413,7 +413,7 @@ namespace Elwig.Windows { | |||||||
|             UpdateButtons(); |             UpdateButtons(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         protected void TextBox_TextChanged(object sender, RoutedEventArgs evt) { |         protected void TextBox_TextChanged(object sender, RoutedEventArgs? evt) { | ||||||
|             var input = (TextBox)sender; |             var input = (TextBox)sender; | ||||||
|             if (SenderIsRequired(input) && input.Text.Length == 0) { |             if (SenderIsRequired(input) && input.Text.Length == 0) { | ||||||
|                 ValidateInput(input, false); |                 ValidateInput(input, false); | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ namespace Elwig.Windows { | |||||||
|         private List<string> TextFilter = new(); |         private List<string> TextFilter = new(); | ||||||
|         private readonly RoutedCommand CtrlF = new(); |         private readonly RoutedCommand CtrlF = new(); | ||||||
|  |  | ||||||
|  |         private string? LastScaleError = null; | ||||||
|         private string? ManualWeighingReason = null; |         private string? ManualWeighingReason = null; | ||||||
|         private string? ScaleId = null; |         private string? ScaleId = null; | ||||||
|         private string? WeighingId = null; |         private string? WeighingId = null; | ||||||
| @@ -91,13 +92,13 @@ namespace Elwig.Windows { | |||||||
|             AllSeasonsInput.IsChecked = true; |             AllSeasonsInput.IsChecked = true; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private async void Window_Loaded(object sender, RoutedEventArgs evt) { |         private void Window_Loaded(object sender, RoutedEventArgs evt) { | ||||||
|             OnSecondPassed(null, null); |             OnSecondPassed(null, null); | ||||||
|             Timer.Start(); |             Timer.Start(); | ||||||
|             LockInputs(); |             LockInputs(); | ||||||
|             if (IsReceipt) { |             if (IsReceipt) { | ||||||
|                 NewDeliveryButton_Click(null, null); |                 NewDeliveryButton_Click(null, null); | ||||||
|                 if ((await Context.Seasons.FindAsync(Utils.CurrentYear)) == null) { |                 if ((Context.Seasons.Find(Utils.CurrentYear)) == null) { | ||||||
|                     MessageBox.Show("Die Saison für das aktuelle Jahr wurde noch nicht erstellt. Neue Lieferungen können nicht abgespeichert werden.", |                     MessageBox.Show("Die Saison für das aktuelle Jahr wurde noch nicht erstellt. Neue Lieferungen können nicht abgespeichert werden.", | ||||||
|                         "Saison noch nicht erstellt", MessageBoxButton.OK, MessageBoxImage.Error); |                         "Saison noch nicht erstellt", MessageBoxButton.OK, MessageBoxImage.Error); | ||||||
|                 } |                 } | ||||||
| @@ -147,6 +148,11 @@ namespace Elwig.Windows { | |||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void InitialInputs() { |         private void InitialInputs() { | ||||||
|  |             LastScaleError = null; | ||||||
|  |             WeighingId = null; | ||||||
|  |             ScaleId = null; | ||||||
|  |             ManualWeighingReason = null; | ||||||
|  |  | ||||||
|             ClearOriginalValues(); |             ClearOriginalValues(); | ||||||
|             ClearDefaultValues(); |             ClearDefaultValues(); | ||||||
|  |  | ||||||
| @@ -179,8 +185,8 @@ namespace Elwig.Windows { | |||||||
|             bool ch = HasChanged, v = IsValid; |             bool ch = HasChanged, v = IsValid; | ||||||
|             ResetButton.IsEnabled = ch; |             ResetButton.IsEnabled = ch; | ||||||
|             SaveButton.IsEnabled = v && ch; |             SaveButton.IsEnabled = v && ch; | ||||||
|             FinishButton.IsEnabled = v || !ch; |             FinishButton.IsEnabled = v && ch; | ||||||
|             NewDeliveryPartButton.IsEnabled = v; |             NewDeliveryPartButton.IsEnabled = v && ch; | ||||||
|             CancelCreatingButton.IsEnabled = DeliveryList.SelectedItem == null || DeliveryPartList.SelectedItem == null; |             CancelCreatingButton.IsEnabled = DeliveryList.SelectedItem == null || DeliveryPartList.SelectedItem == null; | ||||||
|         } |         } | ||||||
|  |  | ||||||
| @@ -226,6 +232,7 @@ namespace Elwig.Windows { | |||||||
|             double filterOeLt = 0; |             double filterOeLt = 0; | ||||||
|  |  | ||||||
|             var filter = TextFilter.ToList(); |             var filter = TextFilter.ToList(); | ||||||
|  |             var hasFilters = filter.Count > 0; | ||||||
|             if (filter.Count > 0) { |             if (filter.Count > 0) { | ||||||
|                 var var = await Context.WineVarieties.Select(v => v.SortId).ToListAsync(); |                 var var = await Context.WineVarieties.Select(v => v.SortId).ToListAsync(); | ||||||
|                 var qual = await Context.WineQualityLevels.Select(q => q.QualId).ToListAsync(); |                 var qual = await Context.WineQualityLevels.Select(q => q.QualId).ToListAsync(); | ||||||
| @@ -331,7 +338,8 @@ namespace Elwig.Windows { | |||||||
|                     .ToList(); |                     .ToList(); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             ControlUtils.RenewItemsSource(DeliveryList, deliveries, d => ((d as Delivery)?.Year, (d as Delivery)?.DId), DeliveryList_SelectionChanged, ControlUtils.RenewSourceDefault.IfOnly, !updateSort); |             ControlUtils.RenewItemsSource(DeliveryList, deliveries, d => ((d as Delivery)?.Year, (d as Delivery)?.DId), | ||||||
|  |                 DeliveryList_SelectionChanged, hasFilters ? ControlUtils.RenewSourceDefault.IfOnly : ControlUtils.RenewSourceDefault.None, !updateSort); | ||||||
|  |  | ||||||
|             var members = deliveries.Select(d => d.Member).DistinctBy(m => m.MgNr).ToList(); |             var members = deliveries.Select(d => d.Member).DistinctBy(m => m.MgNr).ToList(); | ||||||
|             StatusMembers.Text = $"Mitglieder: {members.Count}" + (members.Count > 0 && members.Count <= 4 ? $" ({string.Join(", ", members.Select(m => m.AdministrativeName))})" : ""); |             StatusMembers.Text = $"Mitglieder: {members.Count}" + (members.Count > 0 && members.Count <= 4 ? $" ({string.Join(", ", members.Select(m => m.AdministrativeName))})" : ""); | ||||||
| @@ -426,7 +434,7 @@ namespace Elwig.Windows { | |||||||
|             await RefreshDeliveryList(); |             await RefreshDeliveryList(); | ||||||
|             var d = DeliveryList.SelectedItem as Delivery; |             var d = DeliveryList.SelectedItem as Delivery; | ||||||
|             var y = d?.Year ?? Utils.CurrentLastSeason; |             var y = d?.Year ?? Utils.CurrentLastSeason; | ||||||
|             ControlUtils.RenewItemsSource(MemberInput, await Context.Members.Where(m => m.IsActive || !IsReceipt).OrderBy(m => m.FamilyName).ThenBy(m => m.GivenName).ToListAsync(), i => (i as Member)?.MgNr); |             ControlUtils.RenewItemsSource(MemberInput, await Context.Members.Where(m => m.IsActive || !IsCreating).OrderBy(m => m.FamilyName).ThenBy(m => m.GivenName).ToListAsync(), i => (i as Member)?.MgNr); | ||||||
|             ControlUtils.RenewItemsSource(BranchInput, await Context.Branches.OrderBy(b => b.Name).ToListAsync(), i => (i as Branch)?.ZwstId); |             ControlUtils.RenewItemsSource(BranchInput, await Context.Branches.OrderBy(b => b.Name).ToListAsync(), i => (i as Branch)?.ZwstId); | ||||||
|             ControlUtils.RenewItemsSource(WineVarietyInput, await Context.WineVarieties.OrderBy(v => v.Name).ToListAsync(), i => (i as WineVar)?.SortId); |             ControlUtils.RenewItemsSource(WineVarietyInput, await Context.WineVarieties.OrderBy(v => v.Name).ToListAsync(), i => (i as WineVar)?.SortId); | ||||||
|             ControlUtils.RenewItemsSource(AttributesInput, await Context.WineAttributes.Where(a => IsCreating || a.IsActive).OrderBy(a => a.Name).ToListAsync(), i => (i as WineAttr)?.AttrId); |             ControlUtils.RenewItemsSource(AttributesInput, await Context.WineAttributes.Where(a => IsCreating || a.IsActive).OrderBy(a => a.Name).ToListAsync(), i => (i as WineAttr)?.AttrId); | ||||||
| @@ -440,6 +448,7 @@ namespace Elwig.Windows { | |||||||
|             if (IsCreating) await UpdateLsNr(); |             if (IsCreating) await UpdateLsNr(); | ||||||
|  |  | ||||||
|             await RefreshDeliveryParts(); |             await RefreshDeliveryParts(); | ||||||
|  |             RefreshInputs(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void FocusSearchInput(object sender, RoutedEventArgs evt) { |         private void FocusSearchInput(object sender, RoutedEventArgs evt) { | ||||||
| @@ -648,12 +657,18 @@ namespace Elwig.Windows { | |||||||
|                     ScaleId = null; |                     ScaleId = null; | ||||||
|                     WeighingId = null; |                     WeighingId = null; | ||||||
|                 } |                 } | ||||||
|                 ManualWeighingReason = null; |                 LastScaleError = null; | ||||||
|                 ManualWeighingInput.IsChecked = false; |  | ||||||
|             } catch (Exception e) { |             } catch (Exception e) { | ||||||
|  |                 LastScaleError = e.Message.Split(": ")[^1]; | ||||||
|  |                 WeightInput.Text = ""; | ||||||
|  |                 ScaleId = null; | ||||||
|  |                 WeighingId = null; | ||||||
|                 MessageBox.Show($"Beim Wiegen ist ein Fehler aufgetreten:\n\n{e.Message}", "Waagenfehler", |                 MessageBox.Show($"Beim Wiegen ist ein Fehler aufgetreten:\n\n{e.Message}", "Waagenfehler", | ||||||
|                        MessageBoxButton.OK, MessageBoxImage.Error); |                        MessageBoxButton.OK, MessageBoxImage.Error); | ||||||
|             } |             } | ||||||
|  |             ManualWeighingReason = null; | ||||||
|  |             ManualWeighingInput.IsChecked = false; | ||||||
|  |             base.TextBox_TextChanged(WeightInput, null); | ||||||
|             EnableWeighingButtons(); |             EnableWeighingButtons(); | ||||||
|             UpdateButtons(); |             UpdateButtons(); | ||||||
|         } |         } | ||||||
| @@ -729,7 +744,7 @@ namespace Elwig.Windows { | |||||||
|             MemberInput.SelectedItem = valid ? Context.Members.Find(int.Parse(MgNrInput.Text)) : null; |             MemberInput.SelectedItem = valid ? Context.Members.Find(int.Parse(MgNrInput.Text)) : null; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void MemberInput_SelectionChanged(object sender, SelectionChangedEventArgs evt) { |         private void MemberInput_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) { | ||||||
|             var m = MemberInput.SelectedItem as Member; |             var m = MemberInput.SelectedItem as Member; | ||||||
|             if (m != null) MgNrInput.Text = m.MgNr.ToString(); |             if (m != null) MgNrInput.Text = m.MgNr.ToString(); | ||||||
|             MemberAddressField.Text = m?.FullAddress; |             MemberAddressField.Text = m?.FullAddress; | ||||||
| @@ -753,6 +768,7 @@ namespace Elwig.Windows { | |||||||
|             NewDeliveryPartButton.Cursor = null; |             NewDeliveryPartButton.Cursor = null; | ||||||
|             DeliveryList.SelectedItem = p?.Delivery; |             DeliveryList.SelectedItem = p?.Delivery; | ||||||
|             DeliveryPartList.SelectedItem = null; |             DeliveryPartList.SelectedItem = null; | ||||||
|  |             RefreshInputs(); | ||||||
|             InitialInputs(); |             InitialInputs(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
| @@ -768,12 +784,16 @@ namespace Elwig.Windows { | |||||||
|                 Mouse.OverrideCursor = Cursors.Wait; |                 Mouse.OverrideCursor = Cursors.Wait; | ||||||
|                 using var doc = new DeliveryNote(p.Delivery, Context); |                 using var doc = new DeliveryNote(p.Delivery, Context); | ||||||
|                 await doc.Generate(); |                 await doc.Generate(); | ||||||
|                 Mouse.OverrideCursor = Cursors.Wait; |                 Mouse.OverrideCursor = null; | ||||||
|  |                 if (App.Config.Debug) { | ||||||
|                     doc.Show(); |                     doc.Show(); | ||||||
|                 //await doc.Print(2); |                 } else { | ||||||
|  |                     await doc.Print(2); | ||||||
|  |                 } | ||||||
|             } |             } | ||||||
|             FinishButton.Cursor = null; |             FinishButton.Cursor = null; | ||||||
|             DeliveryList.SelectedItem = null; |             DeliveryList.SelectedItem = null; | ||||||
|  |             RefreshInputs(); | ||||||
|             InitInputs(); |             InitInputs(); | ||||||
|         } |         } | ||||||
|  |  | ||||||
| @@ -877,7 +897,7 @@ namespace Elwig.Windows { | |||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void WeighingManualButton_Click(object sender, RoutedEventArgs evt) { |         private void WeighingManualButton_Click(object sender, RoutedEventArgs evt) { | ||||||
|             var res = Utils.ShowManualWeighingDialog(); |             var res = Utils.ShowManualWeighingDialog(LastScaleError); | ||||||
|             if (res == null) return; |             if (res == null) return; | ||||||
|             WeightInput.Text = $"{res?.Item1:N0}"; |             WeightInput.Text = $"{res?.Item1:N0}"; | ||||||
|             ManualWeighingInput.IsChecked = true; |             ManualWeighingInput.IsChecked = true; | ||||||
| @@ -1099,8 +1119,8 @@ namespace Elwig.Windows { | |||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void ShowFinishNewPartDeliveryCancelButtons() { |         private void ShowFinishNewPartDeliveryCancelButtons() { | ||||||
|             FinishButton.IsEnabled = IsCreating && IsValid; |             FinishButton.IsEnabled = false; | ||||||
|             NewDeliveryPartButton.IsEnabled = IsCreating && IsValid; |             NewDeliveryPartButton.IsEnabled = false; | ||||||
|             CancelCreatingButton.IsEnabled = true; |             CancelCreatingButton.IsEnabled = true; | ||||||
|             FinishButton.Visibility = Visibility.Visible; |             FinishButton.Visibility = Visibility.Visible; | ||||||
|             NewDeliveryPartButton.Visibility = Visibility.Visible; |             NewDeliveryPartButton.Visibility = Visibility.Visible; | ||||||
|   | |||||||
| @@ -5,6 +5,10 @@ namespace Elwig.Windows { | |||||||
|  |  | ||||||
|         public MainWindow() { |         public MainWindow() { | ||||||
|             InitializeComponent(); |             InitializeComponent(); | ||||||
|  |             if (!App.Config.Debug) { | ||||||
|  |                 TestWindowButton.Visibility = Visibility.Hidden; | ||||||
|  |                 //QueryWindowButton.Visibility = Visibility.Hidden; | ||||||
|  |             } | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void Window_Loaded(object sender, RoutedEventArgs evt) { } |         private void Window_Loaded(object sender, RoutedEventArgs evt) { } | ||||||
|   | |||||||
| @@ -89,7 +89,8 @@ namespace Elwig.Windows { | |||||||
|                     .ToList(); |                     .ToList(); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             ControlUtils.RenewItemsSource(MemberList, members, i => (i as Member)?.MgNr, MemberList_SelectionChanged, ControlUtils.RenewSourceDefault.IfOnly, !updateSort); |             ControlUtils.RenewItemsSource(MemberList, members, i => (i as Member)?.MgNr, | ||||||
|  |                 MemberList_SelectionChanged, TextFilter.Count > 0 ? ControlUtils.RenewSourceDefault.IfOnly : ControlUtils.RenewSourceDefault.None, !updateSort); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         private void RefreshInputs(bool validate = false) { |         private void RefreshInputs(bool validate = false) { | ||||||
|   | |||||||
| @@ -2,6 +2,7 @@ | |||||||
| [general] | [general] | ||||||
| ; Only needed, if more than one branch is stored in database | ; Only needed, if more than one branch is stored in database | ||||||
| branch = Zweigstelle | branch = Zweigstelle | ||||||
|  | ;debug = true | ||||||
|  |  | ||||||
| [database] | [database] | ||||||
| ; Relative or absolute path to database file | ; Relative or absolute path to database file | ||||||
|   | |||||||
| @@ -72,14 +72,14 @@ namespace Tests { | |||||||
|         [Test] |         [Test] | ||||||
|         public void Test_SplitAddress() { |         public void Test_SplitAddress() { | ||||||
|             Assert.Multiple(() => { |             Assert.Multiple(() => { | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 1"), Is.EqualTo(("Winzerstra<EFBFBD>e", "1"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 1"), Is.EqualTo(("Winzerstraße", "1"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Auf dem Feld 12"), Is.EqualTo(("Auf dem Feld", "12"))); |                 Assert.That(Utils.SplitAddress("Auf dem Feld 12"), Is.EqualTo(("Auf dem Feld", "12"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 5a"), Is.EqualTo(("Winzerstra<EFBFBD>e", "5a"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 5a"), Is.EqualTo(("Winzerstraße", "5a"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 1-3/2"), Is.EqualTo(("Winzerstra<EFBFBD>e", "1-3/2"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 1-3/2"), Is.EqualTo(("Winzerstraße", "1-3/2"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 3/4/5"), Is.EqualTo(("Winzerstra<EFBFBD>e", "3/4/5"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 3/4/5"), Is.EqualTo(("Winzerstraße", "3/4/5"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 7/2/4/77"), Is.EqualTo(("Winzerstra<EFBFBD>e", "7/2/4/77"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 7/2/4/77"), Is.EqualTo(("Winzerstraße", "7/2/4/77"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 95b"), Is.EqualTo(("Winzerstra<EFBFBD>e", "95b"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 95b"), Is.EqualTo(("Winzerstraße", "95b"))); | ||||||
|                 Assert.That(Utils.SplitAddress("Winzerstra<EFBFBD>e 1, TOP 3"), Is.EqualTo(("Winzerstra<EFBFBD>e", "1, TOP 3"))); |                 Assert.That(Utils.SplitAddress("Winzerstraße 1, TOP 3"), Is.EqualTo(("Winzerstraße", "1, TOP 3"))); | ||||||
|             }); |             }); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user