示例#1
0
 def auswahl_listen_aufbauen(self):
     """ *Die verschiedenen AuswahlListe Komponenten aufbauen* """
     groessen_liste = ['L', 'S', 'XL', 'XXL']
     zustand_liste = ['Beschädigt', 'Schlecht', 'Mittel', 'Gut']
     kategorie_liste = ['Schlauche', 'Atemschutz', 'Kommunikation',
                        'Kleider', 'Schaummittel', 'Maschinerie',
                        '1. Hilfe']
     datensatz_groessen = []
     datensatz_zustand = []
     datensatz_kategorie = []
     for eintrag in groessen_liste:
         datensatz_groessen.append(inventarliste_objekt.Groesse(
             groesse=eintrag))
     for eintrag in zustand_liste:
         datensatz_zustand.append(inventarliste_objekt.Zustand(
             zustand=eintrag))
     for eintrag in kategorie_liste:
         datensatz_kategorie.append(inventarliste_objekt.Kategorie(
             kategorie=eintrag))
     groessen = verpacken_modelisieren.list_verpackung_modelisieren(
         datensatz_groessen)
     zustaende = verpacken_modelisieren.list_verpackung_modelisieren(
         datensatz_zustand)
     kategorien = verpacken_modelisieren.list_verpackung_modelisieren(
         datensatz_kategorie)
     self.kontext.setContextProperty('groessen_auswahl', groessen)
     self.kontext.setContextProperty('zustaende_auswahl', zustaende)
     self.kontext.setContextProperty('kategorien_auswahl', kategorien)
示例#2
0
    def kommunikation_verwaltung(self):
        """ *Die Kommunikationsverwaltung wird aufgerufen* """
        # Auflistung aller Kommunikationsgeräte
        sql_anweisung = sql_anweisungen.sql(
            tabelle='tblInventar',
            select='*',
            filtern='dtKategorie="Kommunikation"')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('kommunikation_auflistung', None)
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        zustand=eintrag[3], kategorie=eintrag[4],
                        knappheit=eintrag[6], mitglied=eintrag[7]))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('kommunikation_auflistung',
                                            datenliste)
        else:
            self.kontext.setContextProperty('kommunikation_auflistung', None)

        # Auflistung aller Mitglieder
        sql_anweisung = sql_anweisungen.sql(tabelle='tblMitglied', select='*')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('kommunikation_mitglieder', None)
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(mitglied_objekt.Mitglied(
                        schlussel=eintrag[0], name=eintrag[1],
                        vorname=eintrag[2]))
                except:
                    datensatz.append(mitglied_objekt.Mitglied(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('kommunikation_mitglieder',
                                            datenliste)
        else:
            self.kontext.setContextProperty('kommunikation_mitglieder', None)

        self.kommunikation_gegenstaende_setzen_signal.emit()
示例#3
0
    def overlay_meldungen_aufbau(self):
        """ *Die Meldungen für das Overlay werden aufgebaut*

        **Beschreibung**

        Methode welche alle benötigten/vorgesehenen Kontrollen/Tests durchführt
        und diese ins Overlay schreibt.
        """
        sql_anweisung = sql_anweisungen.sql(tabelle='tblMitglied')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            pass
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    if mitglied_logik.medizinischeKontrolle(eintrag[14]):
                        datensatz.append(meldungen_objekt.Meldungen(
                            'Die medizinische Kontrolle für das Mitglied\n%s %s '
                            'ist abgelaufen' % (eintrag[1], eintrag[2])))
                    if mitglied_logik.restliche_stunden(eintrag[11]):
                        datensatz.append(meldungen_objekt.Meldungen(
                            'Das Mitglied %s %s hat nicht mehr\nviele freie Stunden'
                            ' für Lehrgänge übrig' % (eintrag[1], eintrag[2])))
                except:
                    datensatz.append(meldungen_objekt.Meldungen(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('meldungen_liste', datenliste)
            self.meldungen_liste = datensatz
        else:
            self.kontext.setContextProperty('meldungen_liste', None)
示例#4
0
 def ausstattung_anzeigenVerstecken(self):
     """ *Die Ausstattung wird angezeigt oder versteckt* """
     sql_anweisung = sql_anweisungen.sql(
         tabelle='tblInventar',
         select='idInventarnummer, dtBezeichnung, dtKategorie, '
         'COUNT(dtBezeichnung) AS "Anzahl"',
         filtern='idInventarnummer IN (SELECT fiInventarnummer'
         ' FROM tblFahrzeugAusstattung WHERE fiFahrzeugNummer=%s)' % (
             self.fahrzeugID),
         gruppieren='dtBezeichnung')
     try:
         sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
     except:
         self.kontext.setContextProperty('ausstattung_auflistung', None)
     datensatz = []
     if sql_resultate:
         for eintrag in sql_resultate:
             try:
                 datensatz.append(inventarliste_objekt.Inventarliste(
                     schlussel=eintrag[0], bezeichnung=eintrag[1],
                     kategorie=eintrag[2], anzahl=eintrag[3]))
             except:
                 datensatz.append(inventarliste_objekt.Inventarliste(None))
         datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
             datensatz)
         self.kontext.setContextProperty('ausstattung_auflistung',
                                         datenliste)
     else:
         self.kontext.setContextProperty('ausstattung_auflistung', None)
     self.ausstattung_anzeigenVerstecken_signal.emit()
示例#5
0
    def protokoll_info_setzen(self, protokoll):
        """ *Die Daten des ausgewählten Protokolls werden gesetzt*

        **Beschreibung**

        Die Informationen eines Protokolls werden gesetzt und der gesamte
        **Datensatz** des jeweiligen Protokolls wird in eine Klassenvariable
        gespeichert, zur späteren weiter verwendung.

        **Parameter**

        - protokoll: Der **datensatz** des in der Liste ausgewählten Protokolls

        """
        self.protokoll = protokoll
        self.schlussel = protokoll.datensatz.schlussel
        datum = protokoll.datensatz.datum
        bezeichnung = protokoll.datensatz.bezeichnung
        try:
            referenzen = protokoll_logik.referenzenListe(
                self.datenbank_verbindung, self.schlussel)
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                referenzen)
            self.kontext.setContextProperty('protokoll_referenzen', datenliste)
        except:
            self.kontext.setContextProperty('protokoll_referenzen', None)
        inhalt = protokoll.datensatz.inhalt
        self.kontext.setContextProperty('protokoll_datum', str(datum))
        self.kontext.setContextProperty('protokoll_inhalt', inhalt)
        self.kontext.setContextProperty('protokoll_bezeichnung_info',
                                        bezeichnung)
        self.protokoll_info_setzen_signal.emit()
示例#6
0
    def ausrustung_bearbeiten(self):
        """ *Das Menü zum bearbeiten der Ausrüstung eines Mitglieds*

        **Beschreibung**

        Das Menü zur Verwaltung der persönlichen Ausrüstung eines Mitglieds
        wird gesetzt und aufgerufen.
        Eine Liste mit allen nicht verwendeten Inventargegenständen wird
        angezeigt und die momentane Ausrüstung eines Mitglieds wird angezeigt.
        """
        try:
            # Liste von nicht verwendeten Inventargegenständen wird erzeugt
            inventar_liste = inventar.nicht_verwendete_inventargegenstaende(
                self.datenbank_verbindung)
            datensatz = []
            for eintrag in inventar_liste:
                datensatz.append(inventarliste_objekt.Inventarliste(
                    schlussel=eintrag[0], bezeichnung=eintrag[1],
                    kategorie=eintrag[4], knappheit=eintrag[6],
                    anzahl=eintrag[8]))
            inventarliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('inventar_liste', inventarliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('inventar_liste', None)

        try:
            # Liste aller Ausrüstungsgegenstände eines Mitglieds wird erzeugt
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                filtern='fiStammlistennummerAusrustung=%s' % self.schlussel)
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(inventarliste_objekt.Inventarliste(
                    schlussel=eintrag[0], bezeichnung=eintrag[1],
                    kategorie=eintrag[4], knappheit=eintrag[6]))
            ausrustung = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('ausrustung_liste', ausrustung)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('ausrustung_liste', None)

        self.ausrustung_bearbeiten_signal.emit()
示例#7
0
    def fahrzeugliste_aufbauen(self):
        """ *Fahrzeugliste wird aufgebaut und mit Daten gefüllt* """
        sql_anweisung = sql_anweisungen.sql(tabelle='tblFahrzeug')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('fahrzeug_liste', None)
        datensatz = []
        # Instanz Variablen für Fahrzeug() und FahrzeugTyp() werden gesetzt
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(fahrzeug_objekt.Fahrzeug(
                        schlussel=eintrag[0],
                        kennzeichen=eintrag[1], bezeichnung=eintrag[2],
                        besatzung=eintrag[3], technisches_problem=eintrag[4],
                        kommentar=eintrag[5], tuv=eintrag[6],
                        werkstatt=eintrag[7], typ=eintrag[8]))
                except:
                    datensatz.append(fahrzeug_objekt.Fahrzeug(None))
        else:
            self.kontext.setContextProperty('fahrzeug_liste', None)

        # Liste aller Fahrzeug Typen wird erstellt
        fahrzeug_typ_liste = ['MTW', 'TLF', 'TSF', 'LF', 'HTLF', 'GW', 'RW1',
                              'DLA', 'TLK', 'DLK', 'KTW', 'RTW', 'NAW',
                              'S.A.M.U.']
        fahrzeug_typ_daten = []
        for eintrag in fahrzeug_typ_liste:
            fahrzeug_typ_daten.append(fahrzeug_objekt.FahrzeugTypListe(
                typ=eintrag))

        # Die Datensätze werden in ein 'QObject' verpackt
        # und ins Listen Modell modelisiert
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        fahrzeug_typen = verpacken_modelisieren.list_verpackung_modelisieren(
            fahrzeug_typ_daten)

        # Die beiden Listen werden der QMLUI übergeben
        self.kontext.setContextProperty('fahrzeug_liste', datenliste)
        self.kontext.setContextProperty('fahrzeug_typ_liste', fahrzeug_typen)
示例#8
0
 def schlauch_typ_auswahliste_aufbauen(self):
     """ *AuswahlListe von Schlauch Typs wird aufgebaut* """
     schlauch_typ_liste = ['A Schlauch', 'B Schlauch', 'C Schlauch',
                           'D Schlauch']
     datensatz = []
     for eintrag in schlauch_typ_liste:
         datensatz.append(schlauche_objekt.SchlauchTypListe(
             typ=eintrag))
     datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
         datensatz)
     self.kontext.setContextProperty('schlauch_typ_liste', datenliste)
示例#9
0
文件: admin.py 项目: RitchieFlick/FVS
    def admin_bereich_aufbau(self):
        """ *Der Admin Bereich wird aufgebaut*

        **Beschreibung**

        Eine Liste mit allen Tabellen in der Datenbank wird erstellt.
        """
        tabellen_liste = self.datenbank_verbindung.liste_aller_tabellen()
        datensatz = []
        for eintrag in tabellen_liste:
            datensatz.append(db_tabellen_objekt.DBTabelle(tabelle=eintrag[0]))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        self.kontext.setContextProperty('tabellen_liste', datenliste)
示例#10
0
    def sonstige_gegenstaende_liste(self):
        """ *Liste sonstiger Inventargegenstände wird generiert*

        **Beschreibung**

        Eine Liste aller Inventargegenständen welche nicht in eine der
        Hauptkategorien passen wird generiert.
        """
        sql_anweisung = sql_anweisungen.sql(
            select="idInventarnummer, dtBezeichnung, dtKategorie, "
            "dtKnappheit, dtGrosse, dtZustand, "
            "dtKontrollDatum, fiStammlistennummerAusrustung, "
            "COUNT(dtBezeichnung) AS 'Anzahl'",
            tabelle="tblInventar",
            filtern="dtKategorie NOT IN('Schlauche', 'Atemschutz', "
            "'Kommunikation', 'Kleider', 'Schaummittel', 'Maschinerie', "
            "'1.Hilfe')", gruppieren="dtKategorie, dtBezeichnung")
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('sonstige_gegenstaende', None)
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        kategorie=eintrag[2], knappheit=eintrag[3],
                        anzahl=eintrag[8], groesse=eintrag[4],
                        zustand=eintrag[5], kontrolle=eintrag[6],
                        mitglied=eintrag[7]))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
                datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                    datensatz)
                self.kontext.setContextProperty('sonstige_gegenstaende',
                                                datenliste)
        else:
            self.kontext.setContextProperty('sonstige_gegenstaende', None)
        self.sonstige_liste_setzen_signal.emit()
示例#11
0
    def overlay_meldungen_aufbau(self):
        """ *Die Meldungen für das Overlay werden aufgebaut*

        **Beschreibung**

        Methode welche alle benötigten/vorgesehenen Kontrollen/Tests durchführt
        und diese ins Overlay schreibt.
        """
        sql_anweisung = sql_anweisungen.sql(tabelle='tblFahrzeug')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('meldungen_liste', None)
        datensatz = []
        # Instanz Variablen für Fahrzeug() und FahrzeugTyp() werden gesetzt
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    if fahrzeug.tuvTest(eintrag[6]):
                        datensatz.append(meldungen_objekt.Meldungen(
                            'Der Tüv Test für das Fahrzeug \n%s %s ist abgelaufen' %
                            (eintrag[1], eintrag[2])))
                    if fahrzeug.werkTest(eintrag[7]):
                        datensatz.append(meldungen_objekt.Meldungen(
                            'Die Werkstattkontrolle für das Fahrzeug \n%s %s '
                            'ist abgelaufen' % (eintrag[1], eintrag[2])))
                    if fahrzeug.problemTest(eintrag[4]):
                        datensatz.append(meldungen_objekt.Meldungen(
                            'Für das Fahrzeug \n%s %s besteht ein Problem'
                            % (eintrag[1], eintrag[2])))
                except:
                    datensatz.append(meldungen_objekt.Meldungen(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('meldungen_liste', datenliste)
        else:
            self.kontext.setContextProperty('meldungen_liste', None)
        self.meldungen_liste = datensatz
示例#12
0
 def ausstattung_verwaltung_aufrufen(self):
     """ *Die Verwaltung der Fahrzeugausstattung wird aufgerufen* """
     self.ausstattung_anzeigenVerstecken()
     datensatz = []
     # Wird benötigt damit die Datenbank eine neue Anfrage durchführt und
     # nicht aus dem Cache liest
     self.datenbank_verbindung.commit()
     liste = inventar.nicht_verwendete_inventargegenstaende(
         self.datenbank_verbindung)
     if liste:
         for eintrag in liste:
             try:
                 datensatz.append(inventarliste_objekt.Inventarliste(
                     schlussel=eintrag[0], bezeichnung=eintrag[1],
                     kategorie=eintrag[4], knappheit=eintrag[6],
                     anzahl=eintrag[8]))
             except:
                 datensatz.append(inventarliste_objekt.Inventarliste(None))
         inventarliste = verpacken_modelisieren.list_verpackung_modelisieren(
             datensatz)
         self.kontext.setContextProperty('inventarliste', inventarliste)
     else:
         self.kontext.setContextProperty('inventarliste', None)
     self.ausstattung_verwaltung_starten_signal.emit()
示例#13
0
    def mitglied_info_setzen(self, mitglied):
        """ *Die Informationen des ausgewäglten Mitglieds werden gesetzt*

        **Parameter**

        - mitglied: Verpackter Datensatz eines Mitglieds

        """
        # Standard Mitglied Informationen
        self.mitglied = mitglied
        self.schlussel = mitglied.datensatz.schlussel
        self.kontext.setContextProperty('mitglied_info_name',
                                        mitglied.datensatz.name)
        self.kontext.setContextProperty('mitglied_info_vorname',
                                        mitglied.datensatz.vorname)
        self.kontext.setContextProperty('mitglied_info_sozialnummer',
                                        mitglied.datensatz.sozialnummer)
        self.kontext.setContextProperty('mitglied_info_bday',
                                        str(mitglied.datensatz.bday))
        self.kontext.setContextProperty('mitglied_info_mobiltelefon',
                                        mitglied.datensatz.mobiltelefon)
        self.kontext.setContextProperty('mitglied_info_email',
                                        mitglied.datensatz.email)
        self.kontext.setContextProperty('mitglied_info_telefonnummer',
                                        mitglied.datensatz.telefonnummer)
        self.kontext.setContextProperty('mitglied_info_ortschaft',
                                        mitglied.datensatz.ortschaft)
        self.kontext.setContextProperty('mitglied_info_adresse',
                                        mitglied.datensatz.adresse)
        self.kontext.setContextProperty('mitglied_info_postleitzahl',
                                        mitglied.datensatz.postleitzahl)
        self.kontext.setContextProperty('mitglied_info_lehrgangsstunden',
                                        mitglied.datensatz.lehrgangsstunden)
        self.kontext.setContextProperty('mitglied_info_medi',
                                        str(mitglied.datensatz.mediKontrolle))
        self.kontext.setContextProperty('mitglied_info_apteinsatz',
                                        mitglied.datensatz.apteinsatz)
        self.kontext.setContextProperty('mitglied_info_aptatemschutz',
                                        mitglied.datensatz.aptatemschutz)

        # Lehrgänge eines Mitglieds setzen
        try:
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblAbsolvieren Ab, tblLehrgang Leh',
                select='idLehrgang',
                filtern='Ab.fiStammlistennummerAbsolvieren=%s AND '
                'Ab.fiLehrgangLehrgang=Leh.idLehrgang' % (self.schlussel))
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(lehrgang_objekt.Lehrgang(
                    schlussel=eintrag[0]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('mitglied_info_lehrgaenge',
                                            datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('mitglied_info_lehrgaenge',
                                            None)

        # Auszeichnungen eines Mitglieds setzen
        try:
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblMitgliedsAuszeichnungen Mit, tblAuszeichnung Aus',
                select='idAuszeichnung',
                filtern='Mit.fiStammlistennummerAuszeichnung=%s AND '
                'Mit.fiAuszeichnung=Aus.idAuszeichnung' % (self.schlussel))
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(auszeichnung_objekt.Auszeichnung(
                    auszeichnung=eintrag[0]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('mitglied_info_auszeichnungen',
                                            datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('mitglied_info_auszeichnungen',
                                            None)

        # Führerscheine eines Mitglieds setzen
        try:
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblMitgliederFührerscheine',
                select='idFuehrerschein',
                filtern='fiStammlistennummerFührerschein=%s' % (
                    self.schlussel))
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(fuhrerschein_objekt.Fuhrerschein(
                    schlussel=eintrag[0]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('mitglied_info_fuhrerscheine',
                                            datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('mitglied_info_fuhrerscheine',
                                            None)

        self.mitglied_info_setzen_signal.emit()
示例#14
0
    def kommandant_bereich_aufbau(self, state_wechseln=True):
        """*Die Informationen für den Bereich des Kommandanten werden gesetzt*

        **Beschreibung**

        Eine Liste aller Mitglieder welche in der Datenbank abgespeichert sind
        wird erstellt und gesetzt und die einzelnen Listen aller Lehrgänge,
        Führerscheine und Auszeichnungen für die Auswahllisten werden erstellt
        und gesetzt.

        **Parameter**

        - state_wechseln: *Boolean* Angabe ob nur die einzelnen Listen neu
          erstellt werden sollen oder auch der *State* der **QMLUI** geändert
          werden soll.

        """
        # Eine Liste aller Mitglieder in der Datenbank wird erstellt
        try:
            sql_anweisung = sql_anweisungen.sql(tabelle="tblMitglied")
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(mitglied_objekt.Mitglied(
                    schlussel=eintrag[0],
                    name=eintrag[1], vorname=eintrag[2],
                    sozialnummer=eintrag[3], bday=eintrag[4],
                    mobiltelefon=eintrag[5], email=eintrag[6],
                    telefonnummer=eintrag[7], ortschaft=eintrag[8],
                    adresse=eintrag[9], postleitzahl=eintrag[10],
                    lehrgangsstunden=eintrag[11], apteinsatz=eintrag[12],
                    aptatemschutz=eintrag[13], mediKontrolle=eintrag[14]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('mitglieder_liste', datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('mitglieder_liste', None)

        # Liste aller Lehrgänge wird erstellt
        try:
            sql_anweisung = sql_anweisungen.sql(tabelle='tblLehrgang')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(lehrgang_objekt.Lehrgang(
                    schlussel=eintrag[0]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('alle_lehrgaenge', datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('alle_lehrgaenge', None)

        # Liste aller Auszeichnungen wird erstellt
        try:
            sql_anweisung = sql_anweisungen.sql(tabelle='tblAuszeichnung')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            datensatz = []
            for eintrag in sql_resultate:
                datensatz.append(auszeichnung_objekt.Auszeichnung(
                    auszeichnung=eintrag[0]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('alle_auszeichnungen', datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('alle_auszeichnungen', None)

        # Liste aller Führerscheine wird erstellt
        try:
            fuehrerscheine = ['A', 'B', 'C', 'D', 'E']
            datensatz = []
            for eintrag in fuehrerscheine:
                datensatz.append(fuhrerschein_objekt.Fuhrerschein(
                    schlussel=eintrag))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('alle_fuhrerscheine', datenliste)
        except:
            # Wenn eine Ausnahme eintritt, leere Liste setzen
            self.kontext.setContextProperty('alle_auszeichnungen', None)

        if state_wechseln:
            self.kommandant_bereich_aufbau_signal.emit()
示例#15
0
    def protokoll_verwaltung(self, state_wechseln=True):
        """ *Das Menü zur Protokollverwaltung wird aufgebaut*

        **Beschreibung**

        Das Menü zur Verwaltung der Protokolle wird aufgebaut. Die Hauptauswahl
        für Protokolle wird aufgebaut und Listen von

        - Fahrzeugen
        - Mitglieder
        - Inventargegenstände
        - Ereignisse

        werden aufgebaut, welche in *AuswahlListen* (ComboBox) gesetzt werden,
        mit welchen Referenzen gesetzt werden können.

        **Parameter**

        - state_wechseln: *Boolean* Angabe ob nur die einzelnen Listen neu
          erstellt werden sollen oder auch der *State* der **QMLUI** geändert
          werden soll.

        """
        # Hilfsvariable um herauszufinden ob ein Fehler aufgetreten ist
        fehler = False
        # Eine Liste aller Protokolle wird erstellt zur Hauptauswahl
        sql_anweisung = sql_anweisungen.sql(tabelle="tblProtokolle")
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('protokoll_liste', None)
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(protokoll_objekt.Protokoll(
                        schlussel=eintrag[0],
                        bezeichnung=eintrag[1], datum=eintrag[2],
                        inhalt=eintrag[3]))
                except:
                    datensatz.append(protokoll_objekt.Protokoll(None))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        # Kontrollieren ob nicht vorher ein Fehler aufgetreten war
        if not fehler:
            self.kontext.setContextProperty('protokoll_liste', datenliste)
        else:
            fehler = False

        # Eine Liste aller Ereignisse zum setzen als Referenzen wird erstellt
        sql_resultate = None
        sql_anweisung = sql_anweisungen.sql(tabelle="tblEreignis")
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('ereignis_liste',
                                            'Keine Ereignisse')
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(ereignis_objekt.Ereignis(
                        schlussel=eintrag[0], typ=eintrag[1],
                        startdatum=eintrag[2], startzeit=eintrag[3],
                        enddatum=eintrag[4], endzeit=eintrag[5],
                        bezeichnung=eintrag[6]))
                except:
                    datensatz.append(ereignis_objekt.Ereignis(None))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        # Kontrollieren ob nicht vorher ein Fehler aufgetreten war
        if not fehler:
            self.kontext.setContextProperty('ereignis_liste', datenliste)
        else:
            fehler = False

        # Eine Liste aller Inventargegenstände zum setzen als Refernzen wird
        # erstellt
        sql_anweisung = sql_anweisungen.sql(
            select="idInventarnummer, dtBezeichnung, dtKategorie, dtKnappheit",
            tabelle="tblInventar")
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('inventar_liste', None)
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        kategorie=eintrag[2], knappheit=eintrag[3]))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        # Kontrollieren ob nicht vorher ein Fehler aufgetreten war
        if not fehler:
            self.kontext.setContextProperty('inventar_liste', datenliste)
        else:
            fehler = False

        # Eine Liste aller Mitglieder zum setzen als Referenzen wird erstellt
        sql_anweisung = sql_anweisungen.sql(
            tabelle="tblMitglied",
            select="idStammlistennummer, dtName, dtVorname")
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('mitglied_liste', None)
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(mitglied_objekt.Mitglied(
                        schlussel=eintrag[0],
                        name=eintrag[1], vorname=eintrag[2]))
                except:
                    datensatz.append(mitglied_objekt.Mitglied(None))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        # Kontrollieren ob nicht vorher ein Fehler aufgetreten war
        if not fehler:
            self.kontext.setContextProperty('mitglied_liste', datenliste)
        else:
            fehler = False

        # Eine Liste aller Fahrzeuge zum setzen als Referenzen wird erstellt
        sql_anweisung = sql_anweisungen.sql(tabelle='tblFahrzeug')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('fahrzeug_liste', None)
            fehler = True
        datensatz = []
        # Instanz Variablen für Fahrzeug() und FahrzeugTyp() werden gesetzt
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(fahrzeug_objekt.Fahrzeug(
                        schlussel=eintrag[0],
                        kennzeichen=eintrag[1], bezeichnung=eintrag[2],
                        besatzung=eintrag[3], technisches_problem=eintrag[4],
                        kommentar=eintrag[5], tuv=eintrag[6],
                        werkstatt=eintrag[7], typ=eintrag[8]))
                except:
                    datensatz.append(fahrzeug_objekt.Fahrzeug(None))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        # Kontrollieren ob nicht vorher ein Fehler aufgetreten war
        if not fehler:
            self.kontext.setContextProperty('fahrzeug_liste', datenliste)

        if state_wechseln:
            self.protokoll_verwaltung_signal.emit()
示例#16
0
    def kleider_verwaltung(self):
        """ *Die Verwaltung der Kleider wird aufgerufen* """
        # Alle Kleider werden aufgelistet
        sql_anweisung = sql_anweisungen.sql(tabelle='tblInventar',
                                            select='*',
                                            filtern='dtKategorie="Kleider"')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('kleider_auflistung', None)
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        groesse=eintrag[2], zustand=eintrag[3],
                        kategorie=eintrag[4], knappheit=eintrag[6],
                        mitglied=eintrag[7]))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('kleider_auflistung',
                                            datenliste)
        else:
            self.kontext.setContextProperty('kleider_auflistung', None)

        # Kategorien für die Kleider werden aufgelistet
        sql_anweisung = sql_anweisungen.sql(tabelle='tblInventar',
                                            select='DISTINCT(dtBezeichnung)',
                                            filtern='dtKategorie="Kleider"')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('kleider_gruppierung', None)
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Kleidung(
                        art=eintrag[0]))
                except:
                    datensatz.append(inventarliste_objekt.Kleidung(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('kleider_gruppierung',
                                            datenliste)
        else:
            self.kontext.setContextProperty('kleider_gruppierung', None)

        # Auflistung aller Mitglieder
        sql_anweisung = sql_anweisungen.sql(tabelle='tblMitglied', select='*')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('kleider_mitglieder', None)
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(mitglied_objekt.Mitglied(
                        schlussel=eintrag[0], name=eintrag[1],
                        vorname=eintrag[2]))
                except:
                    datensatz.append(mitglied_objekt.Mitglied(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('kleider_mitglieder',
                                            datenliste)
        else:
            self.kontext.setContextProperty('kleider_mitglieder', None)
        self.kleider_gegenstaende_setzen_signal.emit()
示例#17
0
    def atemschutz_liste_setzen(self, status=''):
        """ *Die Verwaltung zum Atemschutz wird aufgebaut*

        **Parameter**

        - status: Gibt an ob die Liste nach beschädigten Geräten gefiltert
          werden soll oder nicht
        """
        if status == "checked":
            beschaedigt_filter = True
        else:
            beschaedigt_filter = False
        if beschaedigt_filter:
            # SQL Anweisung zum Anzeigen von nur beschädigten Atemschutzgeräten
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                filtern='dtKategorie="Atemschutz" AND dtzustand="beschädigt"',
                select='*',
                sortieren='dtBezeichnung')
        else:
            # SQL Anweisung für alle Atemschutzgeräte
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                filtern='dtKategorie="Atemschutz"', select='*',
                sortieren='dtBezeichnung')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            pass
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                datensatz.append(inventarliste_objekt.Inventarliste(
                    schlussel=eintrag[0], bezeichnung=eintrag[1],
                    zustand=eintrag[3], kategorie=eintrag[4],
                    kontrolle=eintrag[5], knappheit=eintrag[6],
                    mitglied=eintrag[7]))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('atemschutz_auflistung',
                                            datenliste)
        else:
            self.kontext.setContextProperty('atemschutz_auflistung', None)

        sql_anweisung = sql_anweisungen.sql(tabelle='tblInventar',
                                            filtern='dtKategorie="Atemschutz"',
                                            select='*',
                                            sortieren='dtKontrollDatum')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            pass
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        zustand=eintrag[3], kategorie=eintrag[4],
                        kontrolle=eintrag[5], knappheit=eintrag[6],
                        mitglied=eintrag[7], kontrolle_anzeigen=True))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.atemschutz_kontrolle_liste = datensatz
            self.kontext.setContextProperty('atemschutz_kontrolle_liste_model',
                                            datenliste)
        else:
            self.atemschutz_kontrolle_liste = None
            self.kontext.setContextProperty('atemschutz_kontrolle_liste_model',
                                            None)

        self.atemschutz_liste_setzen_signal.emit()
示例#18
0
    def schlauch_filter(self):
        """ *Filtern der Schlauch Liste*

        **Beschreibung**

        Abhängig davon welche **JaNeinAuswahl** ausgewählt sind:

        - chkTypA
        - chkTypB
        - chkTypC
        - chkTypD
        - chkZustand,

        wird die Liste der verschiedenen Schläuche nach dieser Auswahl
        gefiltert.
        """
        filtern_nach = ""
        if self.typAStatus == "checked":
            filtern_nach = filtern_nach + "'A Schlauch'"
        if self.typBStatus == "checked":
            if filtern_nach:
                filtern_nach = filtern_nach + ", 'B Schlauch'"
            else:
                filtern_nach = filtern_nach + "'B Schlauch'"
        if self.typCStatus == "checked":
            if filtern_nach:
                filtern_nach = filtern_nach + ", 'C Schlauch'"
            else:
                filtern_nach = filtern_nach + "'C Schlauch'"
        if self.typDStatus == "checked":
            if filtern_nach:
                filtern_nach = filtern_nach + ", 'D Schlauch'"
            else:
                filtern_nach = filtern_nach + "'D Schlauch'"
        if self.zustandStatus == "checked" and filtern_nach == '':
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='*',
                filtern='dtZustand="beschädigt" AND dtKategorie="Schlauche"',
                sortieren='dtBezeichnung')
        elif self.zustandStatus == "checked":
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='*',
                filtern='dtZustand="beschädigt" AND dtBezeichnung IN(%s)' %
                (filtern_nach),
                sortieren='dtBezeichnung')
        else:
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='*',
                filtern='dtBezeichnung IN(%s)' % (filtern_nach),
                sortieren='dtBezeichnung')
        try:
            if filtern_nach == "" and self.zustandStatus == "unchecked":
                self.schlauch_gegenstaende_liste()
                return
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            pass
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        zustand=eintrag[3], kategorie=eintrag[4],
                        knappheit=eintrag[6]))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
            schlauche = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('schlauch_gegenstaende', schlauche)
        else:
            self.kontext.setContextProperty('schlauch_gegenstaende', None)
        self.aktuelle_schlauch_liste = datensatz
        self.schlauch_liste_setzen_signal.emit()
示例#19
0
    def schlauch_gegenstaende_liste(self):
        """ *Die Schlauch Verwaltung wird aufgerufen* """
        try:
            # Anzahl aller A Schläuche
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='COUNT(dtBezeichnung) AS "Anzahl"',
                filtern='dtBezeichnung = "A Schlauch"')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            a_schlauch_anzahl = sql_resultate[0][0]
        except:
            a_schlauch_anzahl = 0

        try:
            # Anzahl aller B Schläuche
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='COUNT(dtBezeichnung) AS "Anzahl"',
                filtern='dtBezeichnung = "B Schlauch"')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            b_schlauch_anzahl = sql_resultate[0][0]
        except:
            b_schlauch_anzahl = 0

        try:
            # Anzahl aller C Schläuche
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='COUNT(dtBezeichnung) AS "Anzahl"',
                filtern='dtBezeichnung = "C Schlauch"')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            c_schlauch_anzahl = sql_resultate[0][0]
        except:
            c_schlauch_anzahl = 0

        try:
            # Anzahl aller D Schläuche
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='COUNT(dtBezeichnung) AS "Anzahl"',
                filtern='dtBezeichnung = "D Schlauch"')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            d_schlauch_anzahl = sql_resultate[0][0]
        except:
            d_schlauch_anzahl = 0

        try:
            # Anzahl aller beschädigter Schläuche
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblInventar',
                select='COUNT(dtzustand) AS "Anzahl"',
                filtern='dtKategorie = "Schlauche" AND dtZustand="beschädigt"')
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
            beschaedigt_schlauch_anzahl = sql_resultate[0][0]
        except:
            beschaedigt_schlauch_anzahl = 0

        # Attribute der QMLUI zur Verfügung stellen
        self.kontext.setContextProperty('a_schlauch_anzahl',
                                        a_schlauch_anzahl)
        self.kontext.setContextProperty('b_schlauch_anzahl',
                                        b_schlauch_anzahl)
        self.kontext.setContextProperty('c_schlauch_anzahl',
                                        c_schlauch_anzahl)
        self.kontext.setContextProperty('d_schlauch_anzahl',
                                        d_schlauch_anzahl)
        self.kontext.setContextProperty('beschaedigt_schlauch_anzahl',
                                        beschaedigt_schlauch_anzahl)

        # Anzahl der beschädigten Schläuche (Variable wird später im Programm
        # benötigt)
        self.beschaedigt_schlauch_anzahl = beschaedigt_schlauch_anzahl

        # Liste aller Schläuche wird erstellt
        sql_anweisung = sql_anweisungen.sql(select='*', tabelle='tblInventar',
                                            filtern='dtKategorie ="Schlauche"',
                                            sortieren='dtBezeichnung')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('schlauch_gegenstaende', None)
            self.schlauch_liste_setzen_signal.emit()
            return
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(inventarliste_objekt.Inventarliste(
                        schlussel=eintrag[0], bezeichnung=eintrag[1],
                        zustand=eintrag[3], kategorie=eintrag[4],
                        knappheit=eintrag[6]))
                except:
                    datensatz.append(inventarliste_objekt.Inventarliste(None))
            schlauche = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('schlauch_gegenstaende', schlauche)
            self.aktuelle_schlauch_liste = datensatz
        else:
            self.kontext.setContextProperty('schlauch_gegenstaende', None)
        self.schlauch_liste_setzen_signal.emit()
示例#20
0
    def ereignisInfo(self, packung, einsatz=False):
        """ *Die Informationen eines Ereignisses werden gesetzt*

        **Parameter**

        - packung: Verpackter Datensatz eines Ereignisses
        - einsatz: Wenn *einsatz* auf True steht, werden weitere Informationen
          eines Einsatzes ausgelesen

        """
        # Hilfsvariable um herauszufinden ob ein Fehler aufgetreten ist
        fehler = False
        self.packung = packung
        self.ereignisSchlussel = packung.datensatz.schlussel
        self.kontext.setContextProperty('ereignis_bezeichnung',
                                        packung.datensatz.bezeichnung)
        self.kontext.setContextProperty('ereignis_typ_t',
                                        packung.datensatz.typ)
        self.kontext.setContextProperty('ereignis_startdatum',
                                        str(packung.datensatz.startdatum))
        self.kontext.setContextProperty('ereignis_startzeit',
                                        str(packung.datensatz.startzeit))
        self.kontext.setContextProperty('ereignis_enddatum',
                                        str(packung.datensatz.enddatum))
        self.kontext.setContextProperty('ereignis_endzeit',
                                        str(packung.datensatz.endzeit))

        # Liste aller Mitglieder welche an einem Ereignis teilgenommen haben
        sql_anweisung = sql_anweisungen.sql(
            tabelle='tblTeilgenommen, tblMitglied',
            select="idStammlistennummer, dtName, dtVorname",
            filtern="fiStammlistennummerTeilnahme=idStammlistennummer AND "
            "fiEreignisnummer=%s" % (self.ereignisSchlussel))
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('teilnahme_liste', None)
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(mitglied_objekt.Mitglied(
                        schlussel=eintrag[0],
                        name=eintrag[1], vorname=eintrag[2]))
                except:
                    datensatz.append(mitglied_objekt.Mitglied(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('teilnahme_liste', datenliste)
        else:
            self.kontext.setContextProperty('teilnahme_liste', None)

        if einsatz:
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblEinsatzbericht',
                select='*', filtern='fiEreignisnummerEinsatz=%s' % (
                    self.ereignisSchlussel))
            try:
                fehler = False
                eintrag = self.datenbank_verbindung.execute(sql_anweisung)
            except:
                self.kontext.setContextProperty('einsatz_einsatztyp', None)
                self.kontext.setContextProperty('einsatz_ortschaft', None)
                self.kontext.setContextProperty('einsatz_adresse', None)
                self.kontext.setContextProperty('einsatz_postleitzahl', None)
                self.kontext.setContextProperty('betreff_name', None)
                self.kontext.setContextProperty('betreff_vorname', None)
                self.einsatzInfo_signal.emit()
                fehler = True
            if not fehler:
                self.kontext.setContextProperty('einsatz_einsatztyp',
                                                eintrag[0][1])
                self.kontext.setContextProperty('einsatz_ortschaft',
                                                eintrag[0][2])
                self.kontext.setContextProperty('einsatz_adresse',
                                                eintrag[0][3])
                self.kontext.setContextProperty('einsatz_postleitzahl',
                                                eintrag[0][4])
                self.kontext.setContextProperty('betreff_name',
                                                eintrag[0][5])
                self.kontext.setContextProperty('betreff_vorname',
                                                eintrag[0][6])
                self.einsatzInfo_signal.emit()
        self.ereignisInfo_signal.emit()
示例#21
0
    def ereignis_verwaltung(self, einsatz=False):
        """ *Das Menü zur Vewaltung von Ereignissen wird aufgerufen*

        **Parameter**

        - einsatz: Wenn *einsatz* gesetzt ist, werden nur Ereignisse welche als
          Einsatz markiert wurden angezeigt

        """
        # Hilfsvariable um herauszufinden ob ein Fehler aufgetreten ist
        fehler = False
        # Ereignis Typen
        ereignis_typen = ['Fest', 'Lehrgang', 'Medizinische Kontrolle',
                          'Einsatz', 'Generalversammlung', 'Übung',
                          'Sonstiges']
        datensatz = []
        for eintrag in ereignis_typen:
            datensatz.append(ereignis_objekt.EreignisTyp(
                typ=eintrag))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        self.kontext.setContextProperty('ereignis_typen', datenliste)

        # Einsatz Typen
        einsatz_typen = ['Feuer', 'Verkehrssunfall', 'Technischer Einsatz']
        datensatz = []
        for eintrag in einsatz_typen:
            datensatz.append(ereignis_objekt.EreignisTyp(
                typ=eintrag))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        self.kontext.setContextProperty('einsatz_typen', datenliste)

        # Liste aller Mitglieder
        sql_anweisung = sql_anweisungen.sql(
            tabelle='tblMitglied',
            select='idStammlistennummer, dtName, dtVorname')
        try:
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('mitglied_liste', None)
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(mitglied_objekt.Mitglied(
                        schlussel=eintrag[0], name=eintrag[1], vorname=eintrag[2]))
                except:
                    datensatz.append(mitglied_objekt.Mitglied(None))
        datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
            datensatz)
        if not fehler:
            self.kontext.setContextProperty('mitglied_liste', datenliste)

        # Falls es sich um einen Einsatzbericht handelt
        if einsatz:
            # Liste aller Einsätze
            sql_anweisung = sql_anweisungen.sql(
                tabelle='tblEreignis',
                filtern='dtEreignisTyp="Einsatz"')
        else:
            # Liste aller Ereignisse
            sql_anweisung = sql_anweisungen.sql(tabelle='tblEreignis')
        try:
            fehler = False
            sql_resultate = self.datenbank_verbindung.execute(sql_anweisung)
        except:
            self.kontext.setContextProperty('ereignis_liste', None)
            fehler = True
        datensatz = []
        if sql_resultate:
            for eintrag in sql_resultate:
                try:
                    datensatz.append(ereignis_objekt.Ereignis(
                        schlussel=eintrag[0],
                        typ=eintrag[1], startdatum=eintrag[2],
                        startzeit=eintrag[3], enddatum=eintrag[4],
                        endzeit=eintrag[5], bezeichnung=eintrag[6]))
                except:
                    datensatz.append(ereignis_objekt.Ereignis(None))
            datenliste = verpacken_modelisieren.list_verpackung_modelisieren(
                datensatz)
            self.kontext.setContextProperty('ereignis_liste', datenliste)
        else:
            self.kontext.setContextProperty('ereignis_liste', None)

        # Kontrolle in welchem Menü sich der Benutzer befindet
        if einsatz:
            self.einsatz_verwaltung_signal.emit()
        else:
            self.ereignis_verwaltung_signal.emit()