/** * Obtieene una lista con todos las herramientas que no tengan un distribuidor * excluyendo la herramienta que se desee * * @author Jonathan Sandoval <*****@*****.**> * @param Int $id ID de la herramienta a excluir * @return Array(Herramienta) Conjunto de Herramientas resultantes */ static function obtenerHerramientasSinDistribuidor($id = 0) { $tablaHerramienta = constant('TABLA_HERRAMIENTA'); $tablaRelacion = constant('TABLA_DISTRIBUIDOR_HERRAMIENTA'); $consulta = "SELECT * FROM {$tablaHerramienta} \n WHERE ID NOT IN (\n SELECT ID_Herramienta \n FROM {$tablaRelacion}\n WHERE ID_Distribuidor <> {$id}\n );"; $res = ControladorBaseDatos::query($consulta); $primera = new Herramienta(); $primera->setNombre('Sin Herramientas'); $primera->setID(0); $herramientas = array($primera); while ($row = $res->fetch_assoc()) { $herramienta = ControladorHerramienta::array_Herramienta($row); $herramientas[] = $herramienta; } return $herramientas; }
/** * Filtrar Herramienta por datos * * @author Jonathan Sandoval <*****@*****.**> * @param Herramienta $herramienta Objeto de la tipo Herramienta con los datos que deben de filtrar * @return Array(Herramienta) Regresa un Arreglo con el conjunto de Herramientas filtrados */ static function filtrarHerramienta($herramienta = NULL) { $nombreTabla = constant('TABLA_HERRAMIENTA'); $tablaTipo = constant('TABLA_TIPOHERRAMIENTA'); $id = $herramienta->getID(); $nombre = $herramienta->getNombre(); $precio = $herramienta->getPrecio(); $herramienta->getTipo() !== NULL ? $tipo = $herramienta->getTipo()->getNombre() : ($tipo = ""); $herramientas = array(); $consult_cad = ""; if ($tipo != "") { $consult_cad = "SELECT * \n FROM {$nombreTabla}\n WHERE ID LIKE \"%{$id}%\" AND\n Nombre LIKE \"%{$nombre}%\" AND\n Precio LIKE \"%{$precio}%\" AND\n ID_Tipo = (SELECT ID FROM {$tablaTipo} WHERE Nombre LIKE \"{$tipo}\")"; } else { $consult_cad = "SELECT * \n FROM {$nombreTabla}\n WHERE ID LIKE \"%{$id}%\" AND\n Nombre LIKE \"%{$nombre}%\" AND\n Precio LIKE \"%{$precio}%\""; } $res = ControladorBaseDatos::query($consult_cad); while ($row = $res->fetch_assoc()) { $herramientas[] = self::array_Herramienta($row); } return $herramientas; }