# coding: utf-8 import json import cherrypy from .database import FehlerDatabase_cl, ProjektDatabase_cl, KomponenteDatabase_cl, KatfehlerDatabase_cl # 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 #------------------------------------------------------- def __init__(self, database_o): #------------------------------------------------------- self.db_o = database_o #------------------------------------------------------- def GET(self, id=None): #------------------------------------------------------- data_o = {} retVal_o = {} retVal_o['data'] = {} 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']: 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' print(retVal_o) return retVal_o """ Anforderung GET PUT POST DELETE ----------------------------------------------------------------------------------------- /katlist/ Auswertung nach Kategorie/Status """ #---------------------------------------------------------- class KatList_cl(object): #---------------------------------------------------------- exposed = True # gilt für alle Methoden #------------------------------------------------------- def __init__(self, database_o): #------------------------------------------------------- self.db_o = database_o #------------------------------------------------------- def GET(self, id=None): #------------------------------------------------------- data_o = {} retVal_o = {} retVal_o['data'] = {} 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'] retVal_o['data'][kategorie] = 'None' for fehler in data_o['Fehler']: if retVal_o['data'][kategorie] == 'None': retVal_o['data'][kategorie] = {} retVal_o['data'][kategorie][fehler] = 'None' 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' print (retVal_o) print (retVal_o) return retVal_o # EOF