Compare commits
8 Commits
v0.2.0
...
ba691f4d17
| Author | SHA1 | Date | |
|---|---|---|---|
| ba691f4d17 | |||
| 470f092482 | |||
| e9e4c75edd | |||
| ff1a4e7182 | |||
| 1e9cad6de7 | |||
| 62fe087598 | |||
| 7f01b85878 | |||
| a659d07db2 |
@@ -9,19 +9,16 @@ namespace Elwig.Dialogs {
|
||||
public int Weight = 0;
|
||||
public string? Reason = null;
|
||||
|
||||
public ManualWeighingDialog() {
|
||||
public ManualWeighingDialog(string? reason = null) {
|
||||
InitializeComponent();
|
||||
ReasonInput.Text = reason;
|
||||
}
|
||||
|
||||
private void ConfirmButton_Click(object sender, RoutedEventArgs evt) {
|
||||
DialogResult = true;
|
||||
Weight = int.Parse(WeightInput.Text);
|
||||
Reason = Regex.Replace(ReasonInput.Text, @"\s+", "").Trim();
|
||||
if (Reason == "") {
|
||||
Reason = null;
|
||||
} else if (!Reason.EndsWith(".") || !Reason.EndsWith("!") || !Reason.EndsWith("?")) {
|
||||
Reason += ".";
|
||||
}
|
||||
Reason = Regex.Replace(ReasonInput.Text, @"\s+", " ").Trim();
|
||||
if (Reason == "") Reason = null;
|
||||
Close();
|
||||
}
|
||||
|
||||
|
||||
@@ -14,5 +14,8 @@
|
||||
<address>@Model.Address</address>
|
||||
</div>
|
||||
<aside>@Raw(Model.Aside)</aside>
|
||||
@if (Model.ShowDateAndLocation) {
|
||||
<div class="date">@Model.Location, am @($"{Model.Date:dd.MM.yyyy}")</div>
|
||||
}
|
||||
</div>
|
||||
@RenderBody()
|
||||
|
||||
@@ -3,6 +3,8 @@ using Elwig.Models;
|
||||
namespace Elwig.Documents {
|
||||
public abstract class BusinessDocument : Document {
|
||||
|
||||
public bool ShowDateAndLocation = false;
|
||||
|
||||
public Member Member;
|
||||
public bool IncludeSender = false;
|
||||
public bool UseBillingAddress = false;
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
var bucketNum = Model.BucketNames.Length;
|
||||
}
|
||||
<main>
|
||||
<div class="date">@Model.Location, am @($"{Model.Date:dd.MM.yyyy}")</div>
|
||||
<h1>@Model.Title</h1>
|
||||
<table class="credit">
|
||||
<colgroup>
|
||||
|
||||
@@ -16,6 +16,7 @@ namespace Elwig.Documents {
|
||||
|
||||
public CreditNote(Credit c, AppDbContext ctx) : base($"Traubengutschrift Nr. {c.TgId} – {c.Payment.Variant.Name}", c.Member) {
|
||||
UseBillingAddress = true;
|
||||
ShowDateAndLocation = true;
|
||||
Credit = c;
|
||||
Aside = Aside.Replace("</table>", "") +
|
||||
$"<thead><tr><th colspan='2'>Gutschrift</th></tr></thead><tbody>" +
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
@{ Layout = "BusinessDocument"; }
|
||||
<link rel="stylesheet" href="file:///@Raw(Model.DataPath)\resources\style-deliverynote.css" />
|
||||
<main>
|
||||
<div class="date">@Model.Location, am @($"{Model.Date:dd.MM.yyyy}")</div>
|
||||
<h1>@Model.Title</h1>
|
||||
@{
|
||||
bool displayStats = true; // Model.Delivery.Year == Model.CurrentNextSeason
|
||||
@@ -127,7 +126,7 @@
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th><b>Gesamtlieferung</b> [kg]</th>
|
||||
<th><b>Lese @Model.Delivery.Year</b> per @($"{Model.Date:dd.MM.yyyy}") [kg]</th>
|
||||
<th>Lieferpflicht</th>
|
||||
<th>Lieferrecht</th>
|
||||
<th>Unterliefert</th>
|
||||
@@ -147,13 +146,14 @@
|
||||
$"<td>{sum:N0}</td>";
|
||||
}
|
||||
var sortids = Model.Delivery.Parts.Select(p => p.SortId).ToList();
|
||||
var buckets = Model.MemberBuckets.GroupBy(b => b.Item1[..2]).ToDictionary(g => g.Key, g => g.Count());
|
||||
}
|
||||
<tr>
|
||||
<th>Geschäftsanteile</th>
|
||||
<th>Gesamtlieferung</th>
|
||||
@Raw(FormatRow(Model.Member.DeliveryObligation, Model.Member.DeliveryRight, Model.Member.Deliveries.Where(d => d.Year == Model.Delivery.Year).Sum(d => d.Weight)))
|
||||
</tr>
|
||||
@foreach (var (id, name, right, obligation, sum) in Model.MemberBuckets.OrderBy(b => b.Item1)) {
|
||||
if (right > 0 && obligation > 0) {
|
||||
if (right > 0 || obligation > 0 || (sum > 0 && buckets[id[..2]] > 1)) {
|
||||
<tr class="@(sortids.Contains(id[..2]) ? "" : "optional")">
|
||||
<th>@name</th>
|
||||
@Raw(FormatRow(obligation, right, sum))
|
||||
|
||||
@@ -11,6 +11,7 @@ namespace Elwig.Documents {
|
||||
|
||||
public DeliveryNote(Delivery d, AppDbContext ctx) : base($"Traubenübernahmeschein Nr. {d.LsNr}", d.Member) {
|
||||
UseBillingAddress = true;
|
||||
ShowDateAndLocation = true;
|
||||
Delivery = d;
|
||||
Aside = Aside.Replace("</table>", "") +
|
||||
$"<thead><tr><th colspan='2'>Lieferung</th></tr></thead><tbody>" +
|
||||
|
||||
@@ -18,12 +18,14 @@
|
||||
<link rel="stylesheet" href="file:///@Raw(Model.DataPath)\resources\style-page.css"/>
|
||||
</head>
|
||||
<body>
|
||||
<div class="m1"></div>
|
||||
<div class="m2"></div>
|
||||
<div class="m3"></div>
|
||||
<div class="m1 r"></div>
|
||||
<div class="m2 r"></div>
|
||||
<div class="m3 r"></div>
|
||||
@if (Model.ShowFoldMarks) {
|
||||
<div class="m1"></div>
|
||||
<div class="m2"></div>
|
||||
<div class="m3"></div>
|
||||
<div class="m1 r"></div>
|
||||
<div class="m2 r"></div>
|
||||
<div class="m3 r"></div>
|
||||
}
|
||||
<div class="footer-wrapper">
|
||||
<div class="pre-footer">
|
||||
<span class="date">@($"{Model.Date:dddd, d. MMMM yyyy}")</span>
|
||||
|
||||
@@ -8,6 +8,8 @@ namespace Elwig.Documents {
|
||||
|
||||
private TempFile? PdfFile = null;
|
||||
|
||||
public bool ShowFoldMarks = App.Config.Debug;
|
||||
|
||||
public string DataPath;
|
||||
public int CurrentNextSeason;
|
||||
public string? DocumentId;
|
||||
@@ -22,8 +24,8 @@ namespace Elwig.Documents {
|
||||
DataPath = App.DataPath;
|
||||
CurrentNextSeason = Utils.CurrentNextSeason;
|
||||
Title = title;
|
||||
Author = App.Client.NameFull;
|
||||
Header = $"<h1>{c.Name}</h1>";
|
||||
Author = c.NameFull;
|
||||
Header = $"<div class='name'>{c.Name}</div><div class='suffix'>{c.NameSuffix}</div>";
|
||||
Footer = Utils.GenerateFooter("<br/>", " \u00b7 ")
|
||||
.Item(c.NameFull).NextLine()
|
||||
.Item(c.Address).Item($"{c.Plz} {c.Ort}").Item("Österreich").Item("Tel.", c.PhoneNr).Item("Fax", c.FaxNr).NextLine()
|
||||
|
||||
@@ -14,6 +14,13 @@
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.info-wrapper .date {
|
||||
text-align: right;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: -1.5em;
|
||||
}
|
||||
|
||||
.address-wrapper {
|
||||
height: 45mm;
|
||||
width: 85mm;
|
||||
@@ -80,7 +87,7 @@ main > *:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.main-wrapper h1, .main-wrapper p {
|
||||
main h1, .main-wrapper p {
|
||||
font-size: 12pt;
|
||||
margin: 1em 0;
|
||||
text-align: justify;
|
||||
@@ -92,12 +99,8 @@ main > *:first-child {
|
||||
hyphens: manual;
|
||||
}
|
||||
|
||||
.main-wrapper .date {
|
||||
margin-bottom: 2em;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.main-wrapper h1 {
|
||||
main h1 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
|
||||
main h1 {
|
||||
margin-bottom: 1.5em !important;
|
||||
}
|
||||
|
||||
table.delivery {
|
||||
margin-bottom: 5mm;
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ table th {
|
||||
|
||||
header {
|
||||
height: 45mm;
|
||||
padding: 5mm;
|
||||
padding: 10mm 0 0 0;
|
||||
position: absolute;
|
||||
top: -25mm;
|
||||
left: 0;
|
||||
@@ -38,9 +38,15 @@ header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
header h1 {
|
||||
header .name {
|
||||
font-size: 18pt;
|
||||
margin-top: 10mm;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
header .suffix {
|
||||
font-size: 12pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.footer-wrapper {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<UseWPF>true</UseWPF>
|
||||
<PreserveCompilationContext>true</PreserveCompilationContext>
|
||||
<ApplicationIcon>elwig.ico</ApplicationIcon>
|
||||
<Version>0.2.0</Version>
|
||||
<Version>0.2.1</Version>
|
||||
<SatelliteResourceLanguages>de-AT</SatelliteResourceLanguages>
|
||||
</PropertyGroup>
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ namespace Elwig.Helpers {
|
||||
public class Config {
|
||||
|
||||
private readonly string FileName;
|
||||
public bool Debug;
|
||||
public string DatabaseFile = App.DataPath + "database.sqlite3";
|
||||
public string? DatabaseLog = null;
|
||||
public string? Branch = null;
|
||||
@@ -49,6 +50,13 @@ namespace Elwig.Helpers {
|
||||
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();
|
||||
Scales = ScaleList;
|
||||
if (ini != null) {
|
||||
@@ -72,6 +80,7 @@ namespace Elwig.Helpers {
|
||||
using var file = new StreamWriter(FileName, false, Utils.UTF8);
|
||||
file.Write($"\r\n[general]\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");
|
||||
if (DatabaseLog != null) file.Write($"log = {DatabaseLog}\r\n");
|
||||
foreach (var s in ScaleList) {
|
||||
|
||||
@@ -219,8 +219,8 @@ namespace Elwig.Helpers {
|
||||
.Sum();
|
||||
}
|
||||
|
||||
public static (int, string?)? ShowManualWeighingDialog() {
|
||||
var d = new ManualWeighingDialog();
|
||||
public static (int, string?)? ShowManualWeighingDialog(string? reason = null) {
|
||||
var d = new ManualWeighingDialog(reason);
|
||||
return d.ShowDialog() == true ? (d.Weight, d.Reason) : null;
|
||||
}
|
||||
|
||||
|
||||
@@ -413,7 +413,7 @@ namespace Elwig.Windows {
|
||||
UpdateButtons();
|
||||
}
|
||||
|
||||
protected void TextBox_TextChanged(object sender, RoutedEventArgs evt) {
|
||||
protected void TextBox_TextChanged(object sender, RoutedEventArgs? evt) {
|
||||
var input = (TextBox)sender;
|
||||
if (SenderIsRequired(input) && input.Text.Length == 0) {
|
||||
ValidateInput(input, false);
|
||||
|
||||
@@ -272,22 +272,21 @@
|
||||
VerticalAlignment="Top" HorizontalAlignment="Left" Margin="10,75,10,10" Grid.Column="0" Grid.ColumnSpan="2"
|
||||
Checked="CheckBox_Changed" Unchecked="CheckBox_Changed"/>
|
||||
|
||||
<Button x:Name="WeighingManualButton" Content="Handwiegung" Width="120"
|
||||
Click="WeighingManualButton_Click"
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,10,10,10" Grid.Column="2"/>
|
||||
<Button x:Name="WeighingAButton" Content="Wiegen A" Width="120"
|
||||
Click="WeighingButton_Click"
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,42,10,10" Grid.Column="2"/>
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,10,10,10" Grid.Column="2"/>
|
||||
<Button x:Name="WeighingBButton" Content="Wiegen B" Width="120"
|
||||
Click="WeighingButton_Click"
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,74,10,10" Grid.Column="2"/>
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,42,10,10" Grid.Column="2"/>
|
||||
<Button x:Name="WeighingCButton" Content="Wiegen C" Width="120"
|
||||
Click="WeighingButton_Click"
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,106,10,10" Grid.Column="2"/>
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,74,10,10" Grid.Column="2"/>
|
||||
<Button x:Name="WeighingDButton" Content="Wiegen D" Width="120"
|
||||
Click="WeighingButton_Click"
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,106,10,10" Grid.Column="2"/>
|
||||
<Button x:Name="WeighingManualButton" Content="Handwiegung" Width="120"
|
||||
Click="WeighingManualButton_Click"
|
||||
VerticalAlignment="Top" HorizontalAlignment="Right" Margin="10,138,10,10" Grid.Column="2"/>
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ namespace Elwig.Windows {
|
||||
private List<string> TextFilter = new();
|
||||
private readonly RoutedCommand CtrlF = new();
|
||||
|
||||
private string? LastScaleError = null;
|
||||
private string? ManualWeighingReason = null;
|
||||
private string? ScaleId = null;
|
||||
private string? WeighingId = null;
|
||||
@@ -75,6 +76,7 @@ namespace Elwig.Windows {
|
||||
if (n >= 2) WeighingBButton.Content = $"Wiegen {App.Scales[1].ScaleId}";
|
||||
if (n >= 3) WeighingCButton.Content = $"Wiegen {App.Scales[2].ScaleId}";
|
||||
if (n >= 4) WeighingDButton.Content = $"Wiegen {App.Scales[3].ScaleId}";
|
||||
WeighingManualButton.Margin = new Thickness(10, 10 + n * 32, 10, 10);
|
||||
} else {
|
||||
WeighingManualButton.Visibility = Visibility.Hidden;
|
||||
WeighingAButton.Visibility = Visibility.Hidden;
|
||||
@@ -91,13 +93,13 @@ namespace Elwig.Windows {
|
||||
AllSeasonsInput.IsChecked = true;
|
||||
}
|
||||
|
||||
private async void Window_Loaded(object sender, RoutedEventArgs evt) {
|
||||
private void Window_Loaded(object sender, RoutedEventArgs evt) {
|
||||
OnSecondPassed(null, null);
|
||||
Timer.Start();
|
||||
LockInputs();
|
||||
if (IsReceipt) {
|
||||
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.",
|
||||
"Saison noch nicht erstellt", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
@@ -147,6 +149,11 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private void InitialInputs() {
|
||||
LastScaleError = null;
|
||||
WeighingId = null;
|
||||
ScaleId = null;
|
||||
ManualWeighingReason = null;
|
||||
|
||||
ClearOriginalValues();
|
||||
ClearDefaultValues();
|
||||
|
||||
@@ -226,6 +233,7 @@ namespace Elwig.Windows {
|
||||
double filterOeLt = 0;
|
||||
|
||||
var filter = TextFilter.ToList();
|
||||
var hasFilters = filter.Count > 0;
|
||||
if (filter.Count > 0) {
|
||||
var var = await Context.WineVarieties.Select(v => v.SortId).ToListAsync();
|
||||
var qual = await Context.WineQualityLevels.Select(q => q.QualId).ToListAsync();
|
||||
@@ -331,7 +339,8 @@ namespace Elwig.Windows {
|
||||
.ToList();
|
||||
}
|
||||
|
||||
ControlUtils.RenewItemsSource(DeliveryList, deliveries, d => ((d as Delivery)?.Year, (d as Delivery)?.DId), DeliveryList_SelectionChanged, IsCreating ? ControlUtils.RenewSourceDefault.None : 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();
|
||||
StatusMembers.Text = $"Mitglieder: {members.Count}" + (members.Count > 0 && members.Count <= 4 ? $" ({string.Join(", ", members.Select(m => m.AdministrativeName))})" : "");
|
||||
@@ -423,7 +432,6 @@ namespace Elwig.Windows {
|
||||
Menu_Export_Bki.Items.Add(i);
|
||||
}
|
||||
|
||||
// FIXME on "only one" delivery, RenewContext doees not work
|
||||
await RefreshDeliveryList();
|
||||
var d = DeliveryList.SelectedItem as Delivery;
|
||||
var y = d?.Year ?? Utils.CurrentLastSeason;
|
||||
@@ -441,6 +449,7 @@ namespace Elwig.Windows {
|
||||
if (IsCreating) await UpdateLsNr();
|
||||
|
||||
await RefreshDeliveryParts();
|
||||
RefreshInputs();
|
||||
}
|
||||
|
||||
private void FocusSearchInput(object sender, RoutedEventArgs evt) {
|
||||
@@ -649,12 +658,18 @@ namespace Elwig.Windows {
|
||||
ScaleId = null;
|
||||
WeighingId = null;
|
||||
}
|
||||
ManualWeighingReason = null;
|
||||
ManualWeighingInput.IsChecked = false;
|
||||
LastScaleError = null;
|
||||
} 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",
|
||||
MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
ManualWeighingReason = null;
|
||||
ManualWeighingInput.IsChecked = false;
|
||||
base.TextBox_TextChanged(WeightInput, null);
|
||||
EnableWeighingButtons();
|
||||
UpdateButtons();
|
||||
}
|
||||
@@ -771,8 +786,11 @@ namespace Elwig.Windows {
|
||||
using var doc = new DeliveryNote(p.Delivery, Context);
|
||||
await doc.Generate();
|
||||
Mouse.OverrideCursor = null;
|
||||
doc.Show();
|
||||
//await doc.Print(2);
|
||||
if (App.Config.Debug) {
|
||||
doc.Show();
|
||||
} else {
|
||||
await doc.Print(2);
|
||||
}
|
||||
}
|
||||
FinishButton.Cursor = null;
|
||||
DeliveryList.SelectedItem = null;
|
||||
@@ -880,7 +898,7 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private void WeighingManualButton_Click(object sender, RoutedEventArgs evt) {
|
||||
var res = Utils.ShowManualWeighingDialog();
|
||||
var res = Utils.ShowManualWeighingDialog(LastScaleError);
|
||||
if (res == null) return;
|
||||
WeightInput.Text = $"{res?.Item1:N0}";
|
||||
ManualWeighingInput.IsChecked = true;
|
||||
|
||||
@@ -5,6 +5,10 @@ namespace Elwig.Windows {
|
||||
|
||||
public MainWindow() {
|
||||
InitializeComponent();
|
||||
if (!App.Config.Debug) {
|
||||
TestWindowButton.Visibility = Visibility.Hidden;
|
||||
//QueryWindowButton.Visibility = Visibility.Hidden;
|
||||
}
|
||||
}
|
||||
|
||||
private void Window_Loaded(object sender, RoutedEventArgs evt) { }
|
||||
|
||||
@@ -89,7 +89,8 @@ namespace Elwig.Windows {
|
||||
.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) {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
[general]
|
||||
; Only needed, if more than one branch is stored in database
|
||||
branch = Zweigstelle
|
||||
;debug = true
|
||||
|
||||
[database]
|
||||
; Relative or absolute path to database file
|
||||
|
||||
@@ -72,14 +72,14 @@ namespace Tests {
|
||||
[Test]
|
||||
public void Test_SplitAddress() {
|
||||
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("Winzerstra<EFBFBD>e 5a"), Is.EqualTo(("Winzerstra<EFBFBD>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<EFBFBD>e 3/4/5"), Is.EqualTo(("Winzerstra<EFBFBD>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<EFBFBD>e 95b"), Is.EqualTo(("Winzerstra<EFBFBD>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 5a"), Is.EqualTo(("Winzerstraße", "5a")));
|
||||
Assert.That(Utils.SplitAddress("Winzerstraße 1-3/2"), Is.EqualTo(("Winzerstraße", "1-3/2")));
|
||||
Assert.That(Utils.SplitAddress("Winzerstraße 3/4/5"), Is.EqualTo(("Winzerstraße", "3/4/5")));
|
||||
Assert.That(Utils.SplitAddress("Winzerstraße 7/2/4/77"), Is.EqualTo(("Winzerstraße", "7/2/4/77")));
|
||||
Assert.That(Utils.SplitAddress("Winzerstraße 95b"), Is.EqualTo(("Winzerstraße", "95b")));
|
||||
Assert.That(Utils.SplitAddress("Winzerstraße 1, TOP 3"), Is.EqualTo(("Winzerstraße", "1, TOP 3")));
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user