protected function tearDown() { $configuraciones = ConfiguracionDAO::search($this->configuracion); if (count($configuraciones) > 0) { ConfiguracionDAO::delete($configuraciones[0]); } }
public function testConfiguracionesPrevias() { //Comprueba que exista una configuración valida en la tabla de configuraciones decimales //echo " >> Comprobando la existencia de una configuracion de decimales previa\n"; $Configuraciones = ConfiguracionDAO::search(new Configuracion(array("descripcion" => "decimales"))); //Lee las configuraciones de la base de datos $nDecimales = $Configuraciones[0]; //Carga la primera configuración $temp = json_decode($nDecimales->getValor()); $Cambio = $temp->cambio; $Cantidades = $temp->cantidades; $Costos = $temp->costos; $Ventas = $temp->ventas; if (is_null($Cambio)) { $this->assertTrue(false); //echo "\tError, no hay decimales asignados a 'Cambio'\n"; } else { //echo "\tDecimales en 'Cambio': " . $Cambio."\n"; } if (is_null($Cantidades)) { $this->assertTrue(false); //echo "\tError, no hay decimales asignados a 'Cantidades'\n"; } else { //echo "\tDecimales en 'Cantidades': " . $Cantidades."\n"; } if (is_null($Costos)) { $this->assertTrue(false); //echo "\tError, no hay decimales asignados a 'Costos'\n"; } else { //echo "\tDecimales en 'Costos': " . $Costos."\n"; } if (is_null($Ventas)) { $this->assertTrue(false); //echo "\tError, no hay decimales asignados a 'Ventas'\n"; } else { //echo "\tDecimales en 'Ventas': " . $Ventas."\n"; } }
protected function tearDown() { $configuraciones = ConfiguracionDAO::search($this->configuracion); $configuracion = $configuraciones[0]; ConfiguracionDAO::delete($configuracion); }
public static function ObtenerMonedaBase() { $moneda_base = ConfiguracionDAO::search(new Configuracion(array("descripcion" => "id_moneda_base"))); if (count($moneda_base) < 1) { Logger::Log("La empresa no tiene moneda base"); //throw new BusinessLogicException("La empresa no tiene moneda base"); return NULL; } $moneda = MonedaDAO::getByPK($moneda_base[0]->getValor()); return array("id_moneda_base" => $moneda_base[0]->getValor(), "simbolo" => $moneda->getSimbolo()); }
$html .= " msg : 'Se modifico correctamente la configuración',"; $html .= " buttons : Ext.MessageBox.OK,"; $html .= " fn : function(){window.location = \"c.php#Decimales\";}"; $html .= " });"; //$html .= " window.location = \"c.php\"; "; $html .= " }"; $html .= " window.onbeforeunload = function(){}"; //$html .= " window.location = \"c.php\"; "; $html .= " }"; $html .= " }"; $html .= " );"; $html .= " }"; $html .= "</script>"; $page->addComponent($html); //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"); $page->addComponent("No se tiene registro de la configuracion 'decimales' en la tabla de configuraciones"); $dcantidades = ""; $dcambio = ""; $dventas = ""; $dcostos = ""; } else { $decimales = $configuraciones[0]; $config = json_decode($decimales->getValor()); $dcantidades = $config->cantidades; $dcambio = $config->cambio; $dventas = $config->ventas; $dcostos = $config->costos; }
/** * * 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"); }