/// <summary> /// Prüft eine Seminarbuchung und sorgt für die notwendigen Plausibilitäten (z.B. Anlage Ansprechpartner etc.) /// </summary> /// <param name="seminarbuchung">Seminarbuchung</param> private void validateSeminarbuchung(Seminarbuchung seminarbuchung) { if (SeminarData.KontokorrentExists(Mandant, seminarbuchung.Konto, true)) { var konto = SeminarData.GetKunde(Mandant, seminarbuchung.Konto); if (seminarbuchung.Adresse == 0) { seminarbuchung.Adresse = konto.Adresse; } if (string.IsNullOrWhiteSpace(seminarbuchung.KontoMatchcode)) { seminarbuchung.KontoMatchcode = konto.Matchcode; } var ansprechpartner = this.CreateOrGetAnsprechpartner(seminarbuchung.Adresse, seminarbuchung.AnsprechpartnerNachname, seminarbuchung.AnsprechpartnerVorname, seminarbuchung.AnsprechpartnerEmail); seminarbuchung.Ansprechpartnernummer = ansprechpartner.Nummer; var seminartermin = this._seminarManager.GetSeminartermin(seminarbuchung.SeminarterminID); if (seminartermin.AnzahlTeilnehmer.GetValueOrDefault() >= seminartermin.AnzahlTeilnehmerMax) { throw new BuchungValidationException(Properties.Resources.BuchungValidationSeminarterminSoldOut); } } else { throw new BuchungValidationException(Properties.Resources.BuchungValidationException); } }
public void Test_SeminarData_KontokorrentExists() { var test1 = SeminarData.KontokorrentExists(_mandant, "D100000", true); Assert.IsTrue(test1); var test2 = SeminarData.KontokorrentExists(_mandant, "Dieses kOnto gibt es nicht", true); Assert.IsFalse(test2); }