diff --git a/Service/Import/AvisImport/Avis.cs b/Service/Import/AvisImport/Avis.cs index 5a21d831f..33f7da41f 100644 --- a/Service/Import/AvisImport/Avis.cs +++ b/Service/Import/AvisImport/Avis.cs @@ -1,11 +1,13 @@ using System; using System.Collections.Generic; +using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BeWo.Service.Import.AvisImport { + [DebuggerDisplay("{Klient} {Aktenzeichen} {Betrag}")] public class Avis { public String Klient { get; set; } diff --git a/Service/Import/AvisImport/AviseImporter.cs b/Service/Import/AvisImport/AviseImporter.cs index 7de1c283f..539a884de 100644 --- a/Service/Import/AvisImport/AviseImporter.cs +++ b/Service/Import/AvisImport/AviseImporter.cs @@ -87,6 +87,10 @@ namespace BeWo.Service.Import.AvisImport foreach (var avis in avise) { + if (avis.Klient.Contains("Noga")) + { + + } var ir = ImportAbschlagszahlung(avis, hilfeplaene); result.Add(ir); } @@ -115,6 +119,20 @@ namespace BeWo.Service.Import.AvisImport { result.Message = String.Format("GP {0} konnte nicht gefunden werden.", avis.Aktenzeichen); } + // Gibt es nur einen Hilfeplan überhaupt, dann muss nicht auf vorhandenes Start- und Enddatum geprüft werden, sonst schon + else if (allePassendenHps.Count == 1) + { + result.Message = String.Format("Es wurde kein Hilfeplan mit passendem Zeitraum gefunden."); + DateTime monatStart = new DateTime(avis.GueltigkeitsDatum.Year, avis.GueltigkeitsDatum.Month, 1); + DateTime monatEnde = monatStart.AddMonths(1); + + if (allePassendenHps[0].Start < monatEnde && allePassendenHps[0].Ende >= monatStart) + { + passenderHilfeplan = allePassendenHps[0]; + result.ResultState = ImportResultState.Success; + result.Message = ""; + } + } else { result.Message = String.Format("Es wurde kein Hilfeplan mit passendem Zeitraum gefunden."); @@ -123,7 +141,8 @@ namespace BeWo.Service.Import.AvisImport foreach (var hp in allePassendenHps) { - if (hp.Start < monatEnde && hp.Ende >= monatStart) + // Auf Jahr 1 und 9999 prüfen, weil das bei Plänen ohne Start und Enddatum gesetzt ist. Auf so einen soll NUR gebucht werden, wenn es nur diesen einen gibt + if (hp.Start.Value.Year != 1 && hp.Ende.Value.Year != 9999 && hp.Start < monatEnde && hp.Ende >= monatStart) { passenderHilfeplan = hp; result.ResultState = ImportResultState.Success; diff --git a/Service/Import/AvisImport/HilfeplanInfo.cs b/Service/Import/AvisImport/HilfeplanInfo.cs index b0f55a4bd..d998facf8 100644 --- a/Service/Import/AvisImport/HilfeplanInfo.cs +++ b/Service/Import/AvisImport/HilfeplanInfo.cs @@ -1,11 +1,13 @@ using System; using System.Collections.Generic; +using System.Diagnostics; using System.Linq; using System.Text; using BeWo.Data.Entities; namespace BeWo.Service.Import.AvisImport { + [DebuggerDisplay("{Aktenzeichen} {Start}-{Ende}")] public class HilfeplanInfo { //Auftragskonto; Buchungstag; Valutadatum; Buchungstext; Verwendungszweck; Glaeubiger ID; Mandatsreferenz; Kundenreferenz(End - to - End); Sammlerreferenz; Lastschrift Ursprungsbetrag; Auslagenersatz Ruecklastschrift;