/// <summary> /// stellt einen Auftrag aus den Werten der Eingabeelemente zusammen /// und speichert ihn /// </summary> private bool SpeichereAuftrag() { // erstelle einen neuen Auftrag Cdv_Erkundungsbefehl neuerAuftrag = new Cdv_Erkundungsbefehl(); neuerAuftrag.ID = 0; // Abfassungsdatum: wähle JETZT oder das angebene Datum if (this.cbx_AbfassungsdatumJetzt.Checked) neuerAuftrag.Abfassungsdatum = DateTime.Now; else neuerAuftrag.Abfassungsdatum = this.dtp_AbfassungsDatum.Value; // Absender neuerAuftrag.Absender = this.txt_Absender.Text; // Ausführungszeitpunkt: wähle JETZT oder das angebene Datum if (this.cbx_AusfuehrungszeitpunktJetzt.Checked) neuerAuftrag.Ausfuehrungszeitpunkt = DateTime.Now; else neuerAuftrag.Ausfuehrungszeitpunkt = this.dtp_Ausfuehrungszeitpunkt.Value; // spätester Ausführungszeitpunkt: wähle JETZT oder das angebene Datum if (this.cbx_spaetesterErfuellungszeitpunktJetzt.Checked) neuerAuftrag.SpaetesterErfuellungszeitpunkt = DateTime.Now; else neuerAuftrag.SpaetesterErfuellungszeitpunkt= this.dtp_Auftrag_spaetesterErfuellungszeitpunkt.Value; // Bearbeiter neuerAuftrag.BearbeiterBenutzerID = this._stMAT.HoleAktuellenBenutzer().ID; // Benutzerempfänger if (cmb_Benutzerempfaenger.SelectedIndex != -1) { neuerAuftrag.EmpfaengerBenutzerID = ((Cdv_Benutzer) this._stMAT.AlleBenutzer[cmb_Benutzerempfaenger.SelectedIndex]).ID; neuerAuftrag.IstInToDoListe = true; } // EmpfängerKräfteMenge ArrayList IDMenge = this.HoleAlleAusgewaehltenEmpfaengerIDs(this.tvw_Auftrag_AuftragsEmpfaenger.Nodes); int[] IDMengeINT = (int[]) IDMenge.ToArray(typeof(int)); neuerAuftrag.EmpfaengerMengeKraftID = IDMengeINT; // Übermittlungsart neuerAuftrag.Uebermittlungsart = (pELS.Tdv_Uebermittlungsart) this.cmb_UebermittlungsArt.SelectedItem; //Übermittlung // Übermittlungsdatum: wähle JETZT oder das angebene Datum if((neuerAuftrag.IstUebermittelt = this.cbx_IstUebermittelt.Checked)== true) { if (this.cbx_UebermittlungszeitpunktJetzt.Checked) neuerAuftrag.Uebermittlungsdatum = DateTime.Now; else neuerAuftrag.Uebermittlungsdatum = this.dtp_Uebermittlungsdatum.Value; } else { neuerAuftrag.Uebermittlungsdatum = DateTimePicker.MaxDateTime; } // Text neuerAuftrag.Text = this.txt_Auftrag_Auftragstext.Text; // Nachverfolgen neuerAuftrag.WirdNachverfolgt = this.cbx_Auftrag_nachverfolgen.Checked; // ermittle, ob es sich um einen Befehl handelt if ((this.cmb_Befehlsart.SelectedIndex != 0) && (this.cmb_Befehlsart.SelectedIndex != -1)) { neuerAuftrag.IstBefehl = true; // ermittle, ob es sich um einen Erkundungsbefehl handelt Tdv_BefehlArt aktuelleEBArt = new Tdv_BefehlArt(); aktuelleEBArt = PruefeErkundungsbefehl(); if (Enum.IsDefined(typeof(Tdv_BefehlArt),aktuelleEBArt)) { neuerAuftrag.BefehlsArt = aktuelleEBArt; this._stMAT.SpeichereErkundungsbefehl(neuerAuftrag); } } else { neuerAuftrag.IstBefehl = false; this._stMAT.SpeichereAuftrag(neuerAuftrag); } _zuletztGespeicherteMitteilung = neuerAuftrag; // TODO: prüfen, ob speichern erfolgreich return true; }
/// <summary> /// stellt einen Auftrag aus den Werten der Eingabeelemente zusammen /// und speichert ihn /// </summary> protected bool SpeichereAuftrag() { // erstelle einen neuen Auftrag Cdv_Auftrag neuerAuftrag = new Cdv_Auftrag(); neuerAuftrag.ID = _aktuelleMitteilungsID; // falls laufende Nummer bereits vergeben wurde if (this.lbl_laufendeNummer.Text != "") neuerAuftrag.LaufendeNummer = Convert.ToInt16(this.lbl_laufendeNummer.Text.Remove(0,1)); // Abfassungsdatum: wähle JETZT oder das angebene Datum if (this.cbx_AbfassungsdatumJetzt.Checked) neuerAuftrag.Abfassungsdatum = DateTime.Now; else neuerAuftrag.Abfassungsdatum = this.dtp_AbfassungsDatum.Value; // Absender neuerAuftrag.Absender = this.txt_Absender.Text; // Ausführungszeitpunkt: wähle JETZT oder das angebene Datum if (this.cbx_AusfuehrungszeitpunktJetzt.Checked) neuerAuftrag.Ausfuehrungszeitpunkt = DateTime.Now; else neuerAuftrag.Ausfuehrungszeitpunkt = this.dtp_Ausfuehrungszeitpunkt.Value; // spätester Ausführungszeitpunkt: wähle JETZT oder das angebene Datum if (this.cbx_spaetesterErfuellungszeitpunktJetzt.Checked) neuerAuftrag.SpaetesterErfuellungszeitpunkt = DateTime.Now; else neuerAuftrag.SpaetesterErfuellungszeitpunkt= this.dtp_spaetesterErfuellungszeitpunkt.Value; // Bearbeiter neuerAuftrag.BearbeiterBenutzerID = ((Cdv_Benutzer) this._st_Funk.HoleAktuellenBenutzer()).ID; // Benutzerempfänger if (cmb_Benutzerempfaenger.SelectedIndex != -1) { neuerAuftrag.EmpfaengerBenutzerID = ((Cdv_Benutzer) this._st_Funk._AlleBenutzer[cmb_Benutzerempfaenger.SelectedIndex]).ID; neuerAuftrag.IstInToDoListe = true; } // EmpfängerKräfteMenge ArrayList IDMenge = this.HoleAlleAusgewaehltenEmpfaengerIDs(this.tvw_AuftragsEmpfaenger.Nodes); int[] IDMengeINT = (int[]) IDMenge.ToArray(typeof(int)); neuerAuftrag.EmpfaengerMengeKraftID = IDMengeINT; //Übermittlung neuerAuftrag.IstUebermittelt = this.cbx_IstUebermittelt.Checked; // Übermittlungsart neuerAuftrag.Uebermittlungsart = (pELS.Tdv_Uebermittlungsart) this.cmb_Uebermittlungsart.SelectedItem; // Übermittlungsdatum: wähle JETZT oder das angebene Datum if (this.cbx_UebermittlungszeitpunktJetzt.Checked) neuerAuftrag.Uebermittlungsdatum = DateTime.Now; else neuerAuftrag.Uebermittlungsdatum = this.dtp_Uebermittlungsdatum.Value; // Text neuerAuftrag.Text = this.txt_Auftragstext.Text; // Nachverfolgen neuerAuftrag.WirdNachverfolgt = this.cbx_nachverfolgen.Checked; // ermittle, ob es sich um einen Befehl handelt if ((this.cmb_Befehlsart.SelectedIndex != 0) && (this.cmb_Befehlsart.SelectedIndex != -1)) { neuerAuftrag.IstBefehl = true; // ermittle, ob es sich um einen Erkundungsbefehl handelt Tdv_BefehlArt aktuelleEBArt = new Tdv_BefehlArt(); aktuelleEBArt = PruefeErkundungsbefehl(); #region kopiere Daten aus Auftrag nach erkundungsbefehl Cdv_Erkundungsbefehl neuerErkundungsbefehl = new Cdv_Erkundungsbefehl( neuerAuftrag.Text, neuerAuftrag.Abfassungsdatum, neuerAuftrag.Absender, neuerAuftrag.Uebermittlungsart, neuerAuftrag.WirdNachverfolgt, aktuelleEBArt, neuerAuftrag.IstInToDoListe, neuerAuftrag.BearbeiterBenutzerID); neuerErkundungsbefehl.Ausfuehrungszeitpunkt = neuerAuftrag.Ausfuehrungszeitpunkt; neuerErkundungsbefehl.EmpfaengerBenutzerID = neuerAuftrag.EmpfaengerBenutzerID; neuerErkundungsbefehl.EmpfaengerMengeKraftID = neuerAuftrag.EmpfaengerMengeKraftID; neuerErkundungsbefehl.ID = neuerAuftrag.ID; neuerErkundungsbefehl.IstBefehl = neuerAuftrag.IstBefehl; if (Enum.IsDefined(typeof(Tdv_BefehlArt),aktuelleEBArt)) { neuerErkundungsbefehl.BefehlsArt = aktuelleEBArt; } neuerErkundungsbefehl.IstInToDoListe = neuerAuftrag.IstInToDoListe; neuerErkundungsbefehl.IstUebermittelt = neuerAuftrag.IstUebermittelt; neuerErkundungsbefehl.Uebermittlungsdatum = neuerAuftrag.Uebermittlungsdatum; neuerErkundungsbefehl.SpaetesterErfuellungszeitpunkt = neuerAuftrag.SpaetesterErfuellungszeitpunkt; neuerErkundungsbefehl.Text = neuerAuftrag.Text; neuerErkundungsbefehl.Uebermittlungsart = neuerAuftrag.Uebermittlungsart; neuerErkundungsbefehl.WirdNachverfolgt = neuerAuftrag.WirdNachverfolgt; this._st_Funk.SpeichereAuftrag(neuerErkundungsbefehl); #endregion } else { neuerAuftrag.IstBefehl = false; neuerAuftrag = this._st_Funk.SpeichereAuftrag(neuerAuftrag); } _zuletztGespeicherteMitteilung = neuerAuftrag; // TODO: prüfen, ob speichern erfolgreich return true; }
/// <summary> /// Nimmt alle MussFelder und belegt diese beim Erzeugen des Objektes /// /// Bis auf die Befehlsart deckt sich die Signatur mit Cdv_Auftrag. /// </summary> /// <param name="pin_Text">Belegt Erkundungsbefehl.Text</param> /// <param name="pin_Abfassungsdatum">Zeitpunkt der Abfassung</param> /// <param name="pin_Absender">Absender des Befehls</param> /// <param name="pin_Uebermittlungsart">Tdv_UebermittlungsArt des Erkundungsbefehl</param> /// <param name="pin_wirdNachverfolgt">true, wenn der Erkundungsbefehl nachverfolgt werden soll(empfehlenswert), sonst false</param> /// <param name="pin_Befehlsart">Tdv_Befehlsart des Befehls</param> /// <param name="pin_Befehlsart">Tdv_Befehlsart des Befehls</param> /// <param name="pin_ZeigeInToDoListe">true-> Erkundungsbefehl wird in der ToDoListe des Empfaengers Angezeigt (falls EmpfaengerBenutzerID gesetzt)</param> public Cdv_Erkundungsbefehl(string pin_Text, DateTime pin_Abfassungsdatum, string pin_Absender, Tdv_Uebermittlungsart pin_Uebermittlungsart, bool pin_wirdNachverfolgt, Tdv_BefehlArt pin_Befehlsart, bool pin_ZeigeInToDoListe, int pin_BearbeiterID) : base(pin_Text,pin_Abfassungsdatum,pin_Absender,pin_Uebermittlungsart,pin_wirdNachverfolgt,pin_ZeigeInToDoListe,pin_BearbeiterID) { this.BefehlsArt = pin_Befehlsart; }