2017-01-16 23:32:28 +01:00
|
|
|
# coding: utf-8
|
|
|
|
|
|
|
|
import json
|
|
|
|
|
|
|
|
import cherrypy
|
2017-01-19 00:27:04 +01:00
|
|
|
from .database import FehlerDatabase_cl, ProjektDatabase_cl, KomponenteDatabase_cl, KatfehlerDatabase_cl
|
2017-01-16 23:32:28 +01:00
|
|
|
# Method-Dispatching!
|
|
|
|
|
|
|
|
# Übersicht Anforderungen / Methoden
|
|
|
|
# (beachte: / relativ zu /navigation, siehe Konfiguration Server!)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
"""
|
|
|
|
Anforderung GET PUT POST DELETE
|
|
|
|
-----------------------------------------------------------------------------------------
|
|
|
|
/prolist/ Auswertung nach
|
|
|
|
Projekt/Komponente/
|
|
|
|
Status
|
|
|
|
"""
|
|
|
|
|
|
|
|
#----------------------------------------------------------
|
|
|
|
class ProList_cl(object):
|
|
|
|
#----------------------------------------------------------
|
|
|
|
|
|
|
|
exposed = True # gilt für alle Methoden
|
|
|
|
|
|
|
|
#-------------------------------------------------------
|
2017-01-19 17:28:35 +01:00
|
|
|
def __init__(self, database_o):
|
2017-01-16 23:32:28 +01:00
|
|
|
#-------------------------------------------------------
|
2017-01-19 17:28:35 +01:00
|
|
|
self.db_o = database_o
|
2017-01-16 23:32:28 +01:00
|
|
|
|
|
|
|
#-------------------------------------------------------
|
2017-01-19 00:27:04 +01:00
|
|
|
def GET(self, id=None):
|
2017-01-16 23:32:28 +01:00
|
|
|
#-------------------------------------------------------
|
2017-01-19 00:27:04 +01:00
|
|
|
data_o = {}
|
|
|
|
retVal_o = {}
|
|
|
|
retVal_o['data'] = {}
|
2017-01-19 17:28:35 +01:00
|
|
|
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()
|
2017-01-19 00:27:04 +01:00
|
|
|
for projektid in data_o['Projekt']:
|
2017-01-19 17:28:35 +01:00
|
|
|
print(projektid)
|
2017-01-19 00:27:04 +01:00
|
|
|
projekt = data_o['Projekt'][projektid]['name']
|
|
|
|
retVal_o['data'][projekt] = 'None'
|
|
|
|
for komponente in data_o['Komponente']:
|
|
|
|
if retVal_o['data'][projekt] == 'None':
|
|
|
|
retVal_o['data'][projekt] = {}
|
|
|
|
if data_o['Komponente'][komponente]['projektid'] == projektid:
|
|
|
|
for fehler in data_o['Fehler']:
|
|
|
|
retVal_o['data'][projekt][fehler] = 'None'
|
|
|
|
if data_o['Fehler'][fehler]['komponenteid'] == komponente:
|
|
|
|
if retVal_o['data'][projekt][fehler] == 'None':
|
|
|
|
retVal_o['data'][projekt][fehler] = {}
|
|
|
|
retVal_o['data'][projekt][fehler]['fehlername'] = data_o['Fehler'][fehler]['name']
|
|
|
|
retVal_o['data'][projekt][fehler]['projektname'] = data_o['Projekt'][projektid]['name']
|
|
|
|
retVal_o['data'][projekt][fehler]['komponentename'] = data_o['Komponente'][komponente]['name']
|
|
|
|
if data_o['Fehler'][fehler]['status'] != 'geprueft':
|
|
|
|
retVal_o['data'][projekt][fehler]['fehlerstatus'] = 'erkannt'
|
|
|
|
else:
|
|
|
|
retVal_o['data'][projekt][fehler]['fehlerstatus'] = 'beseitigt'
|
2017-01-19 17:28:35 +01:00
|
|
|
print(retVal_o)
|
2017-01-19 00:27:04 +01:00
|
|
|
return retVal_o
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-01-16 23:32:28 +01:00
|
|
|
"""
|
|
|
|
Anforderung GET PUT POST DELETE
|
|
|
|
-----------------------------------------------------------------------------------------
|
|
|
|
/katlist/ Auswertung nach
|
|
|
|
Kategorie/Status
|
|
|
|
"""
|
|
|
|
|
|
|
|
#----------------------------------------------------------
|
|
|
|
class KatList_cl(object):
|
|
|
|
#----------------------------------------------------------
|
|
|
|
|
|
|
|
exposed = True # gilt für alle Methoden
|
|
|
|
#-------------------------------------------------------
|
2017-01-19 17:28:35 +01:00
|
|
|
def __init__(self, database_o):
|
2017-01-16 23:32:28 +01:00
|
|
|
#-------------------------------------------------------
|
2017-01-19 17:28:35 +01:00
|
|
|
self.db_o = database_o
|
2017-01-16 23:32:28 +01:00
|
|
|
|
|
|
|
#-------------------------------------------------------
|
2017-01-19 00:27:04 +01:00
|
|
|
def GET(self, id=None):
|
2017-01-16 23:32:28 +01:00
|
|
|
#-------------------------------------------------------
|
2017-01-19 00:27:04 +01:00
|
|
|
data_o = {}
|
|
|
|
retVal_o = {}
|
|
|
|
retVal_o['data'] = {}
|
2017-01-19 17:28:35 +01:00
|
|
|
data_o['Fehler'] = self.db_o['fehler'].read_px()
|
|
|
|
data_o['Kategorie'] = self.db_o['katfehler'].read_px()
|
2017-01-19 00:27:04 +01:00
|
|
|
|
|
|
|
for kategorieid in data_o['Kategorie']:
|
|
|
|
kategorie = data_o['Kategorie'][kategorieid]['name']
|
|
|
|
retVal_o['data'][kategorie] = 'None'
|
|
|
|
for fehler in data_o['Fehler']:
|
|
|
|
if retVal_o['data'][kategorie] == 'None':
|
|
|
|
retVal_o['data'][kategorie] = {}
|
2017-01-19 17:28:35 +01:00
|
|
|
retVal_o['data'][kategorie][fehler] = 'None'
|
2017-01-19 00:27:04 +01:00
|
|
|
if data_o['Fehler'][fehler]['katfehlerid'] == kategorieid:
|
|
|
|
if retVal_o['data'][kategorie][fehler] == 'None':
|
|
|
|
retVal_o['data'][kategorie][fehler] = {}
|
|
|
|
retVal_o['data'][kategorie][fehler]['fehlername'] = data_o['Fehler'][fehler]['name']
|
|
|
|
if data_o['Fehler'][fehler]['status'] != 'geprueft':
|
|
|
|
retVal_o['data'][kategorie][fehler]['fehlerstatus'] = 'erkannt'
|
|
|
|
else:
|
|
|
|
retVal_o['data'][kategorie][fehler]['fehlerstatus'] = 'beseitigt'
|
2017-01-19 17:28:35 +01:00
|
|
|
print (retVal_o)
|
|
|
|
print (retVal_o)
|
2017-01-19 00:27:04 +01:00
|
|
|
return retVal_o
|
2017-01-16 23:32:28 +01:00
|
|
|
|
|
|
|
|
|
|
|
# EOF
|