fishished
This commit is contained in:
parent
0f6cd32fa7
commit
2f677551bb
BIN
Praktikum3/.DS_Store
vendored
BIN
Praktikum3/.DS_Store
vendored
Binary file not shown.
BIN
Praktikum3/bt/.DS_Store
vendored
BIN
Praktikum3/bt/.DS_Store
vendored
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -8,6 +8,7 @@ from .projekt import Projekt_cl, ProjektKomponenten_cl, Komponente_cl
|
||||
from .staff import QsMitarbeiter_cl, SwEntwickler_cl
|
||||
from .error import KatFehler_cl, KatUrsache_cl, Fehler_cl
|
||||
from .eval import ProList_cl, KatList_cl
|
||||
from .database import KatfehlerDatabase_cl, KatursacheDatabase_cl, FehlerDatabase_cl, KomponenteDatabase_cl, QsMitarbeiterDatabase_cl, SwEntwicklerDatabase_cl, ProjektDatabase_cl
|
||||
|
||||
#----------------------------------------------------------
|
||||
class Application_cl(object):
|
||||
@ -18,20 +19,29 @@ class Application_cl(object):
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
#-------------------------------------------------------
|
||||
self.database_o = {
|
||||
'projekt': ProjektDatabase_cl(),
|
||||
'komponente': KomponenteDatabase_cl(),
|
||||
'qsmitarbeiter': QsMitarbeiterDatabase_cl(),
|
||||
'swentwickler': SwEntwicklerDatabase_cl(),
|
||||
'katfehler': KatfehlerDatabase_cl(),
|
||||
'katursache': KatursacheDatabase_cl(),
|
||||
'fehler': FehlerDatabase_cl()
|
||||
}
|
||||
self.handler_o = {
|
||||
'projekt': Projekt_cl(),
|
||||
'projektkomponenten': ProjektKomponenten_cl(),
|
||||
'komponente': Komponente_cl(),
|
||||
'projekt': Projekt_cl(self.database_o),
|
||||
'projektkomponenten': ProjektKomponenten_cl(self.database_o),
|
||||
'komponente': Komponente_cl(self.database_o),
|
||||
|
||||
'qsmitarbeiter': QsMitarbeiter_cl(),
|
||||
'swentwickler': SwEntwickler_cl(),
|
||||
'qsmitarbeiter': QsMitarbeiter_cl(self.database_o),
|
||||
'swentwickler': SwEntwickler_cl(self.database_o),
|
||||
|
||||
'katfehler': KatFehler_cl(),
|
||||
'katursache': KatUrsache_cl(),
|
||||
'fehler': Fehler_cl(),
|
||||
'katfehler': KatFehler_cl(self.database_o),
|
||||
'katursache': KatUrsache_cl(self.database_o),
|
||||
'fehler': Fehler_cl(self.database_o),
|
||||
|
||||
'prolist': ProList_cl(),
|
||||
'katlist': KatList_cl()
|
||||
'prolist': ProList_cl(self.database_o),
|
||||
'katlist': KatList_cl(self.database_o)
|
||||
}
|
||||
|
||||
# es wird keine index-Methode vorgesehen, weil stattdessen
|
||||
@ -40,6 +50,7 @@ class Application_cl(object):
|
||||
#-------------------------------------------------------
|
||||
def GET(self, path_spl = 'projekt', id=None, **data_opl):
|
||||
#-------------------------------------------------------
|
||||
|
||||
retVal_o = {
|
||||
'data': None
|
||||
}
|
||||
@ -72,6 +83,7 @@ class Application_cl(object):
|
||||
if retVal_o['id'] == None:
|
||||
cherrypy.response.status = 409
|
||||
|
||||
|
||||
return json.dumps(retVal_o)
|
||||
|
||||
#-------------------------------------------------------
|
||||
|
@ -10,19 +10,6 @@ import json
|
||||
class Database_cl(object):
|
||||
#----------------------------------------------------------
|
||||
|
||||
# Daten in dieser Variante dauerhaft (persistent) speichern
|
||||
# dazu jedes Element in einer Datei, die entsprechend der id benannt ist, speichern
|
||||
# alle Elemente werden zur Laufzeit des Servers zur Vereinfachung auch im
|
||||
# Hauptspeicher abgelegt
|
||||
|
||||
# die nächste zu vergebende Id wird ebenfalls dauerhaft gespeichert
|
||||
|
||||
# zur Vereinfachung wird hier fest vorgegebenen, dass sich die Daten
|
||||
# im Unterverzeichnis "data/<type>" befinden (siehe Konstruktor)
|
||||
|
||||
# es wird ferner angenommen, dass die Datei "data/<type>/maxid.dat" bereits existiert
|
||||
# und als einzigen Eintrag den aktuellen Wert der maximalen Id enthält
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self, type_spl):
|
||||
#-------------------------------------------------------
|
||||
@ -122,6 +109,23 @@ class Database_cl(object):
|
||||
|
||||
return maxId_s
|
||||
|
||||
|
||||
#----------------------------------------------------------
|
||||
class LoadDatabase_cl(Database_cl):
|
||||
#----------------------------------------------------------
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
#-------------------------------------------------------
|
||||
super().__init__('projekt')
|
||||
super().__init__('komponente')
|
||||
super().__init__('qsmitarbeiter')
|
||||
super().__init__('swentwickler')
|
||||
super().__init__('projekt')
|
||||
super().__init__('fehler')
|
||||
super().__init__('katursache')
|
||||
super().__init__('katfehler')
|
||||
|
||||
#----------------------------------------------------------
|
||||
class ProjektDatabase_cl(Database_cl):
|
||||
#----------------------------------------------------------
|
||||
@ -162,10 +166,14 @@ class KomponenteDatabase_cl(Database_cl):
|
||||
#-------------------------------------------------------
|
||||
def deleteDependencies_px(self, id):
|
||||
#-------------------------------------------------------
|
||||
komponenten = {}
|
||||
for komponente in list(self.data_o):
|
||||
print(komponente)
|
||||
if self.data_o[komponente]['projektid'] == id:
|
||||
self.delete_px(komponente)
|
||||
return id
|
||||
komponenten[komponente] = komponente
|
||||
return komponenten
|
||||
|
||||
|
||||
#----------------------------------------------------------
|
||||
class QsMitarbeiterDatabase_cl(Database_cl):
|
||||
@ -272,10 +280,8 @@ class FehlerDatabase_cl(Database_cl):
|
||||
#-------------------------------------------------------
|
||||
# hier zur Vereinfachung:
|
||||
# Aufruf ohne id: alle Einträge liefern
|
||||
print(self.data_o)
|
||||
data_o = {}
|
||||
for entry in self.data_o:
|
||||
print(self.data_o[entry])
|
||||
if self.data_o[entry]['status'] != "geprueft":
|
||||
data_o[entry] = self.data_o[entry]
|
||||
|
||||
@ -286,12 +292,16 @@ class FehlerDatabase_cl(Database_cl):
|
||||
#-------------------------------------------------------
|
||||
# hier zur Vereinfachung:
|
||||
# Aufruf ohne id: alle Einträge liefern
|
||||
print(self.data_o)
|
||||
data_o = {}
|
||||
for entry in self.data_o:
|
||||
print(self.data_o[entry])
|
||||
if self.data_o[entry]['status'] == "geprueft":
|
||||
data_o[entry] = self.data_o[entry]
|
||||
|
||||
return data_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def deleteDependencies_px(self, id):
|
||||
#-------------------------------------------------------
|
||||
for fehler in list(self.data_o):
|
||||
if self.data_o[fehler]['komponenteid'] == id:
|
||||
self.delete_px(fehler)
|
||||
# EOF
|
@ -43,9 +43,9 @@ class KatFehler_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = KatfehlerDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id=None):
|
||||
@ -55,10 +55,10 @@ class KatFehler_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['katfehler'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['katfehler'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
@ -85,7 +85,7 @@ class KatFehler_cl(object):
|
||||
}
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['katfehler'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -107,7 +107,7 @@ class KatFehler_cl(object):
|
||||
'name': data_opl["name_s"]
|
||||
}
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['katfehler'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -120,7 +120,7 @@ class KatFehler_cl(object):
|
||||
'id': id
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
if self.db_o['katfehler'].delete_px(id):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -146,9 +146,9 @@ class KatUrsache_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = KatursacheDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id = None):
|
||||
@ -158,10 +158,10 @@ class KatUrsache_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['katursache'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['katursache'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
@ -188,7 +188,7 @@ class KatUrsache_cl(object):
|
||||
}
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['katursache'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -210,7 +210,7 @@ class KatUrsache_cl(object):
|
||||
'name': data_opl["name_s"]
|
||||
}
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['katursache'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -223,7 +223,7 @@ class KatUrsache_cl(object):
|
||||
'id': id
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
if self.db_o['katursache'].delete_px(id):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -252,14 +252,9 @@ class Fehler_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = FehlerDatabase_cl()
|
||||
self.dbKomponente_o = KomponenteDatabase_cl()
|
||||
self.dbQsMitarbeiter_o = QsMitarbeiterDatabase_cl()
|
||||
self.dbSwEntwickler_o = SwEntwicklerDatabase_cl()
|
||||
self.dbKatFehler_o = KatfehlerDatabase_cl()
|
||||
self.dbKatUrsache_o = KatursacheDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id=None, type=None):
|
||||
@ -271,21 +266,21 @@ class Fehler_cl(object):
|
||||
# Anforderung der Liste
|
||||
print('true')
|
||||
if type == 'erkannt':
|
||||
retVal_o['data'] = self.db_o.readErkannt_px()
|
||||
retVal_o['data'] = self.db_o['fehler'].readErkannt_px()
|
||||
elif type == 'behoben':
|
||||
retVal_o['data'] = self.db_o.readBehoben_px()
|
||||
retVal_o['data'] = self.db_o['fehler'].readBehoben_px()
|
||||
else:
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['fehler'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['fehler'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
retVal_o['komponente'] = self.dbKomponente_o.read_px()
|
||||
retVal_o['qsmitarbeiter'] = self.dbQsMitarbeiter_o.read_px()
|
||||
retVal_o['swentwickler'] = self.dbSwEntwickler_o.read_px()
|
||||
retVal_o['katfehler'] = self.dbKatFehler_o.read_px()
|
||||
retVal_o['katursache'] = self.dbKatUrsache_o.read_px()
|
||||
retVal_o['komponente'] = self.db_o['komponente'].read_px()
|
||||
retVal_o['qsmitarbeiter'] = self.db_o['qsmitarbeiter'].read_px()
|
||||
retVal_o['swentwickler'] = self.db_o['swentwickler'].read_px()
|
||||
retVal_o['katfehler'] = self.db_o['katfehler'].read_px()
|
||||
retVal_o['katursache'] = self.db_o['katursache'].read_px()
|
||||
|
||||
return retVal_o
|
||||
|
||||
@ -322,7 +317,7 @@ class Fehler_cl(object):
|
||||
data_o['zeitbehoben'] = datetime.now().strftime("%d.%m.%Y-%H:%M")
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['fehler'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -356,7 +351,7 @@ class Fehler_cl(object):
|
||||
}
|
||||
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['fehler'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -369,7 +364,7 @@ class Fehler_cl(object):
|
||||
'id': id
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
if self.db_o['fehler'].delete_px(id):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
|
@ -26,11 +26,9 @@ class ProList_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.dbFehler_o = FehlerDatabase_cl()
|
||||
self.dbProjekt_o = ProjektDatabase_cl()
|
||||
self.dbKomponente_o = KomponenteDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id=None):
|
||||
@ -38,11 +36,11 @@ class ProList_cl(object):
|
||||
data_o = {}
|
||||
retVal_o = {}
|
||||
retVal_o['data'] = {}
|
||||
data_o['Fehler'] = self.dbFehler_o.read_px()
|
||||
data_o['Projekt'] = self.dbProjekt_o.read_px()
|
||||
data_o['Komponente'] = self.dbKomponente_o.read_px()
|
||||
|
||||
data_o['Fehler'] = self.db_o['fehler'].read_px()
|
||||
data_o['Projekt'] = self.db_o['projekt'].read_px()
|
||||
data_o['Komponente'] = self.db_o['komponente'].read_px()
|
||||
for projektid in data_o['Projekt']:
|
||||
print(projektid)
|
||||
projekt = data_o['Projekt'][projektid]['name']
|
||||
retVal_o['data'][projekt] = 'None'
|
||||
for komponente in data_o['Komponente']:
|
||||
@ -61,13 +59,11 @@ class ProList_cl(object):
|
||||
retVal_o['data'][projekt][fehler]['fehlerstatus'] = 'erkannt'
|
||||
else:
|
||||
retVal_o['data'][projekt][fehler]['fehlerstatus'] = 'beseitigt'
|
||||
print(retVal_o)
|
||||
return retVal_o
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
"""
|
||||
Anforderung GET PUT POST DELETE
|
||||
-----------------------------------------------------------------------------------------
|
||||
@ -81,10 +77,9 @@ class KatList_cl(object):
|
||||
|
||||
exposed = True # gilt für alle Methoden
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.dbFehler_o = FehlerDatabase_cl()
|
||||
self.dbKatFehler_o = KatfehlerDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id=None):
|
||||
@ -92,10 +87,8 @@ class KatList_cl(object):
|
||||
data_o = {}
|
||||
retVal_o = {}
|
||||
retVal_o['data'] = {}
|
||||
data_o['Fehler'] = self.dbFehler_o.read_px()
|
||||
data_o['Kategorie'] = self.dbKatFehler_o.read_px()
|
||||
|
||||
print(data_o)
|
||||
data_o['Fehler'] = self.db_o['fehler'].read_px()
|
||||
data_o['Kategorie'] = self.db_o['katfehler'].read_px()
|
||||
|
||||
for kategorieid in data_o['Kategorie']:
|
||||
kategorie = data_o['Kategorie'][kategorieid]['name']
|
||||
@ -112,6 +105,8 @@ class KatList_cl(object):
|
||||
retVal_o['data'][kategorie][fehler]['fehlerstatus'] = 'erkannt'
|
||||
else:
|
||||
retVal_o['data'][kategorie][fehler]['fehlerstatus'] = 'beseitigt'
|
||||
print (retVal_o)
|
||||
print (retVal_o)
|
||||
return retVal_o
|
||||
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
import json
|
||||
|
||||
import cherrypy
|
||||
from .database import ProjektDatabase_cl, KomponenteDatabase_cl
|
||||
from .database import ProjektDatabase_cl, KomponenteDatabase_cl, FehlerDatabase_cl
|
||||
# Method-Dispatching!
|
||||
|
||||
# Übersicht Anforderungen / Methoden
|
||||
@ -44,11 +44,9 @@ class Projekt_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = ProjektDatabase_cl()
|
||||
self.dbKomponente_o = KomponenteDatabase_cl()
|
||||
|
||||
self.db_o = database_o
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id = None):
|
||||
#-------------------------------------------------------
|
||||
@ -57,10 +55,10 @@ class Projekt_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['projekt'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['projekt'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
@ -87,7 +85,7 @@ class Projekt_cl(object):
|
||||
}
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['projekt'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -109,7 +107,7 @@ class Projekt_cl(object):
|
||||
'name': data_opl["name_s"]
|
||||
}
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['projekt'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -123,7 +121,8 @@ class Projekt_cl(object):
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
self.dbKomponente_o.deleteDependencies_px(id)
|
||||
kid = self.db_o['komponente'].deleteDependencies_px(id)
|
||||
self.db_o['fehler'].deleteDependencies_px(kid)
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
|
||||
@ -145,9 +144,9 @@ class ProjektKomponenten_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = KomponenteDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self):
|
||||
@ -157,10 +156,10 @@ class ProjektKomponenten_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['komponente'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['komponente'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
@ -187,13 +186,12 @@ class Komponente_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = KomponenteDatabase_cl()
|
||||
self.dbProjekt_o = ProjektDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id = None):
|
||||
def GET(self, database, id = None):
|
||||
#-------------------------------------------------------
|
||||
retVal_o = {
|
||||
'data': None,
|
||||
@ -201,14 +199,14 @@ class Komponente_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['komponente'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = database['komponente'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
retVal_o['projekt'] = self.dbProjekt_o.read_px()
|
||||
retVal_o['projekt'] = self.db_o['projekt'].read_px()
|
||||
|
||||
return retVal_o
|
||||
|
||||
@ -234,7 +232,7 @@ class Komponente_cl(object):
|
||||
}
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['komponente'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -257,7 +255,7 @@ class Komponente_cl(object):
|
||||
'projektid': data_opl["projektid_s"]
|
||||
}
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['komponente'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -270,7 +268,7 @@ class Komponente_cl(object):
|
||||
'id': id
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
if self.db_o['komponente'].delete_px(id):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
|
@ -43,9 +43,9 @@ class QsMitarbeiter_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = QsMitarbeiterDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id = None):
|
||||
@ -55,10 +55,10 @@ class QsMitarbeiter_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['qsmitarbeiter'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['qsmitarbeiter'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
@ -85,7 +85,7 @@ class QsMitarbeiter_cl(object):
|
||||
}
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['qsmitarbeiter'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -107,7 +107,7 @@ class QsMitarbeiter_cl(object):
|
||||
'name': data_opl["name_s"]
|
||||
}
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['qsmitarbeiter'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -120,7 +120,7 @@ class QsMitarbeiter_cl(object):
|
||||
'id': id
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
if self.db_o['qsmitarbeiter'].delete_px(id):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -146,9 +146,9 @@ class SwEntwickler_cl(object):
|
||||
exposed = True # gilt für alle Methoden
|
||||
|
||||
#-------------------------------------------------------
|
||||
def __init__(self):
|
||||
def __init__(self, database_o):
|
||||
#-------------------------------------------------------
|
||||
self.db_o = SwEntwicklerDatabase_cl()
|
||||
self.db_o = database_o
|
||||
|
||||
#-------------------------------------------------------
|
||||
def GET(self, id = None):
|
||||
@ -158,10 +158,10 @@ class SwEntwickler_cl(object):
|
||||
}
|
||||
if id == None:
|
||||
# Anforderung der Liste
|
||||
retVal_o['data'] = self.db_o.read_px()
|
||||
retVal_o['data'] = self.db_o['swentwickler'].read_px()
|
||||
else:
|
||||
# Anforderung eines Dokuments
|
||||
data_o = self.db_o.read_px(id)
|
||||
data_o = self.db_o['swentwickler'].read_px(id)
|
||||
if data_o != None:
|
||||
retVal_o['data'] = adjustId_p(id, data_o)
|
||||
|
||||
@ -188,7 +188,7 @@ class SwEntwickler_cl(object):
|
||||
}
|
||||
# Update-Operation
|
||||
retVal_o['id'] = id_s
|
||||
if self.db_o.update_px(id_s, data_o):
|
||||
if self.db_o['swentwickler'].update_px(id_s, data_o):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
@ -210,7 +210,7 @@ class SwEntwickler_cl(object):
|
||||
'name': data_opl["name_s"]
|
||||
}
|
||||
# Create-Operation
|
||||
id_s = self.db_o.create_px(data_o)
|
||||
id_s = self.db_o['swentwickler'].create_px(data_o)
|
||||
retVal_o['id'] = id_s
|
||||
|
||||
return retVal_o
|
||||
@ -223,7 +223,7 @@ class SwEntwickler_cl(object):
|
||||
'id': id
|
||||
}
|
||||
|
||||
if self.db_o.delete_px(id):
|
||||
if self.db_o['swentwickler'].delete_px(id):
|
||||
pass
|
||||
else:
|
||||
retVal_o['id'] = None
|
||||
|
BIN
Praktikum3/bt/data/.DS_Store
vendored
BIN
Praktikum3/bt/data/.DS_Store
vendored
Binary file not shown.
@ -1,14 +0,0 @@
|
||||
{
|
||||
"name": "Fehler1",
|
||||
"id": "14",
|
||||
"komponenteid": "1",
|
||||
"katfehlerid": "1",
|
||||
"katursacheid": "1",
|
||||
"qsmitarbeiterid": "1",
|
||||
"swentwicklerid": "5",
|
||||
"status": "geprueft",
|
||||
"beschreibung": "Beschreibung1",
|
||||
"beschreibungursache": "Fehlerbeschreibun",
|
||||
"zeiterfasst": "19.01.2017-09:44",
|
||||
"zeitbehoben": "19.01.2017-09:54"
|
||||
}
|
14
Praktikum3/bt/data/fehler/25.dat
Normal file
14
Praktikum3/bt/data/fehler/25.dat
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "Fehler1",
|
||||
"id": "25",
|
||||
"komponenteid": "26",
|
||||
"katfehlerid": "12",
|
||||
"katursacheid": "15",
|
||||
"qsmitarbeiterid": "10",
|
||||
"swentwicklerid": "9",
|
||||
"status": "geprueft",
|
||||
"beschreibung": "Fehler2",
|
||||
"beschreibungursache": "Fehlerbeschreibung",
|
||||
"zeiterfasst": "19.01.2017-15:26",
|
||||
"zeitbehoben": "19.01.2017-15:27"
|
||||
}
|
14
Praktikum3/bt/data/fehler/26.dat
Normal file
14
Praktikum3/bt/data/fehler/26.dat
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "Fehler2",
|
||||
"id": "26",
|
||||
"komponenteid": "27",
|
||||
"katfehlerid": "12",
|
||||
"katursacheid": "15",
|
||||
"qsmitarbeiterid": "8",
|
||||
"swentwicklerid": "8",
|
||||
"status": "geprueft",
|
||||
"beschreibung": "Beschreibung2",
|
||||
"beschreibungursache": "Beschreibung",
|
||||
"zeiterfasst": "19.01.2017-15:31",
|
||||
"zeitbehoben": "19.01.2017-15:31"
|
||||
}
|
14
Praktikum3/bt/data/fehler/27.dat
Normal file
14
Praktikum3/bt/data/fehler/27.dat
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "Fehler3",
|
||||
"id": "27",
|
||||
"komponenteid": "26",
|
||||
"katfehlerid": "",
|
||||
"katursacheid": "",
|
||||
"qsmitarbeiterid": "",
|
||||
"swentwicklerid": "",
|
||||
"status": "protokolliert",
|
||||
"beschreibung": "Beschreibung3",
|
||||
"beschreibungursache": "",
|
||||
"zeitbehoben": "",
|
||||
"zeiterfasst": "19.01.2017-15:47"
|
||||
}
|
@ -1,14 +1,14 @@
|
||||
{
|
||||
"name": "Fehler2",
|
||||
"id": "15",
|
||||
"komponenteid": "1",
|
||||
"name": "Test",
|
||||
"id": "28",
|
||||
"komponenteid": "26",
|
||||
"katfehlerid": "",
|
||||
"katursacheid": "",
|
||||
"qsmitarbeiterid": "",
|
||||
"swentwicklerid": "",
|
||||
"status": "protokolliert",
|
||||
"beschreibung": "Beschreibung2",
|
||||
"beschreibung": "Test",
|
||||
"beschreibungursache": "",
|
||||
"zeiterfasst": "19.01.2017-09:49",
|
||||
"zeitbehoben": ""
|
||||
"zeitbehoben": "",
|
||||
"zeiterfasst": "19.01.2017-15:49"
|
||||
}
|
14
Praktikum3/bt/data/fehler/29.dat
Normal file
14
Praktikum3/bt/data/fehler/29.dat
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "Test2",
|
||||
"id": "29",
|
||||
"komponenteid": "28",
|
||||
"katfehlerid": "12",
|
||||
"katursacheid": "14",
|
||||
"qsmitarbeiterid": "8",
|
||||
"swentwicklerid": "9",
|
||||
"status": "geprueft",
|
||||
"beschreibung": "Test2",
|
||||
"beschreibungursache": "teset",
|
||||
"zeiterfasst": "19.01.2017-15:50",
|
||||
"zeitbehoben": "19.01.2017-15:51"
|
||||
}
|
@ -1 +1 @@
|
||||
15
|
||||
29
|
@ -1,4 +1,4 @@
|
||||
{
|
||||
"name": "Fehlerkategorie1",
|
||||
"id": "1"
|
||||
"id": "12"
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{
|
||||
"name": "Fehlerkategorie2",
|
||||
"id": "2"
|
||||
"id": "13"
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{
|
||||
"name": "Fehlerkategorie3",
|
||||
"id": "3"
|
||||
"id": "14"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerkategorie5",
|
||||
"id": "5"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerkategorie6",
|
||||
"id": "6"
|
||||
}
|
@ -1 +1 @@
|
||||
6
|
||||
14
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerursachekategorie1",
|
||||
"id": "1"
|
||||
}
|
4
Praktikum3/bt/data/katursache/14.dat
Normal file
4
Praktikum3/bt/data/katursache/14.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Fehlerursache1",
|
||||
"id": "14"
|
||||
}
|
4
Praktikum3/bt/data/katursache/15.dat
Normal file
4
Praktikum3/bt/data/katursache/15.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Fehlerursache2",
|
||||
"id": "15"
|
||||
}
|
4
Praktikum3/bt/data/katursache/16.dat
Normal file
4
Praktikum3/bt/data/katursache/16.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Fehlerursache3",
|
||||
"id": "16"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerursachekategorie2",
|
||||
"id": "2"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerursachekategorie3",
|
||||
"id": "3"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerursachekategorie4",
|
||||
"id": "4"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerursachekategorie6",
|
||||
"id": "6"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Fehlerursachekategorie7",
|
||||
"id": "7"
|
||||
}
|
@ -1 +1 @@
|
||||
7
|
||||
16
|
5
Praktikum3/bt/data/komponente/24.dat
Normal file
5
Praktikum3/bt/data/komponente/24.dat
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Komponente1",
|
||||
"projektid": "19",
|
||||
"id": "24"
|
||||
}
|
5
Praktikum3/bt/data/komponente/25.dat
Normal file
5
Praktikum3/bt/data/komponente/25.dat
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Komponente2",
|
||||
"projektid": "19",
|
||||
"id": "25"
|
||||
}
|
5
Praktikum3/bt/data/komponente/26.dat
Normal file
5
Praktikum3/bt/data/komponente/26.dat
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Komponente3",
|
||||
"projektid": "21",
|
||||
"id": "26"
|
||||
}
|
5
Praktikum3/bt/data/komponente/27.dat
Normal file
5
Praktikum3/bt/data/komponente/27.dat
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Komponente4",
|
||||
"projektid": "20",
|
||||
"id": "27"
|
||||
}
|
5
Praktikum3/bt/data/komponente/28.dat
Normal file
5
Praktikum3/bt/data/komponente/28.dat
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Test",
|
||||
"projektid": "19",
|
||||
"id": "28"
|
||||
}
|
@ -1 +1 @@
|
||||
6
|
||||
28
|
4
Praktikum3/bt/data/projekt/19.dat
Normal file
4
Praktikum3/bt/data/projekt/19.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Projekt1",
|
||||
"id": "19"
|
||||
}
|
4
Praktikum3/bt/data/projekt/20.dat
Normal file
4
Praktikum3/bt/data/projekt/20.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Projekt2",
|
||||
"id": "20"
|
||||
}
|
4
Praktikum3/bt/data/projekt/21.dat
Normal file
4
Praktikum3/bt/data/projekt/21.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Projekt3",
|
||||
"id": "21"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Projekt4",
|
||||
"id": "4"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "Projekt7",
|
||||
"id": "7"
|
||||
}
|
@ -1 +1 @@
|
||||
7
|
||||
21
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "QS-Mitarbeiter1",
|
||||
"id": "1"
|
||||
}
|
4
Praktikum3/bt/data/qsmitarbeiter/10.dat
Normal file
4
Praktikum3/bt/data/qsmitarbeiter/10.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "QsMitarbeiter3",
|
||||
"id": "10"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "QS-Mitarbeiter2",
|
||||
"id": "2"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "QS-Mitarbeiter3",
|
||||
"id": "3"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "QS-Mitarbeiter4",
|
||||
"id": "4"
|
||||
}
|
4
Praktikum3/bt/data/qsmitarbeiter/8.dat
Normal file
4
Praktikum3/bt/data/qsmitarbeiter/8.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "QsMitarbeiter1",
|
||||
"id": "8"
|
||||
}
|
4
Praktikum3/bt/data/qsmitarbeiter/9.dat
Normal file
4
Praktikum3/bt/data/qsmitarbeiter/9.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "QsMitarbeiter2",
|
||||
"id": "9"
|
||||
}
|
@ -1 +1 @@
|
||||
5
|
||||
10
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "SW-Entwickler1",
|
||||
"id": "1"
|
||||
}
|
4
Praktikum3/bt/data/swentwickler/10.dat
Normal file
4
Praktikum3/bt/data/swentwickler/10.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "SwMitarbeiter3",
|
||||
"id": "10"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "SW-Entwickler2",
|
||||
"id": "2"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "SW-Entwickler3",
|
||||
"id": "3"
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "SW-Entwickler5",
|
||||
"id": "5"
|
||||
}
|
4
Praktikum3/bt/data/swentwickler/8.dat
Normal file
4
Praktikum3/bt/data/swentwickler/8.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "SwMitarbeiter1",
|
||||
"id": "8"
|
||||
}
|
4
Praktikum3/bt/data/swentwickler/9.dat
Normal file
4
Praktikum3/bt/data/swentwickler/9.dat
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "SwMitarbeiter2",
|
||||
"id": "9"
|
||||
}
|
@ -1 +1 @@
|
||||
5
|
||||
10
|
@ -355,6 +355,5 @@
|
||||
<p>Der Eventservice implementiert das "Publish-Subscriber-Muster". Das bedeutet, dass es einen, oder mehrere "Subscriber" und einen "Publisher" gibt. Melden die "Subscriber" sich bei dem System an, erhalten sie jegliche "Notifications", die der "Publisher" sendet. Der Vorteil dieses Systems ist es, dass die Subscriber Nachrichten von Objekten erhalten können, von dessen Existenz sie garnicht wissen.</p>
|
||||
<h3 id="templateverarbeitung">Templateverarbeitung</h3>
|
||||
<p>Die Templates liegen in Form von modifizierten "HTML-Dateien" vor. Diese wurde um Code der Sprache "Javascript" erweitert und mit einer speziellen Syntax gekennzeichnet. Die Template-Engine kann hiermit dynamisch Inhalt erzeugen.</p>
|
||||
<h2 id="prüfung-markup-und-stilregeln">Prüfung Markup und Stilregeln</h2>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -196,5 +196,3 @@ Der Vorteil dieses Systems ist es, dass die Subscriber Nachrichten von Objekten
|
||||
|
||||
### Templateverarbeitung
|
||||
Die Templates liegen in Form von modifizierten "HTML-Dateien" vor. Diese wurde um Code der Sprache "Javascript" erweitert und mit einer speziellen Syntax gekennzeichnet. Die Template-Engine kann hiermit dynamisch Inhalt erzeugen.
|
||||
|
||||
## Prüfung Markup und Stilregeln
|
@ -105,6 +105,41 @@ APP.DetailView_cl = class {
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "saven":
|
||||
// Formularinhalt prüfen
|
||||
if (this.checkContent_p()) {
|
||||
// kein klassisches submit, es wird auch keine neue Anzeige vorgenommen
|
||||
var path_s = this.path_s;
|
||||
var data_s = $("#idForm").serialize();
|
||||
console.log(data_s);
|
||||
var type_s = 'PUT';
|
||||
var id_s = $('#id_s').val();
|
||||
if (id_s == '') {
|
||||
type_s = 'POST';
|
||||
}
|
||||
$.ajax({
|
||||
context: this,
|
||||
dataType: "json",
|
||||
data: data_s,
|
||||
url: path_s,
|
||||
type: type_s
|
||||
})
|
||||
.done(function (data_opl) {
|
||||
// Umwandlung der JSON-Daten vom Server bereits erfolgt
|
||||
$('#id_s').val(data_opl['id']);
|
||||
// aktuellen Formularinhalt speichern
|
||||
// (das Formular wird ja nicht mehr neu geladen!)
|
||||
this.storeFormContent_p();
|
||||
alert("Speichern ausgeführt!");
|
||||
})
|
||||
.fail(function(jqXHR_opl, textStatus_spl) {
|
||||
alert( "Fehler bei Anforderung: " + textStatus_spl );
|
||||
});
|
||||
|
||||
} else {
|
||||
alert("Bitte prüfen Sie die Eingaben in den Formularfeldern!")
|
||||
}
|
||||
break;
|
||||
case "saver":
|
||||
// kein klassisches submit, es wird auch keine neue Anzeige vorgenommen
|
||||
var path_s = this.path_s;
|
||||
|
@ -5,12 +5,15 @@
|
||||
</h2>
|
||||
<div id="idContentArea" class="clContentArea">
|
||||
<table id="idList">
|
||||
<tr class="listheader"><th>Name</th><th>ID</th><th>Komponente-ID</th><th>(KatFehler-ID)</th><th>(KatUrsache-ID)</th><th>(QS)</th><th>(SW)</th><th>Status</th></tr>
|
||||
<tr class="listheader"><th>Name</th><th>ID</th><th>Komponente-ID</th><th>Status</th></tr>
|
||||
@var rows_o = context['data'];@
|
||||
@for var key_s in rows_o@
|
||||
<tr id='#key_s#'>
|
||||
@var row_o = rows_o[key_s];@
|
||||
<td>#row_o['name']#</td><td>#row_o['id']#</td><td>#row_o['komponenteid']#</td><td>#row_o['katfehlerid']#</td><td>#row_o['katursacheid']#</td><td>#row_o['qsmitarbeiterid']#</td><td>#row_o['swentwicklerid']#</td><td>#row_o['status']#</td>
|
||||
<td>#row_o['name']#</td>
|
||||
<td>#row_o['id']#</td>
|
||||
<td>#row_o['komponenteid']#</td>
|
||||
<td>#row_o['status']#</td>
|
||||
</tr>
|
||||
@endfor@
|
||||
</table>
|
||||
|
@ -70,7 +70,7 @@
|
||||
</div>
|
||||
<div id="idButtonArea" class="clButtonArea">
|
||||
<button data-action="back" class="clButton">Zurück</button>
|
||||
<button data-action="save" class="clButton">Entwickler zuweisen</button>
|
||||
<button data-action="saven" class="clButton">Entwickler zuweisen</button>
|
||||
</div>
|
||||
</form>
|
||||
<!-- EOF -->
|
@ -57,7 +57,7 @@
|
||||
</div>
|
||||
<div id="idButtonArea" class="clButtonArea">
|
||||
<button data-action="back" class="clButton">Zurück</button>
|
||||
<button data-action="save" class="clButton">Pruefung erfolgreich</button>
|
||||
<button data-action="saven" class="clButton">Pruefung erfolgreich</button>
|
||||
<button data-action="saver" class="clButton">Pruefung nicht erfolgreich</button>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -62,7 +62,7 @@
|
||||
</div>
|
||||
<div id="idButtonArea" class="clButtonArea">
|
||||
<button data-action="back" class="clButton">Zurück</button>
|
||||
<button data-action="save" class="clButton">Abschluss melden</button>
|
||||
<button data-action="saven" class="clButton">Abschluss melden</button>
|
||||
</div>
|
||||
</form>
|
||||
<!-- EOF -->
|
@ -13,8 +13,10 @@
|
||||
|
||||
@for var keyFehler_s in rowsFehler_o@
|
||||
@if rowsFehler_o[keyFehler_s] != 'None'@
|
||||
<tr>
|
||||
<td>#rowsFehler_o[keyFehler_s]['fehlername']#</td>
|
||||
<td>#rowsFehler_o[keyFehler_s]['fehlerstatus']#</td>
|
||||
</tr>
|
||||
@endif@
|
||||
@endfor@
|
||||
</table>
|
||||
|
@ -13,9 +13,11 @@
|
||||
|
||||
@for var keyFehler_s in rowsFehler_o@
|
||||
@if rowsFehler_o[keyFehler_s] != 'None'@
|
||||
<tr>
|
||||
<td>#rowsFehler_o[keyFehler_s]['fehlername']#</td>
|
||||
<td>#rowsFehler_o[keyFehler_s]['komponentename']#</td>
|
||||
<td>#rowsFehler_o[keyFehler_s]['fehlerstatus']#</td>
|
||||
</tr>
|
||||
@endif@
|
||||
@endfor@
|
||||
</table>
|
||||
|
Loading…
x
Reference in New Issue
Block a user