def analizar_uso(uso): """ Determina todas las maderas que son compatibles con un uso dado """ maderas_analisis = [] maderas_compatibles = [] for madera in dbaccess.buscar_maderas(): madera_analisis = {} analisis = [] for pbd in dbaccess.buscar_propiedades(): k = pbd.get('id_propiedad') if not madera.propiedades.get(k) or not uso.propiedades.get(k): c = model.Compatibilidad(k,None,None) elif not uso.propiedades[k].min and madera.propiedades[k] <= uso.propiedades[k].max: c = model.Compatibilidad(k,True,pbd.get('obligatoria','')) elif not uso.propiedades[k].max and madera.propiedades[k] >= uso.propiedades[k].min: c = model.Compatibilidad(k,True,pbd.get('obligatoria','')) elif uso.propiedades[k].min <= madera.propiedades[k] <= uso.propiedades[k].max: c = model.Compatibilidad(k,True,pbd['obligatoria']) else: c = model.Compatibilidad(k,False,pbd['obligatoria']) analisis.append(c) madera_analisis['nombre_madera'] = madera.nombre madera_analisis['analisis'] = analisis maderas_analisis.append(madera_analisis) print uso.nombre,'=>',madera.nombre print procesar_presentacion(analisis) incompatibles = incompatibilidades(analisis) print incompatibles if len(madera.propiedades) > 0 and len(incompatibles) == 0: maderas_compatibles.append(madera) print 'Es COMPATIBLE :)' else: print 'Es INCOMPATIBLE :(' return ( maderas_compatibles, maderas_analisis )
def GET(self): return renderizador.seleccionar_madera(dbaccess.buscar_maderas())
def GET(self): maderas = dbaccess.buscar_maderas() propiedades = dbaccess.buscar_propiedades() return renderizador.maderas(propiedades,maderas)