/** * Transforma un array asociativo a un objeto del tipo CompraVenta * * @author Jonathan Sandoval <*****@*****.**> * @param Array $array Arreglo Asociativo con los datos de una CompraVenta * @return CompraVenta Objeto de tipo CompraVenta con datos del array recibido **/ static function array_CompraVenta($arrayCompraVenta = array()) { $tablaHerramientaComprada = constant('TABLA_HERRAMIENTA_COMPRADA'); $CompraVenta = new CompraVenta(); //Le ponemos los datos de lo que hemos recibido del array $CompraVenta->setID($arrayCompraVenta["ID"]); $CompraVenta->setSucursal(ControladorSucursal::obtenerSucursalID($arrayCompraVenta["Sucursal"])); $CompraVenta->setCliente(ControladorCliente::obtenerClienteID($arrayCompraVenta["Cliente"])); $CompraVenta->setEnvioDomicilio($arrayCompraVenta["Envio_Domicilio"]); $CompraVenta->setFacturar($arrayCompraVenta["Factura"]); $CompraVenta->setFecha($arrayCompraVenta["Fecha"]); //Obtenemos los datos de las herramientas $herramientaC = new HerramientaComprada(); $herramientas = array(); $cantidades = array(); $identificador = $arrayCompraVenta["Herramienta_Comprada"]; $consulta = "SELECT * \n FROM {$tablaHerramientaComprada}\n WHERE Identificador = {$identificador}"; $res = ControladorBaseDatos::query($consulta); while ($row = $res->fetch_assoc()) { $herramientas[] = $row["ID_Herramienta"]; $cantidades[] = $row["Cantidad"]; } $herramientaC->setCantidad($cantidades); $herramientaC->setIDHerramienta($herramientas); $herramientaC->setIdentificador($identificador); $CompraVenta->setHerramientaComprada($herramientaC); return $CompraVenta; }
$actual = ""; //Obtenemos las cantidades escogidas for ($j = 0; $j < strlen($cantidades); $j++) { if ($cantidades[$j] == '|') { $cantidadesArray[] = $actual; $actual = ""; } else { if ($cantidades[$j] == '*') { $actual = ""; } else { $actual = $actual . $cantidades[$j]; } } } //Obtenemos los IDS relacionados a cada seleccion del select foreach ($herramientaSelect as $key => $value) { $ID_Herramientas[] = $herramientasDB[$value]->getID(); } $herramientasCompradas->setIDHerramienta($ID_Herramientas); $herramientasCompradas->SetCantidad($cantidadesArray); $compra->setHerramientaComprada($herramientasCompradas); if (ControladorCompraVenta::insertarCompraVenta($compra)) { echo ControladorCompraVenta::obtenerUltimoIdentificador(); foreach ($ID_Herramientas as $key => $value) { ControladorHerramienta::disminuirHerramientas($value, $cantidadesArray[$key]); } } else { echo "KO"; } } //var_dump($compra);