$compras = CompraDAO::getAll(); for ($i = 0; $i < sizeof($compras); $i++) { //buscar sus productos $productos = CompraProductoDAO::search(new CompraProducto(array("id_compra" => $compras[$i]->getIdCompra()))); for ($p = 0; $p < sizeof($productos); $p++) { $d_producto = $productos[$p]->asArray(); $id_sucursal = 7; echo "."; try { SucursalesController::IncrementarDeAlmacenes($d_producto, $id_sucursal); } catch (Exception $e) { echo "e"; } } } $ventas = VentaDAO::getAll(); for ($i = 0; $i < sizeof($ventas); $i++) { //buscar sus productos $productos = VentaProductoDAO::search(new VentaProducto(array("id_venta" => $ventas[$i]->getIdVenta()))); if (sizeof($productos) == 0) { e("NO HAY PRODUCTOS, WTF"); } for ($p = 0; $p < sizeof($productos); $p++) { echo "."; try { SucursalesController::DescontarDeAlmacenes($productos[$p], $id_sucursal); } catch (Exception $e) { echo "e"; } } }
<?php define("BYPASS_INSTANCE_CHECK", false); require_once "../../../server/bootstrap.php"; $page = new GerenciaComponentPage(); $page->addComponent(new TitleComponent("Ventas")); $page->addComponent(new MessageComponent("Lista de ventas")); $tabla = new TableComponent(array("id_comprador_venta" => "Cliente", "tipo_de_venta" => "Tipo de venta", "subtotal" => "Subtotal", "total" => "Total", "saldo" => "Saldo", "cancelada" => "Cancelada", "fecha" => "Fecha"), VentaDAO::getAll(NULL, NULL, "fecha", "DESC")); // function funcion_comprador($id_comprador) { return UsuarioDAO::getByPK($id_comprador) ? UsuarioDAO::getByPK($id_comprador)->getNombre() : "-----"; } $tabla->addColRender("id_comprador_venta", "funcion_comprador"); $tabla->addColRender("cancelada", "funcion_cancelada"); $tabla->addOnClick("id_venta", "(function(a){ window.location = 'ventas.detalle.php?vid=' + a; })"); $page->addComponent($tabla); $page->render();
/** * * Configura el numero de decimales que se usaran para ciertas operaciones del sistema, como precios de venta, costos, tipos de cambio, entre otros * * @param cambio int Tipos de Cambio * @param cantidades int Cantidades * @param costos int Costos y Precio de Compra * @param ventas int Precio de Venta * @return status string ok **/ public static function DecimalesConfiguracion($cambio, $cantidades, $costos, $ventas) { //validamos que los valores enviados sean numericos if (!ctype_digit($cambio) || !ctype_digit($cantidades) || !ctype_digit($costos) || !ctype_digit($ventas)) { Logger::error("Los valores ingresados deben de ser Numeros Enteros"); return array("status" => "failure", "message" => "Los valores ingresados deben de ser Numeros Enteros"); } //buscamos la configuracion de decimales $configuraciones = ConfiguracionDAO::search(new Configuracion(array("descripcion" => "decimales"))); if (empty($configuraciones)) { Logger::error("No se tiene registro de la configuracion 'decimales' en la tabla de configuraciones"); return array("status" => "failure", "message" => "No se tiene registro de la configuracion 'decimales' en la tabla de configuraciones"); } else { $decimales = $configuraciones[0]; $config = json_decode($decimales->getValor()); } //verificamos que la configuracion contenga todos los parametros if (!isset($config->cambio)) { Logger::error("No se encontro la configuracion de \"cambio\" en el JSON"); return array("status" => "failure", "message" => "No se encontro la configuracion de \"cambio\" en el JSON"); } if (!isset($config->cantidades)) { Logger::error("No se encontro la configuracion de \"cantidades\" en el JSON"); return array("status" => "failure", "message" => "No se encontro la configuracion de \"cantidades\" en el JSON"); } if (!isset($config->costos)) { Logger::error("No se encontro la configuracion de \"costos\" en el JSON"); return array("status" => "failure", "message" => "No se encontro la configuracion de \"costos\" en el JSON"); } if (!isset($config->ventas)) { Logger::error("No se encontro la configuracion de \"ventas\" en el JSON"); return array("status" => "failure", "message" => "No se encontro la configuracion de \"ventas\" en el JSON"); } //en caso de haber registrado compras de producto ya no se puede bajar el numero de decimales en "costo" y "cantidades" if (count(CompraDAO::getAll()) > 0) { if ($config->costos > $costos) { Logger::error("El valor de \"costos\" no puede ser menor que el valor actual, debido a que ya se cuenta con movimientos."); return array("status" => "failure", "message" => "El valor de \"costos\" no puede ser menor que el valor actual, debido a que ya se cuenta con movimientos."); } else { $config->costos = $costos; } if ($config->cantidades > $cantidades) { Logger::error("El valor de \"cantidades\" no puede ser menor que el valor actual, debido a que ya se cuenta con movimientos."); return array("status" => "failure", "message" => "El valor de \"cantidades\" no puede ser menor que el valor actual, debido a que ya se cuenta con movimientos."); } else { $config->cantidades = $cantidades; } } else { $config->costos = $costos; $config->cantidades = $cantidades; } //en caso de que haya ventas el valor de "ventas" no puede ser menor que el actual if (count(VentaDAO::getAll()) > 0) { if ($config->ventas > $ventas) { Logger::error("El valor de \"ventas\" no puede ser menor que el valor actual, debido a que ya se cuenta con movimientos."); return array("status" => "failure", "message" => "El valor de \"ventas\" no puede ser menor que el valor actual, debido a que ya se cuenta con movimientos."); } else { $config->ventas = $ventas; } } else { $config->ventas = $ventas; } //TODO : En el caso de la configuracion de cambio aun esta por definir las reglas de negocio $config->cambio = $cambio; //modificamos el valor de la configuracion de decimales $decimales->setValor(json_encode($config)); //intentamos guardar los cambios try { ConfiguracionDAO::save($decimales); } catch (Exception $e) { Logger::error("Error {$e}"); return array("status" => "failure", "message" => $e->getMessage()); } //termino con exito return array("status" => "okay"); }