/// <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; }
public override IPelsObject[] LadeAusDerDB() { // Reader, der Daten aufnimmt (ACHTUNG: Nimmt Auftraege und Erkundungsbefehle auf!) NpgsqlDataReader dreader_auftrag_erg; NpgsqlDataReader dreader_empfaenger_erg; // Zum initialisieren des Pels-Objekt-Arrays int i_anzahlZeilen, i_anzahlZeilen2 = 0; // Select String str_SELECTAnfrage = "Select * from \"Auftraege\""; // Zugriff auf DB dreader_auftrag_erg = db.AusfuehrenSelectAnfrage(str_SELECTAnfrage, out i_anzahlZeilen); // Objekte-Behälter für die Ergebnisse Cdv_Auftrag[] auftraege_erg = new Cdv_Auftrag[i_anzahlZeilen]; int i = 0; while(dreader_auftrag_erg.Read()) { if(dreader_auftrag_erg.GetBoolean(dreader_auftrag_erg.GetOrdinal("IstErkundungsbefehl"))) auftraege_erg[i] = new Cdv_Erkundungsbefehl(); else auftraege_erg[i] = new Cdv_Auftrag(); auftraege_erg[i].Abfassungsdatum=dreader_auftrag_erg.GetDateTime(dreader_auftrag_erg.GetOrdinal("Abfassungsdatum")); auftraege_erg[i].Absender=CMethoden.KonvertiereStringAusDB(dreader_auftrag_erg.GetString(dreader_auftrag_erg.GetOrdinal("Absender"))); auftraege_erg[i].Ausfuehrungszeitpunkt=dreader_auftrag_erg.GetDateTime(dreader_auftrag_erg.GetOrdinal("Ausfuehrungszeitpunkt")); auftraege_erg[i].BearbeiterBenutzerID=dreader_auftrag_erg.GetInt32(dreader_auftrag_erg.GetOrdinal("BearbeiterID")); auftraege_erg[i].LaufendeNummer=dreader_auftrag_erg.GetInt32(dreader_auftrag_erg.GetOrdinal("LaufendeNummer")); auftraege_erg[i].ID=dreader_auftrag_erg.GetInt32(dreader_auftrag_erg.GetOrdinal("ID")); //erstellen der EmpfängerKräfteIDMenge!!!! i_anzahlZeilen2 = 0; dreader_empfaenger_erg=db.AusfuehrenSelectAnfrage(("SELECT * FROM \"Empfaenger_Auftrag\" where \"AuftragsID\"="+auftraege_erg[i].ID),out i_anzahlZeilen2); auftraege_erg[i].EmpfaengerMengeKraftID = new int[i_anzahlZeilen2]; int i_tmp1=0; while (dreader_empfaenger_erg.Read()) { auftraege_erg[i].EmpfaengerMengeKraftID[i_tmp1]=dreader_empfaenger_erg.GetInt32(dreader_empfaenger_erg.GetOrdinal("KraftID")); i_tmp1++; } auftraege_erg[i].IstBefehl=dreader_auftrag_erg.GetBoolean(dreader_auftrag_erg.GetOrdinal("IstBefehl")); auftraege_erg[i].IstUebermittelt=dreader_auftrag_erg.GetBoolean(dreader_auftrag_erg.GetOrdinal("IstUebermittelt")); auftraege_erg[i].SpaetesterErfuellungszeitpunkt=dreader_auftrag_erg.GetDateTime(dreader_auftrag_erg.GetOrdinal("SpaetesterEZP")); auftraege_erg[i].Text=CMethoden.KonvertiereStringAusDB(dreader_auftrag_erg.GetString(dreader_auftrag_erg.GetOrdinal("Text"))); auftraege_erg[i].Uebermittlungsart=(Tdv_Uebermittlungsart) dreader_auftrag_erg.GetInt32(dreader_auftrag_erg.GetOrdinal("Uebermittlungsart")); auftraege_erg[i].Uebermittlungsdatum=dreader_auftrag_erg.GetDateTime(dreader_auftrag_erg.GetOrdinal("Uebermittlungsdatum")); auftraege_erg[i].WirdNachverfolgt=dreader_auftrag_erg.GetBoolean(dreader_auftrag_erg.GetOrdinal("WirdNachverfolgt")); auftraege_erg[i].EmpfaengerBenutzerID = dreader_auftrag_erg.GetInt32(dreader_auftrag_erg.GetOrdinal("EmpfaengerBenutzerID")); auftraege_erg[i].IstInToDoListe = dreader_auftrag_erg.GetBoolean(dreader_auftrag_erg.GetOrdinal("IstInToDoListe")); if(auftraege_erg[i] is Cdv_Erkundungsbefehl) { ((Cdv_Erkundungsbefehl) auftraege_erg[i]).BefehlsArt= (Tdv_BefehlArt) dreader_auftrag_erg.GetInt32(dreader_auftrag_erg.GetOrdinal("EB_Befehlsart")); } i++; } return (IPelsObject[]) auftraege_erg; }
/// <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; }
public bool SpeichereErkundungsbefehl(Cdv_Erkundungsbefehl pin_Erkundungsbefehl) { this._PortalLogikMAT.SpeichereErkundungsbefehl(pin_Erkundungsbefehl); this.WerfeSystemereignis(pin_Erkundungsbefehl); return true; }
public void SpeichereErkundungsbefehl(Cdv_Erkundungsbefehl pin_Erkundungsbefehl) { this._ObjektManager.Erkundungsbefehle.Speichern(pin_Erkundungsbefehl); }