-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmeldungen.py
69 lines (65 loc) · 1.69 KB
/
meldungen.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import pandas as pd
from .defaults import df_fehlermeldungen
# Funktionen fuer Fehlermeldungen
def fehlermeldungen_generieren(f_dict):
"""
baut eine Fehlermeldung zusammen
:param dict f_dict
"""
if f_dict['Typ'] == 'allgemein':
if f_dict['Report'] == 0:
f_obj_str = ''
else:
f_obj_str = fehlermeldung_allgemein(f_dict['Report'])
if f_dict['Typ'] == 'Attribut':
f_obj_str = fehlermeldung_objekt(
f_dict['Objekte'],
f_dict['Report'],
f_dict['Spalte']
)
if f_dict['Typ'] == 'Geometrie':
f_obj_str = fehlermeldung_objekt(
f_dict['Objekte'],
f_dict['Report']
)
if f_obj_str != '':
f_obj_str = f_obj_str+'\n\n'
return f_obj_str
def fehlermeldung_allgemein(fehlercode):
"""
allgemeine fehlermeldung aus der Tabelle
:param oswDataFeedback fehlercode
"""
meldung = df_fehlermeldungen.loc[
df_fehlermeldungen['Code']==fehlercode,'Meldung'
].values[0]
return meldung
def fehlermeldung_objekt(
obj,
fehlercode,
spaltenname = None
):
"""
fehlermeldung fuer Objektliste
:param list obj
:param oswDataFeedback fehlercode
:param str spaltenname
"""
if len (obj) == 0:
meldung = ''
else:
if spaltenname is None:
meldung = ''
else:
meldung = (
'Spalte \"'
+ spaltenname
+ '\": '
)
meldung = (
meldung
+ fehlermeldung_allgemein(fehlercode)
+ '; Objekt-IDs:\n'
+ (', ').join([str(x) for x in obj])
)
return meldung