public static void InitializeTests(TestContext testContext) { log4net.Config.XmlConfigurator.Configure(); PersistenceServicesFactory.CreateSimpleMySQLPersistenceService(out persistenceService, out transactionService); var timeServicesMock = new Mock<ITimeServices>(); //// Wir müssen einen fixen Zeitpunkt simulieren, ansonsten sind bei der Ausführung/Planung evtl. die Verträge oder Angebote abgelaufen timeServicesMock.Setup(ts => ts.Now) .Returns(DateTime.Parse("31.08.2013 12:00")); transportnetzServices = new TransportnetzKomponenteFacade(); auftragsServices = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); IAuftragServicesFürTransportplanung auftragsServicesFürTransportplanung = auftragsServices as IAuftragServicesFürTransportplanung; frachtfuehrerServicesMock = new Mock<IFrachtfuehrerServicesFürUnterbeauftragung>(); IUnterbeauftragungServices unterbeauftragungsServices = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServicesMock.Object); transportplanungsServices = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungsServices as IUnterbeauftragungServicesFürTransportplanung, transportnetzServices as ITransportnetzServicesFürTransportplanung, timeServicesMock.Object); auftragsServicesFürTransportplanung.RegisterTransportplanungServiceFürAuftrag(transportplanungsServices as ITransportplanungServicesFürAuftrag); hamburgLokation = new LokationDTO("Hamburg", TimeSpan.Parse("10"), 10); bremerhavenLokation = new LokationDTO("Bremerhaven", TimeSpan.Parse("15"), 15); transportnetzServices.CreateLokation(ref hamburgLokation); transportnetzServices.CreateLokation(ref bremerhavenLokation); hh_bhv = new TransportbeziehungDTO(hamburgLokation, bremerhavenLokation); transportnetzServices.CreateTransportbeziehung(ref hh_bhv); FrachtfuehrerDTO frfHH_BHV = new FrachtfuehrerDTO(); unterbeauftragungsServices.CreateFrachtfuehrer(ref frfHH_BHV); FrachtfuehrerRahmenvertragDTO frv_hh_bhv = new FrachtfuehrerRahmenvertragDTO(); frv_hh_bhv.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_hh_bhv.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_hh_bhv.Abfahrtszeiten = new System.Collections.Generic.List<StartzeitDTO>() { new StartzeitDTO() { Wochentag = DayOfWeek.Tuesday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Wednesday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Friday, Uhrzeit = 8 } }; frv_hh_bhv.KapazitaetTEU = 4; frv_hh_bhv.KostenFix = 1000; frv_hh_bhv.KostenProTEU = 100; frv_hh_bhv.KostenProFEU = 200; frv_hh_bhv.FuerTransportAufTransportbeziehung = hh_bhv.TbNr; frv_hh_bhv.Frachtfuehrer = frfHH_BHV; frv_hh_bhv.Zeitvorgabe = TimeSpan.Parse("2"); // 2 Tage unterbeauftragungsServices.CreateFrachtfuehrerRahmenvertrag(ref frv_hh_bhv); }
public static void InitializeTests(TestContext testContext) { log4net.Config.XmlConfigurator.Configure(); PersistenceServicesFactory.CreateSimpleMySQLPersistenceService(out persistenceService, out transactionService); var timeServicesMock = new Mock<ITimeServices>(); //// Wir müssen einen fixen Zeitpunkt simulieren, ansonsten sind bei der Ausführung/Planung evtl. die Verträge oder Angebote abgelaufen timeServicesMock.Setup(ts => ts.Now) .Returns(DateTime.Parse("31.08.2013 12:00")); transportnetzServices = new TransportnetzKomponenteFacade(); auftragsServices = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); IAuftragServicesFürTransportplanung auftragsServicesFürTransportplanung = auftragsServices as IAuftragServicesFürTransportplanung; frachtfuehrerServices = new FrachtfuehrerAdapterFacade(ref buchhaltungServices); bankServicesFuerBuchhaltung = new BankAdapterFacade(); geschaeftspartnerServices = new GeschaeftspartnerKomponenteFacade(persistenceService, transactionService); IGeschaeftspartnerServicesFuerPDFErzeugung geschaeftspartnerServicesFuerPDFErzeugung = new GeschaeftspartnerKomponenteFacade(persistenceService, transactionService); IPDFErzeugungsServicesFuerBuchhaltung pDFErzeugungsServicesFuerBuchhaltung = new PDFErzeugungKomponenteFacade(geschaeftspartnerServicesFuerPDFErzeugung); unterbeauftragungsServices = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServices); IUnterbeauftragungServicesFuerBuchhaltung unterbeauftragungsServicesFuerBuchhaltung = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServices); IUnterbeauftragungServicesFürTransportplanung unterbeauftragungServicesFürTransportplanung = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServices); ITransportnetzServicesFürTransportplanung transportnetzServicesFürTransportplanung = new TransportnetzKomponenteFacade(); transportplanungsServices = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); ITransportplanServicesFuerBuchhaltung transportplanServicesFuerBuchhaltung = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); IAuftragServicesFuerBuchhaltung auftragServicesFuerBuchhaltung = auftragsServices as IAuftragServicesFuerBuchhaltung; buchhaltungServices = new BuchhaltungKomponenteFacade( persistenceService, transactionService, unterbeauftragungsServicesFuerBuchhaltung, bankServicesFuerBuchhaltung, transportplanServicesFuerBuchhaltung, auftragServicesFuerBuchhaltung, geschaeftspartnerServices, pDFErzeugungsServicesFuerBuchhaltung); ITransportplanungServicesFürAuftrag transportplanungServicesFürAuftrag = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); auftragsServicesFürTransportplanung.RegisterTransportplanungServiceFürAuftrag(transportplanungServicesFürAuftrag); transportplanungsServicesFuerSendung = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); hamburgLokation = new LokationDTO("Hamburg", TimeSpan.Parse("10"), 10); bremerhavenLokation = new LokationDTO("Bremerhaven", TimeSpan.Parse("15"), 15); shanghaiLokation = new LokationDTO("Shanghai", TimeSpan.Parse("10"), 10); transportnetzServices.CreateLokation(ref hamburgLokation); transportnetzServices.CreateLokation(ref bremerhavenLokation); transportnetzServices.CreateLokation(ref shanghaiLokation); hh_bhv = new TransportbeziehungDTO(hamburgLokation, bremerhavenLokation); bhv_sh = new TransportbeziehungDTO(bremerhavenLokation, shanghaiLokation); transportnetzServices.CreateTransportbeziehung(ref hh_bhv); transportnetzServices.CreateTransportbeziehung(ref bhv_sh); FrachtfuehrerDTO frfHH_BHV = new FrachtfuehrerDTO(); unterbeauftragungsServices.CreateFrachtfuehrer(ref frfHH_BHV); FrachtfuehrerRahmenvertragDTO frv_hh_bhv = new FrachtfuehrerRahmenvertragDTO(); frv_hh_bhv.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_hh_bhv.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_hh_bhv.Abfahrtszeiten = new System.Collections.Generic.List<StartzeitDTO>() { new StartzeitDTO() { Wochentag = DayOfWeek.Tuesday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Wednesday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Friday, Uhrzeit = 8 } }; frv_hh_bhv.KapazitaetTEU = 2; frv_hh_bhv.KostenFix = 1000; frv_hh_bhv.KostenProTEU = 100; frv_hh_bhv.KostenProFEU = 200; frv_hh_bhv.FuerTransportAufTransportbeziehung = hh_bhv.TbNr; frv_hh_bhv.Frachtfuehrer = frfHH_BHV; frv_hh_bhv.Zeitvorgabe = TimeSpan.Parse("2"); // 2 Tage unterbeauftragungsServices.CreateFrachtfuehrerRahmenvertrag(ref frv_hh_bhv); FrachtfuehrerDTO frfBHV = new FrachtfuehrerDTO(); unterbeauftragungsServices.CreateFrachtfuehrer(ref frfBHV); FrachtfuehrerRahmenvertragDTO frv_bhv_sh = new FrachtfuehrerRahmenvertragDTO(); frv_bhv_sh.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_bhv_sh.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_bhv_sh.Abfahrtszeiten = new System.Collections.Generic.List<StartzeitDTO>() { new StartzeitDTO() { Wochentag = DayOfWeek.Monday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Thursday, Uhrzeit = 10 }, new StartzeitDTO() { Wochentag = DayOfWeek.Saturday, Uhrzeit = 8 } }; frv_bhv_sh.KapazitaetTEU = 4; frv_bhv_sh.KostenFix = 2000; frv_bhv_sh.KostenProTEU = 200; frv_bhv_sh.KostenProFEU = 400; frv_bhv_sh.FuerTransportAufTransportbeziehung = bhv_sh.TbNr; frv_bhv_sh.Frachtfuehrer = frfBHV; frv_bhv_sh.Zeitvorgabe = TimeSpan.Parse("5"); // 5 Tage unterbeauftragungsServices.CreateFrachtfuehrerRahmenvertrag(ref frv_bhv_sh); IList<LokationDTO> lokationen = new List<LokationDTO>(); lokationen.Add(hh_bhv.Start); lokationen.Add(hh_bhv.Ziel); lokationen.Add(bhv_sh.Start); lokationen.Add(bhv_sh.Ziel); ITransportplanungServicesFuerSendung transportplanungServicesFuerSendung = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); buchhaltungServiceFuerSendung = new BuchhaltungKomponenteFacade( persistenceService, transactionService, unterbeauftragungsServicesFuerBuchhaltung, bankServicesFuerBuchhaltung, transportplanServicesFuerBuchhaltung, auftragServicesFuerBuchhaltung, geschaeftspartnerServices, pDFErzeugungsServicesFuerBuchhaltung); SendungKomponenteFacade sendungKomponenteFacade = new SendungKomponenteFacade( persistenceService, transactionService, transportplanungServicesFuerSendung, auftragsServices, buchhaltungServiceFuerSendung); sendungServices = sendungKomponenteFacade; ISendungServicesfürLokationsAdapter sendungServicesfürLokationsAdapter = sendungKomponenteFacade; lokationAdapter = new LokationsApaterFacade(sendungServicesfürLokationsAdapter, lokationen); bankAdapter = new BankAdapterFacade(); IBuchhaltungsServicesFuerBank buchhaltungServiceFuerBank = new BuchhaltungKomponenteFacade( persistenceService, transactionService, unterbeauftragungsServicesFuerBuchhaltung, bankServicesFuerBuchhaltung, transportplanServicesFuerBuchhaltung, auftragServicesFuerBuchhaltung, geschaeftspartnerServices, pDFErzeugungsServicesFuerBuchhaltung); bankAdapter.SetzeBuchhaltungServiceFuerBank(buchhaltungServiceFuerBank); auftragServicesFürTransportplanung = auftragsServices as IAuftragServicesFürTransportplanung; }
private static void BefuelleDatenbank() { IPersistenceServices persistenceService = null; ITransactionServices transactionService = null; ITransportplanungServices transportplanungsServices = null; IAuftragServices auftragsServices = null; IUnterbeauftragungServices unterbeauftragungsServices = null; ITransportnetzServices transportnetzServices = null; IFrachtfuehrerServicesFürUnterbeauftragung frachtfuehrerServices = null; LokationDTO hamburgLokation; LokationDTO bremerhavenLokation; LokationDTO shanghaiLokation; TransportbeziehungDTO hh_bhv; TransportbeziehungDTO bhv_sh; log4net.Config.XmlConfigurator.Configure(); PersistenceServicesFactory.CreateSimpleMySQLPersistenceService(out persistenceService, out transactionService); var timeServicesMock = new Mock<ITimeServices>(); //// Wir müssen einen fixen Zeitpunkt simulieren, ansonsten sind bei der Ausführung/Planung evtl. die Verträge oder Angebote abgelaufen timeServicesMock.Setup(ts => ts.Now) .Returns(DateTime.Parse("31.08.2013 12:00")); transportnetzServices = new TransportnetzKomponenteFacade(); auftragsServices = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); IAuftragServicesFürTransportplanung auftragsServicesFürTransportplanung = auftragsServices as IAuftragServicesFürTransportplanung; ////frachtfuehrerServices = new FrachtfuehrerAdapterFacade(); unterbeauftragungsServices = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServices); transportplanungsServices = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungsServices as IUnterbeauftragungServicesFürTransportplanung, transportnetzServices as ITransportnetzServicesFürTransportplanung, timeServicesMock.Object); auftragsServicesFürTransportplanung.RegisterTransportplanungServiceFürAuftrag(transportplanungsServices as ITransportplanungServicesFürAuftrag); hamburgLokation = new LokationDTO("Hamburg", TimeSpan.Parse("10"), 10); bremerhavenLokation = new LokationDTO("Bremerhaven", TimeSpan.Parse("15"), 15); shanghaiLokation = new LokationDTO("Shanghai", TimeSpan.Parse("10"), 10); transportnetzServices.CreateLokation(ref hamburgLokation); transportnetzServices.CreateLokation(ref bremerhavenLokation); transportnetzServices.CreateLokation(ref shanghaiLokation); hh_bhv = new TransportbeziehungDTO(hamburgLokation, bremerhavenLokation); bhv_sh = new TransportbeziehungDTO(bremerhavenLokation, shanghaiLokation); transportnetzServices.CreateTransportbeziehung(ref hh_bhv); transportnetzServices.CreateTransportbeziehung(ref bhv_sh); FrachtfuehrerDTO frfHH_BHV = new FrachtfuehrerDTO(); unterbeauftragungsServices.CreateFrachtfuehrer(ref frfHH_BHV); FrachtfuehrerRahmenvertragDTO frv_hh_bhv = new FrachtfuehrerRahmenvertragDTO(); frv_hh_bhv.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_hh_bhv.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_hh_bhv.Abfahrtszeiten = new System.Collections.Generic.List<StartzeitDTO>() { new StartzeitDTO() { Wochentag = DayOfWeek.Tuesday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Wednesday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Friday, Uhrzeit = 8 } }; frv_hh_bhv.KapazitaetTEU = 2; frv_hh_bhv.KostenFix = 1000; frv_hh_bhv.KostenProTEU = 100; frv_hh_bhv.KostenProFEU = 200; frv_hh_bhv.FuerTransportAufTransportbeziehung = hh_bhv.TbNr; frv_hh_bhv.Frachtfuehrer = frfHH_BHV; frv_hh_bhv.Zeitvorgabe = TimeSpan.Parse("2"); // 2 Tage unterbeauftragungsServices.CreateFrachtfuehrerRahmenvertrag(ref frv_hh_bhv); FrachtfuehrerDTO frfBHV = new FrachtfuehrerDTO(); unterbeauftragungsServices.CreateFrachtfuehrer(ref frfBHV); FrachtfuehrerRahmenvertragDTO frv_bhv_sh = new FrachtfuehrerRahmenvertragDTO(); frv_bhv_sh.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_bhv_sh.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_bhv_sh.Abfahrtszeiten = new System.Collections.Generic.List<StartzeitDTO>() { new StartzeitDTO() { Wochentag = DayOfWeek.Monday, Uhrzeit = 8 }, new StartzeitDTO() { Wochentag = DayOfWeek.Thursday, Uhrzeit = 10 }, new StartzeitDTO() { Wochentag = DayOfWeek.Saturday, Uhrzeit = 8 } }; frv_bhv_sh.KapazitaetTEU = 4; frv_bhv_sh.KostenFix = 2000; frv_bhv_sh.KostenProTEU = 200; frv_bhv_sh.KostenProFEU = 400; frv_bhv_sh.FuerTransportAufTransportbeziehung = bhv_sh.TbNr; frv_bhv_sh.Frachtfuehrer = frfBHV; frv_bhv_sh.Zeitvorgabe = TimeSpan.Parse("5"); // 5 Tage unterbeauftragungsServices.CreateFrachtfuehrerRahmenvertrag(ref frv_bhv_sh); SendungsanfrageDTO saDTO = new SendungsanfrageDTO(); SendungspositionDTO sp1 = new SendungspositionDTO(); saDTO.Sendungspositionen.Add(sp1); saDTO.AbholzeitfensterStart = DateTime.Parse("01.09.2013"); saDTO.AbholzeitfensterEnde = DateTime.Parse("10.09.2013"); saDTO.AngebotGültigBis = DateTime.Now.AddHours(1); saDTO.StartLokation = hamburgLokation.LokNr; saDTO.ZielLokation = shanghaiLokation.LokNr; auftragsServices.CreateSendungsanfrage(ref saDTO); auftragsServices.PlaneSendungsanfrage(saDTO.SaNr); List<TransportplanDTO> pläne = transportplanungsServices.FindTransportplaeneZuSendungsanfrage(saDTO.SaNr); TransportplanDTO planÜberBhv = pläne.Find((plan) => { return plan.TransportplanSchritte.ToList().Find((tps) => { TransportAktivitaetDTO ta = tps as TransportAktivitaetDTO; if (ta != null) { return ta.FuerTransportAufTransportbeziehung == hh_bhv.TbNr; } else { return false; } }) != null; }); for (int i = 0; i < 5; i++) { FrachtauftragDTO faDTO = new FrachtauftragDTO() { FrachtfuehrerRahmenvertrag = frv_bhv_sh, PlanEndezeit = new DateTime(), PlanStartzeit = new DateTime(), VerwendeteKapazitaetFEU = 5, VerwendeteKapazitaetTEU = 5 }; unterbeauftragungServices.SpeichereFrachtauftrag(ref faDTO); } }