Zusammenfassung der Grundgeräte
This commit is contained in:
@@ -12,22 +12,11 @@ class MainUI(QDialog): # erbt von QDialog
|
||||
loadUi ("Aufbaumaster2CSV.ui", self)
|
||||
self.filename = None
|
||||
self.path = None
|
||||
self.df = None
|
||||
self.df_vte = None
|
||||
self.df_cmdb = None
|
||||
self.dfb = None
|
||||
self.openBtn.clicked.connect(self.open_file_dialog)
|
||||
self.saveBtn.clicked.connect(self.save_file_dialog)
|
||||
self.unique_groups = None
|
||||
self.unique_typs = None
|
||||
self.gruppierung = self.comboBoxGrp
|
||||
self.gruppierung.activated.connect(self.changegroup)
|
||||
self.geraetetyp = self.comboBoxGT
|
||||
self.geraetetyp.activated.connect(self.changegtyp)
|
||||
self.rBtnHostnames.setChecked(True)
|
||||
self.rBtnHostnames.host = "Hostnamen"
|
||||
self.rBtnAlles.setChecked(False)
|
||||
self.rBtnAlles.host = "Alles"
|
||||
self.rBtnHostnames.toggled.connect(self.onClicked)
|
||||
self.rBtnAlles.toggled.connect(self.onClicked)
|
||||
self.filter = "Hostnamen"
|
||||
self.group = None
|
||||
self.typ = None
|
||||
@@ -58,23 +47,7 @@ class MainUI(QDialog): # erbt von QDialog
|
||||
|
||||
def onClicked(self):
|
||||
pass
|
||||
# radioButton = self.sender()
|
||||
# if radioButton.isChecked():
|
||||
# self.filter = radioButton.host
|
||||
# ic("Filter: ", self.filter)
|
||||
#print ("Filter ", self.filter)
|
||||
#if self.filter == "Hostnamen":
|
||||
# self.df = self.df.dropna(subset=['Hostname'])
|
||||
#self.df = (self.df['Hostname']).dropna(how="all")
|
||||
#self.df = self.df['Hostname'].str.len() > 0
|
||||
# print(self.df['Hostname'])
|
||||
#else:
|
||||
#self.df = self.df.reset_index(drop=True)
|
||||
# self.df = self.dfb
|
||||
# self.unique_groups = None
|
||||
# self.unique_typs = None
|
||||
# self.changetable()
|
||||
# print(self.df['Hostname'])
|
||||
|
||||
|
||||
def collectdata(self):
|
||||
|
||||
@@ -87,17 +60,20 @@ class MainUI(QDialog): # erbt von QDialog
|
||||
|
||||
# Nach relevanten Spalten filtern
|
||||
self.df_vte = self.df_vte[self.df_vte['Gruppierung']=='Grundgerät']
|
||||
self.df_vte = self.df_vte.drop(columns=['RAM','Bestelldatum','Hersteller','Lieferant','SAP-Nr.','Lieferdatum','Lieferschein-Nr.','WV-Start','WV-Ende','Aufgaben Schritt'])
|
||||
#self.df_vte = self.df_vte.columns.difference(self.df_cmdb.columns)
|
||||
self.df_cmdb = self.df_cmdb[self.df_cmdb['Filter'].isin(['Grundgerät','Erweiterung'])]
|
||||
self.df_cmdb = self.df_cmdb.drop(columns=['WV-Start','WV-Ende','CMDB-Status'])
|
||||
|
||||
|
||||
# Einfügen von Spalten in die CMDB-Tabelle
|
||||
self.dfb = self.df_vte.merge(self.df_cmdb, on=['Hostname'], how='left')
|
||||
print(self.dfb)
|
||||
#self.dfb = self.dfb.T.drop_duplicates().T
|
||||
self.dfb = self.dfb.drop(columns=['Bestelldatum_y','Hersteller_y','Lieferant_y','RAM_y','SAP-Nr._y','Lieferschein_y','Lieferschein-Nr._y'])
|
||||
self.dfb = self.dfb.rename(columns={'Bestelldatum_x':'Bestelldatum','Hersteller_x':'Hersteller','Lieferant_x':'Lieferant'})
|
||||
# self.dfb = self.dfb.drop(columns=['Bestelldatum_y','Hersteller_y','Lieferant_y','RAM_y','SAP-Nr._y'])
|
||||
# self.dfb = self.dfb.rename(columns={'Bestelldatum_x':'Bestelldatum','Hersteller_x':'Hersteller','Lieferant_x':'Lieferant'})
|
||||
|
||||
ic(self.df_cmdb)
|
||||
# ic(self.df_cmdb)
|
||||
|
||||
|
||||
# Zusammenfassen aller geänderten Werte
|
||||
@@ -113,158 +89,20 @@ class MainUI(QDialog): # erbt von QDialog
|
||||
#ic(self.filter)
|
||||
|
||||
def save_file_dialog(self):
|
||||
pass
|
||||
# ic(self.df)
|
||||
# options = QFileDialog.Options()
|
||||
# options |= QFileDialog.DontUseNativeDialog
|
||||
# self.savefilename, _ = QFileDialog.getSaveFileName(self,
|
||||
# "Save File", "", "CSV(*.csv);;CSV Files(*.csv)", options = options)
|
||||
ic(self.dfb)
|
||||
options = QFileDialog.Options()
|
||||
options |= QFileDialog.DontUseNativeDialog
|
||||
self.savefilename, _ = QFileDialog.getSaveFileName(self,
|
||||
"Save File", "", "CSV(*.csv);;CSV Files(*.csv)", options = options)
|
||||
|
||||
self.dfb.to_csv(self.savefilename, index=None, header=True, encoding='utf-8')
|
||||
print("Datei wurde gespeichert:", self.savefilename)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#self.df['HE'] = self.df['HE'].apply(lambda x: x if pd.isnull(x) else str(int(x)))
|
||||
#self.df['Anz. HE'] = self.df['Anz. HE'].apply(lambda x: x if pd.isnull(x) else str(int(x)))
|
||||
|
||||
#self.df['Objekt-Titel'] = self.df['Hostname']
|
||||
|
||||
# für Überarbeitung zwei Spalten
|
||||
#self.df["Mandanten ID"] = self.df["Hostname"]
|
||||
|
||||
#self.df["Segment"] = self.df["Hostname"]
|
||||
|
||||
#self.df = self.df[self.df['Gerätetyp'] == self.typ]
|
||||
|
||||
|
||||
|
||||
#self.df = self.df.drop(['Ursprungsdatei', 'Preis aus finaler Bestellung','Bestellung initiiert', 'Kommentar', 'Gruppierung', 'Zuordnung zur Serien-Nr.', 'Bemerkung','in PMA-ISEM erfasst','CMDB erfasst','BSI Kenner'], axis=1)
|
||||
|
||||
#self.df = self.df.rename(columns = {"Modell / Artikel / \nAbweichungen": "Modell",
|
||||
# "Auftragsnr. Beschaffung": "Auftragsnr.",
|
||||
# "Name der Bestellung": "Bestellung",
|
||||
# "SAP Nr": "SAP",
|
||||
# "Beschaffung und Lieferinfo": "Lieferinfo",
|
||||
# })
|
||||
|
||||
#self.df['SAP'] = self.df['SAP'].apply(lambda x: x if pd.isnull(x) else str(int(x)))
|
||||
|
||||
#self.df.loc[self.df['Rack'] == "FT.31_Rack1_Reihe22_Platz584", "Rack"] = "g1.22.584-590"
|
||||
#self.df.loc[self.df['Rack'] == "FT.42_Rack1_Reihe4_Platz501", "Rack"] = "g2.04.501-507"
|
||||
|
||||
#self.df['Lieferschein-Nr.'] = self.df['Lieferschein-Nr.'].map(str)
|
||||
#self.df['Angebot-Nr.'] = self.df['Angebot-Nr.'].map(str)
|
||||
|
||||
|
||||
#if self.typ == "VM" or self.typ == "SFP" or self.typ == "SFP+":
|
||||
# self.group = None;
|
||||
|
||||
#if self.typ == "SFP" or self.typ == "SFP+":
|
||||
# self.df = self.df.drop(["Etage","Raum","Reihe","Rack","HE","Einschub","Montage","Anz. HE", "Formfaktor", "Stadt", "Gebäude", "Lizenz-Key\nWV-Nr.", "RuB-ID","Läuft auf", "Clusterpartner", "CMDB-Status", "Mandanten ID", "Segment"], axis=1)
|
||||
# #self.df['Angebot-Nr.'].fillna('')
|
||||
# self.df['Angebot-Nr.'] = self.df['Angebot-Nr.'].replace('nan','', regex=True)
|
||||
# self.df['Lieferschein-Nr.'] = self.df['Lieferschein-Nr.'].replace('nan','', regex=True)
|
||||
#self.df['Gerätetyp'] = self.df['Gerätetyp'].replace('SFP+','SFP', regex=False)
|
||||
|
||||
|
||||
|
||||
# Zeilen mit ungenauen Bezeichnern entfernen
|
||||
# indexAge = df[(df['Name'] == 'John Holland') | (df['Position'] == 'SG')].index
|
||||
# df.drop(indexAge, inplace=True)
|
||||
# S-1110-SFP == Medienkonverter
|
||||
# indexModell = self.df[ (self.df['Modell'] == 'CISCO TRANSCEIVER MODULE 1000BASE-LX / LH SFP')|
|
||||
# (self.df['Modell'] == 'Nokia SFP – GIGE Base T RJ45 R6&6 DDM -40/85C') |
|
||||
# (self.df['Modell'] == 'S-1110-SFP') |
|
||||
# (self.df['Modell'] == 'Nokia SFP – GIGE LX-LC ROHS 6/6 DDM -40/85C')].index
|
||||
#self.df.drop(indexModell, inplace=True)
|
||||
|
||||
|
||||
|
||||
#self.df['Modell'] = self.df['Modell'].replace('SFP-MM-1G / PSFP-1000-M2LC05','PSFP-1000-M2LC05', regex=False)
|
||||
#self.df['Modell'] = self.df['Modell'].replace('PSFP-1000-M2LC05 / SFP-MM-1G','PSFP-1000-M2LC05', regex=False)
|
||||
#self.df['Modell'] = self.df['Modell'].replace('Perle PSFP -1000-S2LC10','PSFP-1000-S2LC10', regex=False)
|
||||
#self.df['Modell'] = self.df['Modell'].replace('10G Base Active Optical SFP + Cable 2m','SFP-10G-AOC2M=', regex=False)
|
||||
#self.df['Modell'] = self.df['Modell'].replace('10G Base Active Optical SFP + Cable 3m','SFP-10G-AOC3M=', regex=False)
|
||||
# self.df['Modell'] = self.df['Modell'].replace('10G Base Active Optical SFP + Cable 2m','SFP-10G-AOC2M=', regex=False)
|
||||
#self.df["Objekt-Bezeichner"] = self.df["Modell"]
|
||||
|
||||
#self.df = self.df[self.df['Gruppierung'] == self.group]
|
||||
|
||||
|
||||
# ic(self.typ)
|
||||
# ic(self.group)
|
||||
# ic(self.df)
|
||||
|
||||
# Entfernt, da ich neue Objektgruppe Terminalserver angelegt habe
|
||||
# if self.typ == "Server" and self.group == "Grundgerät":
|
||||
# self.df['Kategorie'] = "Server"
|
||||
# elif self.typ == "Terminalserver" and self.group == "Grundgerät":
|
||||
# self.df['Kategorie'] = "Konsolenserver"
|
||||
|
||||
|
||||
#self.df.replace(to_replace=r'ohne', value='', regex=False)
|
||||
#pd.is_numeric_dtype(self.df['SAP']):
|
||||
# pd.to_numeric(self.df['A'], errors='coerce')
|
||||
|
||||
|
||||
|
||||
# ic(self.df)
|
||||
|
||||
# ic(self.filter)
|
||||
|
||||
#if self.filter == "Hostnamen":
|
||||
# self.df = self.df.dropna(subset=['Hostname'])
|
||||
# self.df = self.df.apply(self.prüfe_und_setze_wert, axis=1)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#ic(type(self.df['Hostname'].str[4:6]))
|
||||
#self.df["Mandanten ID"] = self.df['Hostname'].str[4:6]
|
||||
#ic(self.df['Hostname'].str[6:8])
|
||||
#self.df["Segment"] = self.df['Hostname'].str[6:8]
|
||||
|
||||
|
||||
#https://stackoverflow.com/questions/33266344/np-where-not-working-in-my-pandas
|
||||
#self.df['Mandanten ID'] = np.where(self.df['Hostname'].str[4:6] == "10", 'm10 CMP Plattform / iM.0 / iM.4 / PAP sIMCP',
|
||||
#np.where(self.df['Hostname'].str[4:6] == "19", 'm19 Testumgebung',
|
||||
#np.where(self.df['Hostname'].str[4:6] == "20", 'm20 iM.1 Interner Mandant \(Schutzbedarf sehr hoch\)')))
|
||||
#self.df['Mandanten ID'].where(self.df['Mandanten ID'] == "19", "m19 Testumgebung")
|
||||
#ic(type(self.df['Hostname'].str[4:6]).astype(int))
|
||||
#ic(self.df['Hostname'].str[4:6].any())
|
||||
|
||||
|
||||
#ic(self.df['Hostname'].str[4:6].all())
|
||||
#if (self.df['Hostname'].str[4:6]).any():
|
||||
#tmid = self.mandantenid(self.df['Hostname'] )
|
||||
|
||||
#ic(tmid[4:6])
|
||||
#ic(type(self.mandantenid(self.df['Hostname'])[4:6]))
|
||||
#tmid = self.mandantenid(self.df['Hostname'])
|
||||
#if self.mandantenid(self.df["Hostname"]) == "10":
|
||||
# self.df['Mandanten ID'] = 'm10 CMP Plattform / iM.0 / iM.4 / PAP sIMCP'
|
||||
#else:
|
||||
# self.df['Mandanten ID'] = "Test"
|
||||
# elif self.mandantenid(self.df['Hostname'])[4:6] == "19":
|
||||
# self.df['Mandanten ID'] = 'm19 Testumgebung'
|
||||
# else:
|
||||
# self.df['Mandanten ID'] = self.mandantenid(self.df['Hostname'])[4:6]
|
||||
|
||||
#if self.mandantenid():
|
||||
#if self.df['Hostname'].any().str.contains('(?![a-z]{4})[0-9]{2}', regex=True):
|
||||
#if self.df['Hostname'].any().str.contains('([0-9]{2,2}(?![a-z])', regex=True):
|
||||
# pass
|
||||
|
||||
# if self.df['Hostname'].str[4:6] =="10":
|
||||
# self.df['Mandanten ID'] = 'm10 CMP Plattform / iM.0 / iM.4 / PAP sIMCP'
|
||||
#self.df['Mandanten ID'] = 'm10 CMP Plattform / iM.0 / iM.4 / PAP sIMCP'
|
||||
# elif (self.df['Hostname'].str[4:6]).any() == "19":
|
||||
# self.df['Mandanten ID'] = 'm19 Testumgebung'
|
||||
# else:
|
||||
# self.df['Mandanten ID'] = self.df["Hostname"].str[4:6]
|
||||
|
||||
|
||||
# match item(self.df['Hostname'].str[4:6]):
|
||||
# case '10':
|
||||
@@ -295,8 +133,7 @@ class MainUI(QDialog): # erbt von QDialog
|
||||
# if self.selected_typ_value != "VM":
|
||||
# self.df = self.df[self.df['Gruppierung'] == selected_group_value]
|
||||
|
||||
# self.df.to_csv(self.savefilename, index=None, header=True, encoding='utf-8')
|
||||
# print("Datei wurde gespeichert:", self.savefilename)
|
||||
|
||||
|
||||
# def changetable(self):
|
||||
# with self.path:
|
||||
|
||||
Reference in New Issue
Block a user