Ejemplo n.º 1
0
 public bool EntferneAuftragAusToDoListe(Cdv_Auftrag pin_auftrag)
 {
     try
     {
         // istInToDoListe auf false setzen, dadurch wird die Meldung nicht
         // mehr in die ToDo-Liste des ehemaligen Benutzers gesetzt
         pin_auftrag.IstInToDoListe = false;
         _ObjektManager.Auftraege.Speichern(pin_auftrag);
         return true;
     }
     catch (Exception e)
     {
         throw e;
     }
 }
        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;
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Öffnet das jeweilige Formular und zeigt den angeklickten Eintrag der ToDo-Liste an
 /// </summary>
 /// <param name="pin_auftrag">Anzuzeigender Auftrag</param>
 private void OeffneListeneintrag(Cdv_Auftrag pin_auftrag)
 {
     frm_AuftragsAnzeige _frm_Auftrag = new frm_AuftragsAnzeige(_st_ToDo, this);
     // füge das Formular zum Anzeigen von Aufträgen dem Oberformular hinzu
     this.FindForm().AddOwnedForm(_frm_Auftrag);
     _frm_Auftrag.LadeAuftrag(pin_auftrag);
     _frm_Auftrag.ShowDialog();
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Fügt einen Auftrag in den entsprechenden Knoten im Treeview ein
 /// </summary>
 /// <param name="pin_Termin">einzufügender Auftrag</param>
 private void FuegeAuftragHinzu(Cdv_Auftrag pin_auftrag)
 {
     // Neuen Knoten erzeugen
     TreeNode tnNeuerAuftrag  = new TreeNode();
     tnNeuerAuftrag.Text = pin_auftrag.Text;
     tnNeuerAuftrag.Tag = pin_auftrag;
     // neuen Knoten einordnen
     _tn_Auftraege.Nodes.Add(tnNeuerAuftrag);
 }
Ejemplo n.º 5
0
        public Cdv_Auftrag[] LadeAuftraegeFuerToDoListe(Cdv_Benutzer pin_benutzer)
        {
            // Alle Aufträge aus der DB
            IPelsObject[] temp_ipoa = _ObjektManager.Auftraege.HolenAlle();
            Cdv_Auftrag[] auftragsMenge = new Cdv_Auftrag[temp_ipoa.Length];
            temp_ipoa.CopyTo(auftragsMenge, 0);
            // Zwischenspeicher für alle benötigten Auftraege (Benutzer stimmt und istInToDoListe == true)
            ArrayList al_auftraege = new ArrayList();
            // Benötigten Auftraege in ArrayList schreiben
            foreach(Cdv_Auftrag a in auftragsMenge)
                if ( (a.EmpfaengerBenutzerID == pin_benutzer.ID) && (a.IstInToDoListe == true) )
                    al_auftraege.Add(a);

            // benötigte Auftraege
            Cdv_Auftrag[] pout_auftragsMenge = new Cdv_Auftrag[al_auftraege.Count];
            // Auftraege von ArrayList nach Cdv_AuftragsArray überführen
            al_auftraege.CopyTo(pout_auftragsMenge);

            if (pout_auftragsMenge.Length != 0) return pout_auftragsMenge;
            else return null;
        }
Ejemplo n.º 6
0
 public Cdv_Auftrag[] LadeAuftraege()
 {
     IPelsObject[] pout_ipoa = _ObjektManager.Auftraege.HolenAlle();
     if (pout_ipoa != null)
     {
         Cdv_Auftrag[] auftraege = new Cdv_Auftrag[pout_ipoa.Length];
         pout_ipoa.CopyTo(auftraege, 0);
         return auftraege;
     }
     else return null;
 }
Ejemplo n.º 7
0
 public bool SpeichereAuftrag(Cdv_Auftrag pin_Auftrag)
 {
     this._PortalLogikMAT.SpeichereAuftrag(pin_Auftrag);
     this.WerfeSystemereignis(pin_Auftrag);
     return true;
 }
Ejemplo n.º 8
0
        /// <summary>
        /// lädt einen Auftrag in das Formular
        /// </summary>
        /// <param name="pin_Meldung"></param>
        public void LadeAuftrag(Cdv_Auftrag pin_Auftrag)
        {
            this.dtp_AbfassungsDatum.Value = pin_Auftrag.Abfassungsdatum;
            this.txt_Absender.Text = pin_Auftrag.Absender;
            this.dtp_Auftrag_spaetesterErfuellungszeitpunkt.Value = pin_Auftrag.Ausfuehrungszeitpunkt;

            Cdv_Benutzer BenutzerEmpfaenger = _stMAT.HoleBenutzer(pin_Auftrag.EmpfaengerBenutzerID);
            if (BenutzerEmpfaenger != null)
                this.cmb_Benutzerempfaenger.Text = BenutzerEmpfaenger.Benutzername;
            else
                this.cmb_Benutzerempfaenger.Text = "";

            SetzeAlleAusgewaehltenEmpfaenger(
                this.tvw_Auftrag_AuftragsEmpfaenger.Nodes, pin_Auftrag.EmpfaengerMengeKraftID);
            this.tvw_Auftrag_AuftragsEmpfaenger.ExpandAll();

            // TODO
            //			this.cbx_Auftrag_Befehl.Checked = pin_Auftrag.IstBefehl;
            this.cbx_IstUebermittelt.Checked = pin_Auftrag.IstUebermittelt;
            this.dtp_Auftrag_spaetesterErfuellungszeitpunkt.Value =
                pin_Auftrag.SpaetesterErfuellungszeitpunkt;
            this.txt_Auftrag_Auftragstext.Text = pin_Auftrag.Text;
            this.cmb_UebermittlungsArt.SelectedItem
                = pin_Auftrag.Uebermittlungsart;
            this.dtp_Uebermittlungsdatum.Value = pin_Auftrag.Uebermittlungsdatum;
            this.cbx_Auftrag_nachverfolgen.Checked = pin_Auftrag.WirdNachverfolgt;
        }
Ejemplo n.º 9
0
 public Cdv_Auftrag SpeichereAuftrag(Cdv_Auftrag pin_Auftrag)
 {
     Cdv_Mitteilung tmp = this._PortalLogikFunk.SpeichereMitteilung(pin_Auftrag);
     this.WerfeSystemereignis(pin_Auftrag);
     return (Cdv_Auftrag) tmp;
 }
Ejemplo n.º 10
0
 public Cdv_Auftrag[] LadeAuftraege()
 {
     // konvertiere Ergebnis in das korrekte Format
     pELS.DV.Server.Interfaces.IPelsObject[] ipoa = _ObjektManager.Auftraege.HolenAlle();
     if(!(ipoa == null) || (ipoa.Length == 0))
     {
         Cdv_Auftrag[] pout_Auftraege = new Cdv_Auftrag[ipoa.Length];
         ipoa.CopyTo(pout_Auftraege,0);
         return pout_Auftraege;
     }
     else return null;
 }
Ejemplo n.º 11
0
 public Cdv_Auftrag[] LadeAlleNichtVersendetenAuftraege()
 {
     // IPelsObjektMenge nimmt alle Auftraege auf
     pELS.DV.Server.Interfaces.IPelsObject[] ipoa = _ObjektManager.Auftraege.HolenAlle();
     if(!(ipoa == null) || (ipoa.Length == 0))
     {
         // ArrayList, welche alle Mitteilungen enthält, die zurückgegeben werden
         ArrayList _tmpAL = new ArrayList();
         Cdv_Auftrag[] tmpAuftraege = new Cdv_Auftrag[ipoa.Length];
         ipoa.CopyTo(tmpAuftraege,0);
         // entferne alle bereits versendeten Aufträge
         for (int pos = (tmpAuftraege.Length - 1); pos >= 0; pos--)
         {
             if(!tmpAuftraege[pos].IstUebermittelt) _tmpAL.Add(tmpAuftraege[pos]);
         }
         // kopiere Einträge aus ArrayList nach Array
         Cdv_Auftrag[] pout_Auftraege = new Cdv_Auftrag[_tmpAL.Count];
         _tmpAL.CopyTo(pout_Auftraege);
         return pout_Auftraege;
     }
     else return null;
 }
Ejemplo n.º 12
0
 /// <summary>
 /// Entfernt einen Auftrag aus der ToDo-Liste und gibt den Aufruf
 /// auch nach unten weiter
 /// </summary>
 /// <param name="pin_meldung">zu entfernder Aufruf</param>
 public void EntferneAuftragAusToDoListe(Cdv_Auftrag pin_Auftrag)
 {
     _EventSelbstAusgeloest = true;
     if(pin_Auftrag != null)
         _PortalLogikToDo.EntferneAuftragAusToDoListe(pin_Auftrag);
     _EventSelbstAusgeloest = false;
     BehandleEventAuftraege(null);
 }
Ejemplo n.º 13
0
 /// <summary>
 /// lädt den übergebenen Auftrag in die GUI
 /// </summary>
 /// <param name="pin_Auftrag"></param>
 public void LadeAuftrag(Cdv_Auftrag pin_Auftrag)
 {
     _aktuellerAuftrag = pin_Auftrag;
     this._usc_Auftrag.LadeAuftrag(pin_Auftrag);
 }
Ejemplo n.º 14
0
 public void SpeichereAuftrag(Cdv_Auftrag pin_Auftrag)
 {
     this._ObjektManager.Auftraege.Speichern(pin_Auftrag);
 }
Ejemplo n.º 15
0
        /// <summary>
        /// lädt einen Auftrag in das Formular
        /// </summary>
        /// <param name="pin_Meldung"></param>
        public void LadeAuftrag(Cdv_Auftrag pin_Auftrag)
        {
            _aktuelleMitteilungsID = pin_Auftrag.ID;
            this.lbl_laufendeNummer.Text = "A" + pin_Auftrag.LaufendeNummer.ToString();
            this.dtp_AbfassungsDatum.Value = pin_Auftrag.Abfassungsdatum;
            // Bearbeiter
            Cdv_Benutzer BenutzerBearbeiter = _st_Funk.ID2Benutzer(pin_Auftrag.BearbeiterBenutzerID);
            if (BenutzerBearbeiter != null)
            {
                this.lbl_BearbeiterRolle.Text = BenutzerBearbeiter.Systemrolle.ToString();
                this.lbl_BearbeiterName.Text = BenutzerBearbeiter.Benutzername;
            }
            // Absender
            this.txt_Absender.Text = pin_Auftrag.Absender;
            // Benutzerempfänger
            Cdv_Benutzer BenutzerEmpfaenger = _st_Funk.ID2Benutzer(pin_Auftrag.EmpfaengerBenutzerID);
            if (BenutzerEmpfaenger != null)
                this.cmb_Benutzerempfaenger.Text = BenutzerEmpfaenger.Benutzername;
            else
                this.cmb_Benutzerempfaenger.Text = "";
            // EmpfängerKräfteMenge
            SetzeAlleAusgewaehltenEmpfaenger(
                this.tvw_AuftragsEmpfaenger.Nodes, pin_Auftrag.EmpfaengerMengeKraftID);
            this.tvw_AuftragsEmpfaenger.ExpandAll();
            this.dtp_spaetesterErfuellungszeitpunkt.Value = pin_Auftrag.Ausfuehrungszeitpunkt;
            if (pin_Auftrag.IstBefehl)
            {
                Cdv_Erkundungsbefehl tmpEB = pin_Auftrag as Cdv_Erkundungsbefehl;
                this.cmb_Befehlsart.SelectedItem = "Erkundungsbefehl (" + tmpEB.BefehlsArt + ")";
            }
            else
                this.cmb_Befehlsart.SelectedIndex = 0;
            //Übermittlung
            this.cbx_IstUebermittelt.Checked = pin_Auftrag.IstUebermittelt;
            // Text
            this.txt_Auftragstext.Text = pin_Auftrag.Text;
            // Übermittlungsart
            this.cmb_Uebermittlungsart.SelectedItem = pin_Auftrag.Uebermittlungsart;
            // Übermittlungsdatum
            this.dtp_Uebermittlungsdatum.Value = pin_Auftrag.Uebermittlungsdatum;
            this.cbx_nachverfolgen.Checked = pin_Auftrag.WirdNachverfolgt;

            this.dtp_spaetesterErfuellungszeitpunkt.Value =
                pin_Auftrag.SpaetesterErfuellungszeitpunkt;
        }
        private void SetzeDatagridAuftraegeNachverfolgen(Cdv_Auftrag[] pin_auftragsmenge)
        {
            DataTable dtable_AuftraegeNachverfolgen = this.ErstelleDatagridAuftraegeNachverfolgen();
            #region auftragsmenge
            foreach(Cdv_Auftrag a in pin_auftragsmenge)
            {
                // ACHTUNG (von Schuppe): es gibt keine ESP mehr für Aufträge
                //				Cdv_Einsatzschwerpunkt esp = this._stMAT.HoleESP(a.EinsatzschwerpunktID);
                Cdv_Benutzer bearbeiterBenutzer = this._stMAT.HoleBenutzer(a.BearbeiterBenutzerID);

                #region Hole Empfänger
                string str_EmpfaengerMengeKraft = "";
                string tmp_Name = "";
                string tmp_Typ = "";
                Cdv_Einheit einheit;
                Cdv_KFZ kfz;
                Cdv_Helfer helfer;
                foreach(int empfaengerID in a.EmpfaengerMengeKraftID)
                {
                    einheit = null;
                    kfz = null;
                    helfer = null;

                    einheit = this._stMAT.HoleEinheit(empfaengerID);
                    if(einheit != null)
                    {
                        tmp_Name = einheit.Name;
                        tmp_Typ = "Einheit:";
                    }
                    else
                    {
                        kfz = this._stMAT.HoleKFZ(empfaengerID);
                        if(kfz != null)
                        {
                            tmp_Name = kfz.Kennzeichen;
                            tmp_Typ = "KFZ:";
                        }
                        else
                        {
                            helfer = this._stMAT.HoleHelfer(empfaengerID);
                            if(helfer != null)
                            {
                                tmp_Name = helfer.Personendaten.Vorname  + " " + helfer.Personendaten.Name;
                                tmp_Typ = "Helfer:";
                            }
                        }
                    }
                    if(tmp_Name.CompareTo("") != 0)
                    {
                         str_EmpfaengerMengeKraft = str_EmpfaengerMengeKraft + tmp_Typ + "(" + tmp_Name + ")" + "#";
                    }
                }
                #endregion

                // Befehlsart
                string str_Befehlsart = "";
                if(a.IstBefehl) str_Befehlsart = (a as Cdv_Erkundungsbefehl).BefehlsArt.ToString();

                // Uebermittlungsdatum
                string str_uebermittlungsdatum = "";
                if(a.IstUebermittelt == true)  str_uebermittlungsdatum = a.Uebermittlungsdatum.ToString();

                object[] obj_tabellezeile = new object[] {
                                                             // Laufende Nummer
                                                             a.LaufendeNummer.ToString(),
                                                             //Absender
                                                             a.Absender,
                                                             // Empfaenger
                                                             str_EmpfaengerMengeKraft,
                                                             // Auftragstext
                                                             a.Text,
                                                             // Abfassungsdatum
                                                             a.Abfassungsdatum.ToString(),
                                                             // ist Befehl
                                                             a.IstBefehl,
                                                             // auftrag hat keine Befehlsart
                                                             str_Befehlsart,
                                                             // ist uebermittelt
                                                             a.IstUebermittelt,
                                                             // Uebermittlungsdatum
                                                             str_uebermittlungsdatum,
                                                             // Bearbeiter Benutzer
                                                             bearbeiterBenutzer.Benutzername,
                                                             // Uebermittlungsart
                                                             a.Uebermittlungsart.ToString(),
                                                            // AuftragsID
                                                            a.ID.ToString()
                                                         };

                dtable_AuftraegeNachverfolgen.Rows.Add(obj_tabellezeile);

            }
            #endregion

            // Tabelle dem Datagrid zuordnen
            dtg_AuftraegeNachverfolgen.DataSource = dtable_AuftraegeNachverfolgen;
        }
Ejemplo n.º 17
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;
        }
Ejemplo n.º 18
0
        public Cdv_Auftrag[] HoleNachzuverfolgendeAuftraege()
        {
            IVerwaltung verw_verwaltung = _ObjektManager.Auftraege;
            IPelsObject[] ipoa = verw_verwaltung.HolenAlle();

            if(!(ipoa == null) || (ipoa.Length == 0))
            {
                ArrayList arrlist_tmpAuftraege = new ArrayList();
                IEnumerator enm = ipoa.GetEnumerator();
                Cdv_Auftrag auftrag = new Cdv_Auftrag();
                while(enm.MoveNext())
                {
                    auftrag = (Cdv_Auftrag)enm.Current;
                    if(auftrag.WirdNachverfolgt == true)
                        arrlist_tmpAuftraege.Add(auftrag);
                }
                //
                Cdv_Auftrag[] pout_AuftragsMenge = new Cdv_Auftrag[arrlist_tmpAuftraege.Count];
                arrlist_tmpAuftraege.CopyTo(pout_AuftragsMenge,0);
                return pout_AuftragsMenge;
            }
            else
                return null;
        }