Esempio n. 1
0
 def calcularImpacto(self, id_item, direccion):
     nodos = []
     self.construir(nodos,id_item,id_item, direccion)
     impacto = 0
     iman = ItemManager()
     fman = FaseManager()
     for nodo in nodos:
         print nodo.nombre
         impacto = impacto + nodo.complejidad
     print "El impacto es:", impacto
     graph = pydot.Dot(graph_type='digraph')
     count = 0
     for nodo in nodos:
         count = count + 1
     if count == 1:
         for nodo in nodos:
             graph = pydot.Dot(graph_type='digraph')
             fase1 = fman.getNombreById(nodo.fase)
             impresion = nodo.nombre + " - Fase "+ fase1 + " - Costo "+str(nodo.complejidad)
             node_a = pydot.Node(str(impresion),  style= "filled", fillcolor = "white")
             graph.add_node(node_a)
     else:
         for nodo in nodos: 
             for relacion in nodo.relaciones:
                 item = iman.getById(relacion)
                 fase1 = fman.getNombreById(nodo.fase)
                 fase2 = fman.getNombreById(item.id_fase)
                 edge = pydot.Edge(nodo.nombre + " - Fase: "+fase1 + " - Costo: "+str(nodo.complejidad), item.identificador + " - Fase: "+fase2 + " - Costo: "+str(item.complejidad))
                 graph.add_edge(edge)
     pathname = os.path.dirname(sys.argv[0]) 
     ruta = os.path.abspath(pathname)
     ruta = ruta + "/sgp/public/images/grafo.png"
     graph.write_png(ruta)
     return impacto
Esempio n. 2
0
 def newRelacion(self, *args, **kw):
     """Display a page to show a new record."""
     rm = ItemManager()
     fm = FaseManager()
     id_fase = kw['id_fase']
     items1 = rm.getItemsFaseActual(id_fase)
     items = rm.getItemsARelacionar(id_fase)
     items2 = []
     
     for item in items:
         fase = fm.getNombreById(item.id_fase)
         i = ItemARelacionar()
         i.identificador = item.identificador
         i.fase = fase
         i.id_item = item.id_item
        
         items2.append(i)
         
     return dict(value=kw, model=self.model.__name__, items1=items1, items2= items2, id_fase = kw['id_fase'])