示例#1
0
        /// <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;
        }
示例#2
0
        /// <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;
 }