internal Lieferung GetLieferungMit(string auftragNummer) { //angebot aus der datenbank rausholen Lieferung gesuchteLieferung = null; IList <Lieferung> alleLieferungen; using (var session = sessionFactory.OpenSession()) { using (session.BeginTransaction()) { //angebot aus der datenbank rausholen anhand der angebotsnummer alleLieferungen = session.CreateCriteria(typeof(Lieferung)).List <Lieferung>(); } foreach (Lieferung lieferung in alleLieferungen) { if (lieferung.AuftragId.Equals(auftragNummer)) { gesuchteLieferung = lieferung; break; } } } if (gesuchteLieferung == null) { throw new Exception("Keine Lieferung mit Auftrag.AuftragId = " + auftragNummer); } #if DEBUG Console.WriteLine("Geladen: {0}, mit AuftragNummer: {1} (gesucht {2})", gesuchteLieferung, gesuchteLieferung.AuftragId, auftragNummer); #endif return(gesuchteLieferung); }
/// <summary> /// Erstellt eine Lieferung und ein TransportAuftrag und erstellt die OneToOne beziehung zwischen /// Lieferung und TransportAuftrag /// </summary> /// <param name="auftragTyp"> Ist ein AuftragTyp</param> /// <returns>Gibt True zurück wenn das Erstellen erfolgreich war </returns> internal bool AuslieferungTransportErstellen(AuftragTyp auftragTyp) { Lieferung lieferung = this.auslieferungsVerwalter.LieferungErstellen(this.NeueLieferungNummer(), auftragTyp.AuftragId); TransportAuftrag transportAuftrag = this.transportAuftragsVerwalter.TransportErstellen(this.NeueTransportAuftragsNummer(), auftragTyp.LetzterPostenLieferbar, transportDienstleister, lieferung); lieferung.setzeTransportAuftrag(transportAuftrag); return(true); }
internal void HoleErfolgreicheLieferungenVonTransportdiensleisterUndSetzeBeiIhnenAusgeliefertAufTrue() { IList <string> auftragsNummern = this.transportdienstleisterManager.GetAusgelieferteAufträgeVonGestern(); foreach (string auftragsNummer in auftragsNummern) { Lieferung lieferung = this.auslieferungsVerwalter.GetLieferungMit(auftragsNummer); lieferung.LieferungErfolgt = true; } }
/// <summary> /// Erstellt eine Lieferung /// </summary> /// <param name="lieferungNummer"> Ist eine Nummer die auf genau eine Lieferung verweist</param> /// <returns> Gibt eine Lieferung zurück</returns> internal Lieferung LieferungErstellen(int lieferungNummer, string auftragId) { Lieferung lieferung = new Lieferung(lieferungNummer, auftragId); //persist the new angebot using (ISession session = sessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { #if DEBUG Console.WriteLine("Speichern von: {0}", lieferung); #endif session.Save(lieferung); transaction.Commit(); } } return(lieferung); }
/// <summary> /// Erstellt ein TransportAuftrag /// </summary> /// <param name="transportAuftragNummer"></param> /// <param name="lieferDatum"></param> /// <param name="transportDienstleister">Ist ein String der den transportDienstleister darstellt </param> /// <param name="lieferung">Es wird eine Entität von Liefertung erwartet</param> /// <returns></returns> internal TransportAuftrag TransportErstellen(int transportAuftragNummer, DateTime lieferDatum, string transportDienstleister, Lieferung lieferung) { TransportAuftrag transportAuftrag = new TransportAuftrag(transportAuftragNummer, lieferDatum, transportDienstleister, lieferung); //persist the new angebot using (ISession session = sessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { #if DEBUG Console.WriteLine("Speichern von: {0}", transportAuftrag); #endif session.Save(transportAuftrag); transaction.Commit(); } } return(transportAuftrag); }
internal bool istLieferungErfolgtFür(string auftragNummer) { Lieferung lieferung = this.auslieferungsVerwalter.GetLieferungMit(auftragNummer); return(lieferung.LieferungErfolgt); }