private static function formatAddress($id_direccion)
 {
     if (is_null($daoDireccion = DireccionDAO::getByPK($id_direccion))) {
         throw new InvalidDataException("Esta  no existe.");
     }
     $out = self::readableText($daoDireccion->getCalle()) . " " . $daoDireccion->getNumeroExterior() . " ";
     if ($daoDireccion->getNumeroInterior() != null) {
         $out .= " Interior " . self::readableText($daoDireccion->getNumeroInterior());
     }
     $out .= "\nColonia " . self::readableText($daoDireccion->getColonia());
     if (!is_null($daoDireccion->getIdCiudad())) {
         $cDao = CiudadDAO::getByPK($daoDireccion->getIdCiudad());
         if (!is_null($cDao)) {
             $out .= "\n";
             $out .= self::readableText($cDao->getNombre()) . ", ";
             $e = EstadoDAO::getByPK($cDao->getIdEstado());
             if (!is_null($e)) {
                 $out .= self::readableText($e->getNombre()) . "";
             }
         }
     }
     if (strlen($daoDireccion->getCodigoPostal()) > 0) {
         $out .= "\nC.P. " . $daoDireccion->getCodigoPostal() . "\n";
     }
     return $out;
 }
 /**
  *
  *
  *
  **/
 private static function GetUsuarioArray($id_usuario)
 {
     $result = UsuarioDAO::getByPK($id_usuario)->asArray();
     if (!is_null($result["id_direccion"])) {
         $result["direccion"] = DireccionDAO::getByPK($result["id_direccion"])->asArray();
         unset($result["direccion"]["id_direccion"]);
         if (!is_null($result["direccion"]["id_ciudad"])) {
             $result["direccion"]["ciudad"] = CiudadDAO::getByPK($result["direccion"]["id_ciudad"])->asArray();
             unset($result["direccion"]["ciudad"]["id_ciudad"]);
         }
         unset($result["direccion"]["id_ciudad"]);
     }
     if (!is_null($result["id_direccion_alterna"])) {
         $result["direccion_alterna"] = DireccionDAO::getByPK($result["id_direccion_alterna"])->asArray();
     }
     if (!is_null($result["id_rol"])) {
         if (!is_null($r = RolDAO::getByPK($result["id_rol"]))) {
             $result["rol"] = $r->asArray();
         }
         unset($result["id_rol"]);
     }
     unset($result["password"]);
     unset($result["id_direccion_alterna"]);
     unset($result["id_direccion"]);
     unset($result["id_usuario"]);
     unset($result["fecha_asignacion_rol"]);
     unset($result["token_recuperacion_pass"]);
     unset($result["id_clasificacion_proveedor"]);
     unset($result["id_clasificacion_cliente"]);
     unset($result["comision_ventas"]);
     unset($result["last_login"]);
     unset($result["consignatario"]);
     unset($result["salario"]);
     unset($result["saldo_del_ejercicio"]);
     unset($result["ventas_a_credito"]);
     unset($result["dia_de_pago"]);
     unset($result["mensajeria"]);
     unset($result["dias_de_embarque"]);
     unset($result["id_tarifa_compra"]);
     unset($result["tarifa_compra_obtenida"]);
     unset($result["id_tarifa_venta"]);
     unset($result["tarifa_venta_obtenida"]);
     unset($result["facturar_a_terceros"]);
     return $result;
 }
 public function testCatalogoCuentasEmpresa()
 {
     $dir = new Direccion();
     $dir->setIdUsuarioUltimaModificacion(1);
     $dir->setUltimaModificacion(mktime());
     $dir->setCalle("Calle: " . mktime());
     DAO::transBegin();
     try {
         DireccionDAO::save($dir);
     } catch (Exception $e) {
         DAO::transRollback();
         Logger::error("No se ha podido guardar la direccion (Desde Unit Tests): " . $e);
         if ($e->getCode() == 901) {
             throw new Exception("No se ha podido guardar la nueva direccion (desde Unit Test)|: " . $e->getMessage(), 901);
         }
         throw new Exception("No se ha podido guardar la nueva direccion (Desde Unit Tests)", 901);
     }
     DAO::transEnd();
     $empresa = new Empresa();
     $empresa->setRazonSocial("Razon Social - " . time());
     $empresa->setRfc(time());
     $empresa->setIdDireccion($dir->getIdDireccion());
     $empresa->setFechaAlta(mktime());
     $empresa->setIdLogo(1);
     $empresa->setActivo(1);
     DAO::transBegin();
     try {
         EmpresaDAO::save($empresa);
     } catch (Exception $e) {
         DAO::transRollback();
         Logger::error("No se ha podido guardar la nueva empresa (Desde Unit Tests): " . $e);
         if ($e->getCode() == 901) {
             throw new Exception("No se ha podido guardar la nueva empresa (desde Unit Test)|: " . $e->getMessage(), 901);
         }
         throw new Exception("No se ha podido guardar la nueva empresa (Desde Unit Tests)", 901);
     }
     DAO::transEnd();
     $res = ContabilidadController::NuevoCatalogoCuentasEmpresa($empresa->getIdEmpresa());
     //return array("status"=>"ok","id_catalogo_cuentas"=>$nuevo_catalogo_cuentas->getIdCatalogo());
     $this->assertSame('ok', $res["status"]);
     $this->assertInternalType('int', (int) $res["id_catalogo_cuentas"]);
 }
 public function testEditar()
 {
     //creamos una sucursal para fines del experimento
     $direccion = array("calle" => "Monte Balcanes", "numero_exterior" => "107", "numero_interior" => null, "colonia" => "Arboledas", "codigo_postal" => "38060", "id_ciudad" => 334, "referencia" => "Calle cerrada", "telefono1" => "4616149974", "telefono2" => "45*451*454");
     $sucursal = SucursalesController::Nueva("Sucursal de phpunit editar " . time(), $direccion, 1, 1, null);
     //para cambiar la moneda
     try {
         $moneda = new Moneda(array("nombre" => "Moneda_" . time(), "simbolo" => "Simbolo_" . time(), "activa" => 1));
         MonedaDAO::save($moneda);
     } catch (Exception $e) {
     }
     //editar basico
     SucursalesController::Editar($id_sucursal = $sucursal["id_sucursal"], $activo = 0, $descripcion = "Descripcion de la sucursal", $direccion = null, $empresas = null, $id_gerente = 1, $id_moneda = $moneda->getIdMoneda(), $razon_social = "Empresa x", $saldo_a_favor = "100000");
     //editar la direccion
     SucursalesController::Editar($id_sucursal = $sucursal["id_sucursal"], $activo = 0, $descripcion = "_EDITADO_" . time(), $direccion = array("calle" => "Monte Balcanes", "numero_exterior" => "107", "colonia" => "Arboledas", "id_ciudad" => 334, "codigo_postal" => "38060", "numero_interior" => null, "texto_extra" => "Calle cerrada", "telefono1" => "4616149974", "telefono2" => "45*451*454"), $empresas = null, $id_gerente = 1, $id_moneda = $moneda->getIdMoneda(), $razon_social = "Empresa x", $saldo_a_favor = "100000");
     //vamos a ver si si se edito esa madre
     $_s = SucursalDAO::getByPK($sucursal["id_sucursal"]);
     $this->assertEquals($descripcion, $_s->getDescripcion());
     $_d = DireccionDAO::getByPK($_s->getIdDireccion());
     $this->assertEquals($_d->getCalle(), "Monte Balcanes");
     $this->assertEquals($_d->getNumeroExterior(), "107");
     $this->assertEquals($_d->getColonia(), "Arboledas");
     $this->assertEquals($_d->getIdCiudad(), 334);
     $this->assertEquals($_d->getCodigoPostal(), "38060");
     //$this->assertEquals($_d->getTextoExtra(),		"Calle cerrada");
 }
Example #5
0
<?php

define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server/bootstrap.php";
$page = new GerenciaComponentPage();
// Parametros necesarios
$page->requireParam("sid", "GET", "Esta sucursal no existe.");
$esta_sucursal = SucursalDAO::getByPK($_GET["sid"]);
$esta_direccion = DireccionDAO::getByPK($esta_sucursal->getIdDireccion());
// Titulo de la pagina
$page->addComponent(new TitleComponent("Editar sucursal " . $esta_sucursal->getDescripcion(), 2));
//forma de nueva empresa
$sucursal_form = new DAOFormComponent($esta_sucursal);
$sucursal_form->hideField(array("id_sucursal", "id_direccion", "fecha_apertura", "fecha_baja"));
$sucursal_form->renameField(array("id_gerente" => "id_usuario"));
$sucursal_form->createComboBoxJoin("id_usuario", "nombre", UsuarioDAO::getAll(), $esta_sucursal->getIdGerente());
$sucursal_form->createComboBoxJoin("id_tarifa", "nombre", TarifaDAO::getAll(), $esta_sucursal->getIdTarifa());
$sucursal_form->createComboBoxJoin("activa", "activa", array(array("id" => false, "caption" => "No"), array("id" => true, "caption" => "S&iacute;")), $esta_sucursal->getActiva());
$page->addComponent($sucursal_form);
$page->addComponent(new TitleComponent("Direccion", 3));
$direccion_form = new DAOFormComponent($esta_direccion);
$direccion_form->hideField(array("id_direccion", "ultima_modificacion", "id_usuario_ultima_modificacion"));
$direccion_form->createComboBoxJoin("id_ciudad", "nombre", CiudadDAO::getAll(), $esta_direccion->getIdDireccion());
$direccion_form->renameField(array("id_ciudad" => "ciudad"));
$js = "(function(){\n\t\t\t\tPOS.API.POST(\"api/sucursal/editar/\",{\n\t\t\t\t\tid_sucursal\t\t: " . $_GET['sid'] . ",\n\t\t\t\t\tdescripcion\t\t: Ext.get(\"" . $sucursal_form->getGuiComponentId() . "descripcion\").getValue(),\n\t\t\t\t\tid_gerente\t\t: Ext.get(\"" . $sucursal_form->getGuiComponentId() . "id_usuario\").getValue(),\n\t\t\t\t\tid_tarifa\t\t: Ext.get(\"" . $sucursal_form->getGuiComponentId() . "id_tarifa\").getValue(),\n\t\t\t\t\tactivo\t\t\t: Ext.get(\"" . $sucursal_form->getGuiComponentId() . "activa\").getValue(),\n\t\t\t\t\tdireccion : Ext.JSON.encode({\n\t\t\t\t\t\t \tcalle\t\t\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "calle\").getValue(),\n\t\t\t\t\t\t\tnumero_exterior\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "numero_exterior\").getValue(),\n\t\t\t\t\t\t    numero_interior\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "numero_interior\").getValue(),\n\t\t\t\t\t\t    colonia\t\t\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "colonia\").getValue(),\n\t\t\t\t\t\t    codigo_postal\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "codigo_postal\").getValue(),\n\t\t\t\t\t\t    telefono1\t\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "telefono\").getValue(),\n\t\t\t\t\t\t    telefono2\t\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "telefono2\").getValue(),\n\t\t\t\t\t\t    id_ciudad\t\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "ciudad\").getValue(),\n\t\t\t\t\t\t    referencia\t\t: Ext.get(\"" . $direccion_form->getGuiComponentId() . "referencia\").getValue()\n\t\t\t\t\t})\n\t\t\t\t},{ callback : function(a,b){\n\t\t\t\t\twindow.onbeforeunload = function(){ return;\t};\n\t\t\t\t\twindow.location = \"sucursales.ver.php?sid=\"+ " . $_GET['sid'] . ";\n\t\t\t\t}});\n\t\t\t})()";
$direccion_form->addOnClick("Editar sucursal", $js);
$page->addComponent($direccion_form);
$page->render();
 public static function validarParametrosUsuario($id_usuario = null, $id_direccion = null, $id_sucursal = null, $id_rol = null, $id_clasificacion_cliente = null, $id_clasificacion_proveedor = null, $id_moneda = null, $activo = null, $nombre = null, $rfc = null, $curp = null, $comision_ventas = null, $telefono_personal1 = null, $telefono_personal2 = null, $limite_credito = null, $descuento = null, $password = null, $salario = null, $correo_electronico = null, $pagina_web = null, $saldo_del_ejercicio = null, $ventas_a_credito = null, $representante_legal = null, $facturar_a_terceros = null, $dia_de_pago = null, $mensajeria = null, $intereses_moratorios = null, $denominacion_comercial = null, $dias_de_credito = null, $cuenta_de_mensajeria = null, $dia_de_revision = null, $codigo_usuario = null, $dias_de_embarque = null, $tiempo_entrega = null, $cuenta_bancaria = null, $id_tarifa_compra = null, $id_tarifa_venta = null, $id_usuario_padre = null)
 {
     //valida que el id del usuario exista en la base de datos
     if (!is_null($id_usuario)) {
         if (is_null(UsuarioDAO::getByPK($id_usuario))) {
             return "El usuario con id: " . $id_usuario . " no existe";
         }
     }
     //valida que el id de la direccion exista en la base de datos
     if (!is_null($id_direccion)) {
         if (is_null(DireccionDAO::getByPK($id_direccion))) {
             return "La direccion con id: " . $id_direccion . " no existe";
         }
     }
     //valida el id de la sucursal exista en la base de datos
     if (!is_null($id_sucursal)) {
         if (is_null(SucursalDAO::getByPK($id_sucursal))) {
             return "La sucursal con id: " . $id_sucursal . " no existe";
         }
     }
     //valida que el id del rol exista en la base de datos
     if (!is_null($id_rol)) {
         if (is_null(RolDAO::getByPK($id_rol))) {
             return "El rol con id: " . $id_rol . " no existe";
         }
     }
     //valida que la clasificacion del cliente exista en la base de datos
     if (!is_null($id_clasificacion_cliente)) {
         if (is_null(ClasificacionClienteDAO::getByPK($id_clasificacion_cliente))) {
             return "La clasificacion cliente con id: " . $id_clasificacion_cliente . " no existe";
         }
     }
     //valida que la clasificacion del proveedor exista en la base de datos
     if (!is_null($id_clasificacion_proveedor)) {
         if (is_null(ClasificacionProveedorDAO::getByPK($id_clasificacion_proveedor))) {
             return "La clasficiacion proveedor con id: " . $id_clasificacion_proveedor . " no existe";
         }
     }
     //valida que la moneda exista en la base de datos
     if (!is_null($id_moneda)) {
         Logger::log("Editando a moneda:" . $id_moneda);
         if (is_null(MonedaDAO::getByPK($id_moneda))) {
             return "La moneda con id: " . $id_moneda . " no existe";
         }
     }
     //valida el nombre
     if (!is_null($nombre)) {
         $e = ValidacionesController::validarLongitudDeCadena($nombre, 1, 100);
         if (!$e) {
             return "El numero de caracteres del nombre (" . $nombre . ") no esta entre 1 y 100";
         }
     }
     //valida el rfc, el rfc solo puede estar compuesto por Letras mayusculas y numeros
     if (!is_null($rfc)) {
         $e = ValidacionesController::validarLongitudDeCadena($rfc, 1, 30);
         if (!$e) {
             return "El numero de caracteres del rfc (" . $rfc . ") no esta entre 1 y 30";
         }
         if (preg_match('/[^A-Z0-9]/', $rfc)) {
             return "El rfc " . $rfc . " contiene caracteres fuera del rango A-Z y 0-9";
         }
     }
     //valida el curp, el curp solo puede tener letras mayusculas y numeros
     if (!is_null($curp)) {
         $e = ValidacionesController::validarLongitudDeCadena($curp, 1, 30);
         if (!$e) {
             return "El numero de caracteres de la curp (" . $curp . ") no esta entre 1 y 30";
         }
         if (preg_match('/[^A-Z0-9]/', $curp)) {
             return "El curp " . $curp . " contiene caracteres fuera del rango A-Z y 0-9";
         }
     }
     //valida la comision por ventas
     if (!is_null($comision_ventas)) {
         $e = ValidacionesController::validarNumero($comision_ventas, 0, 100);
         if (!$e) {
             return "La comision de ventas (" . $comision_ventas . ") no esta entre 0 y 100";
         }
     }
     //valida el telefono. Los telefonos solo pueden tener numeros, guiones,parentesis,asteriscos y espacios en blanco
     if (!is_null($telefono_personal1)) {
         $e = ValidacionesController::validarLongitudDeCadena($telefono_personal1, 1, 20);
         if (!$e) {
             return "El numero de caracteres del telefono personal (" . $telefono_personal1 . ") no esta entre 1 y 20";
         }
         if (preg_match('/[^0-9\\- \\(\\)\\*]/', $telefono_personal1)) {
             return "El telefono " . $telefono_personal1 . " tiene caracteres fuera del rango 0-9,-,(,),* o espacio vacío";
         }
     }
     //valida el telefono. Los telefonos solo pueden tener numeros, guiones,parentesis,asteriscos y espacios en blanco
     if (!is_null($telefono_personal2)) {
         $e = ValidacionesController::validarLongitudDeCadena($telefono_personal2, 1, 20);
         if (!$e) {
             return "El numero de caracteres del telefono personal alterno (" . $telefono_personal2 . ") no esta entre 1 y 20";
         }
         if (preg_match('/[^0-9\\- \\(\\)\\*]/', $telefono_personal2)) {
             return "El telefono " . $telefono_personal2 . " tiene caracteres fuera del rango 0-9,-,(,),* o espacio vacío";
         }
     }
     //valida el activo. Activo es una variable booleana.
     if (!is_null($activo)) {
         $e = ValidacionesController::validarEntero($activo, 0, 1);
         if (!$e) {
             return "La variable activo (" . $activo . ") no esta entre 0 y 1";
         }
     }
     //valida el limite de credito
     if (!is_null($limite_credito)) {
         $e = ValidacionesController::validarNumero($limite_credito, 0, 1.8E+200);
         if (!$e) {
             return "El limite de credito (" . $limite_credito . ") no esta entre 0 y 1.8e200";
         }
     }
     //valida el descuento. El descuento es un porcentaje y no puede ser mayor a 100
     if (!is_null($descuento)) {
         $e = ValidacionesController::validarNumero($descuento, 0, 100);
         if (!$e) {
             return "El descuento (" . $descuento . ") no esta entre 0 y 100";
         }
     }
     //valida el password, El pasword tiene que tener una longitud mayor o igual a 4
     if (!is_null($password)) {
         $e = ValidacionesController::validarLongitudDeCadena($password, 4, 32);
         if (!$e) {
             return "El numero de caracteres del password (" . $password . ") no esta entre 4 y 32";
         }
     }
     //valida el salario
     if (!is_null($salario)) {
         $e = ValidacionesController::validarNumero($salario, 0, 1.8E+200);
         if (!$e) {
             return "El salario (" . $salario . ") no esta entre 0 y 1.8e200";
         }
     }
     //valida el correo electronico segun las especificaciones de php
     if (!is_null($correo_electronico)) {
         $e = ValidacionesController::validarLongitudDeCadena($correo_electronico, 3, 30);
         if (!$e) {
             return "El numero de caracteres del correo electronico (" . $correo_electronico . ") no esta entre 3 y 30";
         }
         if (!is_string(filter_var($correo_electronico, FILTER_VALIDATE_EMAIL))) {
             return "El correo electronico " . $correo_electronico . " no es valido";
         }
     }
     //valida que una pagina web tenga un formato valido.
     if (!is_null($pagina_web)) {
         $e = ValidacionesController::validarLongitudDeCadena($pagina_web, 2, 30);
         if (!$e) {
             return $e;
         }
         if (!preg_match('/^(http|https|ftp):\\/\\/[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,6}' . '((:[0-9]{1,5})?\\/.*)?$/i', $pagina_web) && !preg_match('/^[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,6}' . '((:[0-9]{1,5})?\\/.*)?$/i', $pagina_web)) {
             return "La direccion web " . $pagina_web . " no cumple el formato valido";
         }
     }
     //valida el saldo del ejercicio
     if (!is_null($saldo_del_ejercicio)) {
         $e = ValidacionesController::validarNumero($saldo_del_ejercicio, -1.8E+200, 1.8E+200);
         if (!$e) {
             return "El saldo del ejercicio (" . $saldo_del_ejercicio . ") no esta entre -1.8e200 y 1.8e200";
         }
     }
     //valida las ventas a credito
     if (!is_null($ventas_a_credito)) {
         $e = ValidacionesController::validarEntero($ventas_a_credito, 0, PHP_INT_MAX);
         if (!$e) {
             return "Las venta a credito no estan entre 0 y " . PHP_INT_MAX;
         }
     }
     //valida el represnetante legal
     if (!is_null($representante_legal)) {
         $e = ValidacionesController::validarLongitudDeCadena($representante_legal, 0, 100);
         if (!$e) {
             return "El numero de caracteres del representante legal (" . $representante_legal . ") no esta entre 0 y 100";
         }
     }
     //valida la facturacion a terceros. Es un boleano
     if (!is_null($facturar_a_terceros)) {
         $e = ValidacionesController::validarEntero($facturar_a_terceros, 0, 1);
         if (!$e) {
             return "La variable facturar a terceros (" . $facturar_a_terceros . ") no esta entre 0 y 1";
         }
     }
     //valida los dias de pago
     if (!is_null($dia_de_pago)) {
         $e = ValidacionesController::validarLongitudDeCadena($dia_de_pago, 19, 19);
         if (!$e) {
             return "La fecha de dia de pago (" . $dia_de_pago . ") es invalida, el formato valido es YYYY-MM-dd HH:mm:ss";
         }
     }
     //valida el boleano mensajeria
     if (!is_null($mensajeria)) {
         $e = ValidacionesController::validarEntero($mensajeria, 0, 1);
         if (!$e) {
             return "La variable mensajeria (" . $mensajeria . ") no esta entre 0 y 1";
         }
     }
     //valida los intereses moratorios
     if (!is_null($intereses_moratorios)) {
         $e = ValidacionesController::validarNumero($intereses_moratorios, 0, 1.8E+200);
         if (!$e) {
             return "Los intereses moratorios (" . $intereses_moratorios . ") no estan entre 0 y 1.8e200";
         }
     }
     //valida la denominacion comercial
     if (!is_null($denominacion_comercial)) {
         $e = ValidacionesController::validarLongitudDeCadena($denominacion_comercial, 0, 100);
         if (!$e) {
             return "El numero de caracteres de la denominacion comercial (" . $denominacion_comercial . ") no esta entre 0 y 100";
         }
     }
     //valida los dias de credito
     if (!is_null($dias_de_credito)) {
         $e = ValidacionesController::validarEntero($dias_de_credito, 0, PHP_INT_MAX);
         if (!$e) {
             return "Los dias de credito (" . $dias_de_credito . ") no estan en el rango de 0 a " . PHP_INT_MAX;
         }
     }
     //valida la cuenta de mensajeria
     if (!is_null($cuenta_de_mensajeria)) {
         $e = ValidacionesController::validarLongitudDeCadena($cuenta_de_mensajeria, 0, 50);
         if (!$e) {
             return "El numero de caracteres de la cuenta de mensajeria (" . $cuenta_de_mensajeria . ") no etsa entre 0 y 50";
         }
     }
     //valida lso dias de revision
     if (!is_null($dia_de_revision)) {
         $e = ValidacionesController::validarLongitudDeCadena($dia_de_revision, 19, 19);
         if (!$e) {
             return "El dia de revision (" . $dia_de_revision . ") no tiene el formato apropiado, el formato valido es YYYY-MM-dd HH:mm:ss";
         }
     }
     //valida el codigo de usuario
     if (!is_null($codigo_usuario)) {
         $e = ValidacionesController::validarLongitudDeCadena($codigo_usuario, 1, 50);
         if (!$e) {
             return "El numero de caracteres del codigo de usuario no esta entre 1 y 50";
         }
         if (preg_match('/[^a-zA-Z0-9]/', $codigo_usuario)) {
             return "El codigo de usuario (" . $codigo_usuario . ") no tiene solo caracteres alfanumericos";
         }
     }
     //valida los dias de embarque
     if (!is_null($dias_de_embarque)) {
         $e = ValidacionesController::validarEntero($dias_de_embarque, 0, PHP_INT_MAX);
         if (!$e) {
             return "Los dias de embarque (" . $dias_de_embarque . ") no esta entre 0 y " . PHP_INT_MAX;
         }
     }
     //valida el tiempo de entrega
     if (!is_null($tiempo_entrega)) {
         $e = ValidacionesController::validarEntero($tiempo_entrega, 0, PHP_INT_MAX);
         if (!$e) {
             return "El tiempo de entrega (" . $tiempo_entrega . ") no esta entre 0 y " . PHP_INT_MAX;
         }
     }
     //valida la cuenta bancaria
     if (!is_null($cuenta_bancaria)) {
         $e = ValidacionesController::validarLongitudDeCadena($cuenta_bancaria, 0, 50);
         if (!$e) {
             return "El numero de caracteres de la cuenta bancaria (" . $cuenta_bancaria . ") no esta entre 0 y 50";
         }
     }
     //valida que la tarifa de compra sea valida
     if (!is_null($id_tarifa_compra)) {
         $tarifa = TarifaDAO::getByPK($id_tarifa_compra);
         if (is_null($tarifa)) {
             return "La tarifa " . $id_tarifa_compra . " no existe";
         }
         if (!$tarifa->getActiva()) {
             return "La tarifa " . $id_tarifa_compra . " no esta activa";
         }
         if ($tarifa->getTipoTarifa() != "compra") {
             return "La tarifa " . $id_tarifa_compra . " no es una tarifa de compra";
         }
     }
     //valida que la tarifa de venta sea valida
     if (!is_null($id_tarifa_venta)) {
         $tarifa = TarifaDAO::getByPK($id_tarifa_venta);
         if (is_null($tarifa)) {
             return "La tarifa " . $id_tarifa_venta . " no existe";
         }
         if (!$tarifa->getActiva()) {
             return "La tarifa " . $id_tarifa_venta . " no esta activa";
         }
         if ($tarifa->getTipoTarifa() != "venta") {
             return "La tarifa " . $id_tarifa_venta . " no es una tarifa de venta";
         }
     }
     //valida que el usuario padre exista y este activo
     if (!is_null($id_usuario_padre)) {
         $usuario_padre = UsuarioDAO::getByPK($id_usuario_padre);
         if (is_null($usuario_padre)) {
             return "El usuario padre " . $id_usuario_padre . " no existe";
         }
         if ($usuario_padre->getActivo()) {
             return "El usuario padre " . $usuario_padre->getNombre() . " no esta activo";
         }
     }
     return true;
 }
Example #7
0
<?php

define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server/bootstrap.php";
$page = new GerenciaComponentPage();
$page->requireParam("pid", "GET", "Este proveedor no existe.");
$este_proveedor = UsuarioDAO::getByPK($_GET["pid"]);
$esta_direccion = DireccionDAO::getByPK($este_proveedor->getIdDireccion());
$page->addComponent(new TitleComponent("Editar proveedor: " . $este_proveedor->getNombre()));
//forma de nuevo cliente
if (is_null($esta_direccion)) {
    $esta_direccion = new Direccion();
}
$form = new DAOFormComponent(array($este_proveedor, $esta_direccion));
$form->hideField(array("id_usuario", "id_direccion", "id_direccion_alterna", "id_rol", "id_sucursal", "id_clasificacion_cliente", "fecha_asignacion_rol", "comision_ventas", "fecha_alta", "fecha_baja", "last_login", "salario", "id_direccion", "ultima_modificacion", "id_usuario_ultima_modificacion", "consignatario", "intereses_moratorios", "mensajeria", "cuenta_de_mensajeria", "denominacion_comercial", "facturar_a_terceros", "dia_de_revision", "dia_de_pago", "ventas_a_credito", "saldo_del_ejercicio", "codigo_usuario", "id_clasificacion_proveedor"));
$form->createComboBoxJoin("id_moneda", "nombre", MonedaDAO::search(new Moneda(array("activa" => 1))), $este_proveedor->getIdMoneda());
$clasificaciones = ContactosController::BuscarCategoria();
$clasificaciones = $clasificaciones['categorias'];
foreach ($clasificaciones as $key => $clasificacion) {
    $clasificacion->caption = $clasificacion->nombre;
    $clasificaciones[$key] = $clasificacion->asArray();
}
$form->createComboBoxJoin('id_categoria_contacto', 'nombre', $clasificaciones);
$form->createComboBoxJoin("id_ciudad", "nombre", CiudadDAO::getAll(), $esta_direccion->getIdCiudad());
$form->renameField(array("nombre" => "razon_social", "telefono" => "telefono1", "correo_electronico" => "email", "id_categoria_contacto" => "id_tipo_proveedor", "pagina_web" => "direccion_web", "referencia" => "texto_extra", "id_usuario" => "id_proveedor"));
$form->setValueField("password", "");
$form->addApiCall("api/proveedor/editar/", "GET");
$form->onApiCallSuccessRedirect("proveedores.lista.php");
$form->sendHidden("id_proveedor");
$page->addComponent($form);
$page->render();
 /**
  *
  *Edita los datos de una sucursal
  *
  * @author Juan Manuel Garc&iacute;a Carmona <*****@*****.**>
  * @param id_sucursal int Id de la sucursal a modificar
  * @param id_tarifa int Id de la tarifa por default de la sucursal
  * @param activo bool Indica si esta sucursal estar activa
  * @param descripcion string Descripcion de la sucursal
  * @param direccion json Objeto que contiene la informacin sobre al direccion
  * @param id_gerente int Id del gerente de la sucursal
  **/
 public static function Editar($id_sucursal, $activo = null, $descripcion = null, $direccion = null, $id_gerente = null, $id_tarifa = null)
 {
     DAO::transBegin();
     //Se obtiene la sucursal a editar y se valida que exista
     if (!($sucursal = SucursalDAO::getByPK($id_sucursal))) {
         Logger::error("La sucursal con id : {$id_sucursal} no existe");
         throw new InvalidDataException("La sucursal con id : {$id_sucursal} no existe");
     }
     //verificamos si la sucursal esta activa en caso de no estarlo solo permitira activarla
     if ($activo !== NULL) {
         $val = null;
         if ($activo == 1) {
             $val = true;
         } elseif ($activo == "") {
             $val = false;
         }
         $sucursal->setActiva($val);
     }
     //editamos solo la direccion
     if (!is_null($direccion)) {
         if (!is_array($direccion)) {
             $direccion = object_to_array($direccion);
         }
         //varificamos si la direccion que tiene la sucursal existe si no creamos una
         if (!($_direccion = DireccionDAO::getByPK($sucursal->getIdDireccion()))) {
             //no existe, etonces creamos una nueva direccion
             DireccionController::NuevaDireccion(isset($direccion['calle']) ? $direccion['calle'] : "", isset($direccion['numero_exterior']) ? $direccion['numero_exterior'] : "", isset($direccion['colonia']) ? $direccion['colonia'] : "", isset($direccion['id_ciudad']) ? $direccion['id_ciudad'] : "", isset($direccion['codigo_postal']) ? $direccion['codigo_postal'] : "", isset($direccion['numero_interior']) ? $direccion['numero_interior'] : "", isset($direccion['referencia']) ? $direccion['referencia'] : "", isset($direccion['telefono1']) ? $direccion['telefono1'] : "", isset($direccion['telefono2']) ? $direccion['telefono2'] : "");
         } else {
             //la direccion existe, hay que editarla
             $_direccion->setCalle(isset($direccion['calle']) ? $direccion['calle'] : "");
             $_direccion->setNumeroExterior(isset($direccion['numero_exterior']) ? $direccion['numero_exterior'] : "");
             $_direccion->setNumeroInterior(isset($direccion['numero_interior']) ? $direccion['numero_interior'] : "");
             $_direccion->setReferencia(isset($direccion['referencia']) ? $direccion['referencia'] : "");
             $_direccion->setColonia(isset($direccion['colonia']) ? $direccion['colonia'] : "");
             $_direccion->setIdCiudad(isset($direccion['id_ciudad']) ? $direccion['id_ciudad'] : "");
             $_direccion->setCodigoPostal(isset($direccion['codigo_postal']) ? $direccion['codigo_postal'] : "");
             $_direccion->setTelefono(isset($direccion['telefono1']) ? $direccion['telefono1'] : "");
             $_direccion->setTelefono2(isset($direccion['telefono2']) ? $direccion['telefono2'] : "");
             try {
                 DireccionDAO::save($_direccion);
             } catch (Exception $e) {
                 DAO::transRollback();
                 Logger::error("Error al modificar la direccion : {$e}");
                 throw new Exception("Ocurrio un error al modificar la direccion");
             }
         }
     }
     //verificamos si cambio el gerente
     if (!is_null($id_gerente)) {
         $usuario_gerente = UsuarioDAO::getByPK($id_gerente);
         if (!$usuario_gerente) {
             Logger::error("No se tiene registro del gerente con id : {$id_gerente}");
             throw new Exception("No se tiene registro del gerente con id : {$id_gerente}");
         } else {
             $sucursal->setIdGerente($usuario_gerente->getIdUsuario());
         }
     }
     //
     if (!is_null($id_tarifa) && !($tarifa = TarifaDAO::getByPK($id_tarifa))) {
         Logger::error("No se tiene registro de la tarifa con id : {$id_gerente}");
         throw new Exception("No se tiene registro de la tarifa indicada");
     } else {
         $sucursal->setIdTarifa($id_tarifa);
     }
     //verificamos si cambio la descripcion
     $descripcion = trim($descripcion);
     if ($descripcion !== $sucursal->getDescripcion()) {
         //verificamos si hay una sucursal con esa misma descripcion
         $sucursales = SucursalDAO::search(new Sucursal(array("descripcion" => $descripcion)));
         if (!empty($sucursales)) {
             DAO::transRollback();
             Logger::error("Ya existe una sucursal con esa descripcion");
             throw new Exception("Ya existe una sucursal con esa descripcion");
         } else {
             $sucursal->setDescripcion($descripcion);
         }
     }
     try {
         SucursalDAO::save($sucursal);
     } catch (Exception $e) {
         DAO::transRollback();
         Logger::error("No se pudo actualizar la sucursal: " . $e);
         if ($e->getCode() == 901) {
             throw new Exception("No se pudo actualizar la sucursal: " . $e->getMessage(), 901);
         }
         throw new Exception("No se pudo actualizar la sucursal", 901);
     }
     DAO::transEnd();
     Logger::log("Sucursal actualizada exitosamente");
 }
    //esta definida pero el registro no existe por alguna razon
    Logger::error("user " . $_GET["uid"] . " se supone que tiene id direccion = " . $this_personal->getIdDireccion() . " , pero esta en null ...");
    DAO::transBegin();
    $this_personal->setIdDireccion(NULL);
    try {
        UsuarioDAO::save($this_personal);
        DireccionController::NuevaDireccionParaUsuario($this_personal->getIdUsuario());
        //recargar el objeto de cliente
        $this_personal = UsuarioDAO::getByPK($_GET["uid"]);
    } catch (Exception $e) {
        DAO::transRollback();
        throw new Exception("No se pudo crear la direccion: " . $e);
    }
    DAO::transEnd();
}
$esta_dir = DireccionDAO::getByPK($this_personal->getIdDireccion());
//titulos
$page->addComponent(new TitleComponent("Editar direccion: " . $esta_dir->getColonia()));
//forma de nuevo usuario
$form = new DAOFormComponent($esta_dir);
$form->hideField(array("id_direccion", "id_usuario_ultima_modificacion", "ultima_modificacion"));
$form->sendHidden("id_direccion");
$form->createComboBoxJoin("id_ciudad", "nombre", CiudadDAO::getAll(), $esta_dir->getIdCiudad());
$form->setCaption("id_ciudad", "Ciudad");
$form->addApiCall("api/personal/usuario/editar/");
$form->beforeSend("editar_direccion");
$page->partialRender();
?>
	

	<script>
Example #10
0
 /**
  *Detalles($id_empresa)
  *
  *Muestra los detalles de una empresa en especifico. 
  *
  * @author Juan Manuel Garc&iacute;a Carmona <*****@*****.**>
  * @param id_empresa int Id de la empresa
  **/
 public static function Detalles($id_empresa)
 {
     //verificamos si la empresa a consular existe
     if (!($empresa = EmpresaDAO::getByPK($id_empresa))) {
         Logger::error("No se tiene registro de la empresa {$id_empresa}");
         throw new InvalidDataException("No se tiene registro de la empresa {$id_empresa}");
     }
     //extraemos su domicilio fiscal
     if (!($direccion = DireccionDAO::getByPK($empresa->getIdDireccion()))) {
         $direccion = new stdClass();
     }
     //relacionamos a la empresa con la direccion
     $empresa->direccion = $direccion;
     //obtenemos el logo
     $logo = LogoDAO::getByPK($empresa->getIdLogo());
     if ($logo === NULL) {
         $logo = LogoDAO::getByPK(-1);
     }
     $empresa->logo = $logo->getImagen();
     //obtenemos su contabilidad
     $contabilidad = array();
     $contabilidad["moneda_base"] = EmpresaDAO::getMonedaBase($empresa->getIdEmpresa());
     $contabilidad["ejercicio"] = EmpresaDAO::getEjercicioActual($empresa->getIdEmpresa());
     //extraemos sus sucursales
     $sucursales = array();
     $sucursales_empresa = SucursalEmpresaDAO::search(new SucursalEmpresa(array("id_empresa" => $id_empresa)));
     foreach ($sucursales_empresa as $sucursal_empresa) {
         if ($sucursal = SucursalDAO::getByPK($sucursal_empresa->getIdSucursal())) {
             array_push($sucursales, $sucursal);
         }
     }
     //obtenemos todos los impuestos relacionados a la empresa
     $impuestos_empresa = ImpuestoEmpresaDAO::search(new ImpuestoEmpresa(array("id_empresa" => $id_empresa)));
     //extraemos sus impuestos de compra
     $impuestos_compra = array();
     foreach ($impuestos_empresa as $impuesto_compra_empresa) {
         if (!($impuesto = ImpuestoDAO::getByPK($impuesto_compra_empresa->getIdImpuesto()))) {
             Logger::warn("No se tiene registro de un impuesto con id = " . $impuesto_compra_empresa->getIdImpuesto());
             throw new InvalidDataException("No se tiene registro de un impuesto con id = " . $impuesto_compra_empresa->getIdImpuesto());
         }
         if ($impuesto->getAplica() === "compra" || $impuesto->getAplica() === "ambos") {
             array_push($impuestos_compra, $impuesto);
         }
     }
     //extraemos sus impuestos de venta
     $impuestos_venta = array();
     foreach ($impuestos_empresa as $impuesto_venta_empresa) {
         if (!($impuesto = ImpuestoDAO::getByPK($impuesto_venta_empresa->getIdImpuesto()))) {
             Logger::warn("No se tiene registro de un impuesto con id = " . $impuesto_venta_empresa->getIdImpuesto());
             throw new InvalidDataException("No se tiene registro de un impuesto con id = " . $impuesto_venta_empresa->getIdImpuesto());
         }
         if ($impuesto->getAplica() === "venta" || $impuesto->getAplica() === "ambos") {
             array_push($impuestos_venta, $impuesto);
         }
     }
     return array("detalles" => $empresa, "sucursales" => $sucursales, "impuestos_compra" => $impuestos_compra, "impuestos_venta" => $impuestos_venta, "contabilidad" => $contabilidad);
     Logger::log("Detalles de la empresa enviados con exito");
 }
<?php

define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server//bootstrap.php";
$page = new GerenciaComponentPage();
//
// Parametros necesarios
//
$page->requireParam("cid", "GET", "Este cliente no existe.");
$este_cliente = UsuarioDAO::getByPK($_GET["cid"]);
$esta_direccion = DireccionDAO::getByPK($este_cliente->getIdDireccion());
//titulos
$page->addComponent(new TitleComponent("Editar a " . $este_cliente->getNombre()));
//forma de nuevo cliente
if (is_null($esta_direccion)) {
    $esta_direccion = new Direccion();
}
$form = new DAOFormComponent(array($este_cliente, $esta_direccion));
$form->hideField(array("id_usuario", "id_direccion", "id_direccion_alterna", "id_sucursal", "id_rol", "id_clasificacion_proveedor", "fecha_asignacion_rol", "comision_ventas", "fecha_alta", "fecha_baja", "activo", "last_login", "salario", "saldo_del_ejercicio", "dia_de_pago", "dias_de_embarque", "id_direccion", "ultima_modificacion", "id_usuario_ultima_modificacion", "consignatario", "facturar_a_terceros", "dia_de_revision", "tiempo_entrega", "ventas_a_credito", "intereses_moratorios", "cuenta_bancaria", "dias_de_credito", "limite_credito"));
$form->renameField(array("id_usuario" => "id_cliente"));
$form->sendHidden("id_cliente");
$form->setValueField("password", "");
$form->createComboBoxJoin("id_moneda", "nombre", MonedaDAO::search(new Moneda(array("activa" => 1))), $este_cliente->getIdMoneda());
$form->createComboBoxJoin("id_clasificacion_cliente", "nombre", ClasificacionClienteDAO::getAll(), $este_cliente->getIdClasificacionCliente());
$form->addApiCall("api/cliente/editar_perfil/");
$form->onApiCallSuccessRedirect("clientes.lista.php");
$form->createComboBoxJoin("id_ciudad", "nombre", CiudadDAO::getAll(), $esta_direccion->getIdCiudad());
$form->renameField(array("nombre" => "razon_social", "codigo_usuario" => "codigo_cliente", "telefono" => "telefono1", "correo_electronico" => "email", "id_clasificacion_cliente" => "clasificacion_cliente", "id_moneda" => "moneda_del_cliente", "pagina_web" => "direccion_web", "id_ciudad" => "municipio", "referencia" => "texto_extra"));
$page->addComponent($form);
$page->render();
Example #12
0
define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server/bootstrap.php";
$page = new GerenciaTabPage();
// Requerir parametros
$page->requireParam("eid", "GET", "Esta empresa no existe.");
$empresa = EmpresasController::Detalles($_GET["eid"]);
$page->addComponent("<div class=\"POS Boton OK\" onclick=\"editarEmpresa();\">Guardar Cambios</div> &oacute; <a href=\"empresas.ver.php?eid=" . $_GET["eid"] . "\" style = \"margin-left:12px;\">Descartar</a> <div class=\"POS Boton\" onclick=\"\" style=\"float:right;\">Vista Previa de Documentos</div>");
$html = "<table style = \"margin-top:10px;\">" . "\t<tr>" . "\t\t<td>" . "\t\t\t<img id = \"img_logo\" width=\"100\" height=\"93\" title=\"\" alt=\"\" src=\"" . urldecode($empresa["detalles"]->logo) . "\" /><br />" . "\t\t\t<input type=\"file\" id=\"file_logo\"name=\"pic\" size=\"40\" onChange=\"cambiarLogo(this);\">" . "\t\t</td>" . "\t\t<td>" . "\t\t\t<h1>Empresa</h1><br />" . "\t\t\t<input type = \"text\" id = \"razon_social\" placeholder=\"Razon Social\" style = \"width:200px; height:25px;\" value = \"" . $empresa["detalles"]->getRazonSocial() . "\"/><br />" . "\t\t\t<input type = \"text\" id = \"rfc\" placeholder=\"RFC\" style = \"width:200px; height:25px; margin-top:10px;\" value = \"" . $empresa["detalles"]->getRfc() . "\"/><br />" . "\t\t</td>" . "\t</tr>" . "</table>" . "<script>" . "\tvar cambiarLogo = function (evt)" . "\t{" . "\t\tvar file = document.getElementById('file_logo');" . "\t\tvar f = file.files[0];" . "\t\tif (!f.type.match('image.*')) {" . "\t\t\tfile.value = '';" . "\t\t\talert('solo se permiten imagenes');" . "\t\t\treturn;" . "\t\t}" . "\t\tvar max_size = 32768;" . "\t\tif(f.size > max_size){" . "\t\t\talert('HTML form max file size (' + (max_size / 1024) + ' kb) exceeded');" . "\t\t\treturn;" . "\t\t}" . "\t\tvar reader = new FileReader();" . "\t\treader.readAsDataURL(f);" . "\t\treader.onload = cambiarImagenLogo(f);" . "\t};" . "\tvar cambiarImagenLogo = function (archivoImagen)" . "\t{" . "\t\treturn function(e) {" . "\t\t\tvar nodoImagen = document.getElementById('img_logo');" . "\t\t\tnodoImagen.src = e.target.result;" . "\t\t\tnodoImagen.title = escape(archivoImagen.name);" . "\t\t};" . "\t};" . "</script>";
$page->addComponent($html);
/*
 * Tab Informacion
 */
$page->nextTab("Informacion");
$page->addComponent(new TitleComponent("Direcci&oacute;n", 2));
$direccion_form = new DAOFormComponent(DireccionDAO::getByPK($empresa["detalles"]->direccion->getIdDireccion()));
$direccion_form->hideField(array("id_direccion", "ultima_modificacion", "id_usuario_ultima_modificacion"));
$direccion_form->createComboBoxJoin("id_ciudad", "nombre", CiudadDAO::getAll(), $empresa["detalles"]->direccion->getIdCiudad());
$direccion_form->renameField(array("id_ciudad" => "ciudad"));
$direccion_form->addField("sitio_web", "Sitio Web", "text", $empresa["detalles"]->direccion_web);
$page->addComponent($direccion_form);
$page->addComponent(new TitleComponent("Cuentas Bancarias", 2));
$tabla_cuentas_bancarias = new TableComponent(array("numero_cuenta" => "Numero de cuenta", "nombre_banco" => "Nombre del banco", "propietario_cuenta" => "Propietario cuenta"), array());
$tabla_cuentas_bancarias->addNoData("No hay ninguna cuenta bancaria registrada. <a href='#'>&iquest; Desea agregar un elemento?.</a>");
$page->addComponent($tabla_cuentas_bancarias);
$page->addComponent(new TitleComponent("Configuracion de formatos", 2));
$configuracion_formatos = new FormComponent();
$configuracion_formatos->addField("pie_pagina", "Pie de Pagina", "text", "");
$configuracion_formatos->addField("formato_papel", "Formato de Papel", "text", "");
$page->addComponent($configuracion_formatos);
/*
Example #13
0
//              "codigo_producto",
//              "metodo_costeo",
//              "activo"
//          ));
//      $form->createComboBoxJoin("id_unidad", "nombre", UnidadDAO::getAll(), $este_producto->getIdUnidad() );
$page->addComponent($form);
/* ********************************************************
	 *	Direccion
	 *
* ******************************************************** */
$page->nextTab("Direccion");
$menu = new MenuComponent();
$menu->addItem("Editar Direccion", "personal.editar.direccion.php?uid=" . $este_usuario->getIdUsuario() . "&did=" . $este_usuario->getIdDireccion());
$page->addComponent($menu);
$direccion = $este_usuario->getIdDireccion();
$direccionObj = DireccionDAO::getByPK($direccion);
if (is_null($direccionObj)) {
} else {
    $ciudad = CiudadDAO::getByPK($direccionObj->getIdCiudad());
    if (null === $ciudad) {
        $ciudad = new Ciudad();
    }
    $page->addComponent(new FreeHtmlComponent("<div id=\"map_canvas\"></div>"));
    $page->addComponent(new FreeHtmlComponent("<script>startMap(\"" . $direccionObj->getCalle() . " " . $direccionObj->getNumeroExterior() . ", " . $direccionObj->getColonia() . ", " . $ciudad->getNombre() . "\");</Script>"));
}
if (!is_null($direccionObj)) {
    $usr_ultima = UsuarioDAO::getByPK($direccionObj->getIdUsuarioUltimaModificacion());
    if (!is_null($usr_ultima)) {
        $direccionObj->setIdUsuarioUltimaModificacion($usr_ultima->getNombre());
    }
    $dform = new DAOFormComponent($direccionObj);
 /**
  * Desactivar Almacen
  */
 public function testDesactivarAlmacen()
 {
     POSController::DropBd();
     $usuario = UsuarioDAO::getAll();
     if (sizeof($usuario) == 0) {
         Logger::error("WHOOOT no hay usuarios en la BD");
         return;
     }
     $id_usuario = $usuario[0]->getIdUsuario();
     @DireccionDAO::save($direccion = new Direccion(array("calle" => "Una Calle", "numero_exterior" => "322", "id_ciudad" => "12", "codigo_postal" => "38000", "ultima_modificacion" => "2012-02-21 22:10:45", "id_usuario_ultima_modificacion" => "2")));
     @EmpresaDAO::save($empresa = new Empresa(array("id_direccion" => $direccion->getIdDireccion(), "rfc" => "RFC_" . time(), "razon_social" => "Empresa_Razon_Social__" . time(), "fecha_alta" => "2012-02-21 22:10:45", "activo" => 1, "direccion_web" => "Dir_" . time())));
     @SucursalDAO::save($sucursal = new Sucursal(array("id_direccion" => $direccion->getIdDireccion(), "razon_social" => "Sucursal_Razon_Social__" . time(), "saldo_a_favor" => 2000, "fecha_apertura" => "2012-02-21 22:10:45", "activa" => 1)));
     $tipo_almacen = AlmacenesController::NuevoTipo("Nuevo_Tipo_Almacen___" . time());
     Logger::log("Nuevo almacen");
     $almacen = AlmacenesController::Nuevo($id_empresa = $empresa->getIdEmpresa(), $id_sucursal = $sucursal->getIdSucursal(), $id_tipo_almacen = $tipo_almacen["id_tipo_almacen"], $nombre = "Almacen_Editar" . time(), $descripcion = "Almacen de prueba_ " . time());
     // Desactivamos el Almacen
     Logger::log("A desactivar almacen recien creado");
     $almacen_desactivado = AlmacenesController::Desactivar($id_almacen = $almacen["id_almacen"]);
     $_almacen = AlmacenDAO::getByPK($almacen["id_almacen"]);
     $this->assertEquals(0, $_almacen->getActivo());
 }
Example #15
0
 /**
  *
  *Obtener los detalles de un cliente.
  *
  * @param id_cliente int Id del cliente del cual se listarn sus datos.
  * @return cliente json Arreglo que contendr� la informaci�n del cliente. 
  **/
 public static function Detalle($id_cliente)
 {
     Logger::log("Listando los detalles del cliente");
     //valida que el cliente exista, que sea cliente y que este activo
     /*$validar = self::validarParametrosCliente($id_cliente);
     		if(is_string($validar))
     		{
     			Logger::error($validar);
     			throw new Exception($validar,901);
     		}*/
     //Se regresa un arreglo que contendra en el primer campo el cliente en si, en segundo campo estara
     //su direccion, el tercero sera su direccion alterna, el cuarto sera la sucursal en la que fue dado de alta,
     //la quinta sera el rol que tiene, la sexta sera su clasificacion, la septima la moneda que prefiere.
     $cliente = array();
     $c = UsuarioDAO::getByPK($id_cliente);
     array_push($cliente, $c);
     array_push($cliente, DireccionDAO::getByPK($c->getIdDireccion()));
     array_push($cliente, DireccionDAO::getByPK($c->getIdDireccionAlterna()));
     array_push($cliente, SucursalDAO::getByPK($c->getIdSucursal()));
     array_push($cliente, RolDAO::getByPK($c->getIdRol()));
     array_push($cliente, ClasificacionClienteDAO::getByPK($c->getIdClasificacionCliente()));
     array_push($cliente, MonedaDAO::getByPK($c->getIdMoneda()));
     array_push($cliente, ExtraParamsValoresDAO::getVals("usuarios", $id_cliente));
     return $cliente;
 }
 public static function EditarDireccion($direccion)
 {
     //verificamos si se cambiaron las direcciones
     if (!is_null($direccion)) {
         Logger::log("\tEditando direccion ...");
         if (!is_array($direccion)) {
             //Logger::error("Verifique el formato de los datos de las direcciones, se esperaba un array ");
             //throw new Exception("Verifique el formato de los datos de las empresas, se esperaba un array ");
             $direccion = object_to_array($direccion);
         }
         $_direccion = new Direccion($direccion);
         $d = DireccionDAO::getByPK($_direccion->getIdDireccion());
         //verificamos si se va a editar una direccion o se va a crear una nueva
         if (isset($d->id_direccion)) {
             //se edita la direccion
             if (!($_direccion = DireccionDAO::getByPK($d->id_direccion))) {
                 DAO::transRollback();
                 Logger::error("No se tiene registro de la dirección con id : {$direccion->id_direccion}");
                 throw new InvalidDataException("No se tiene registro de la dirección con id : {$direccion->id_direccion}");
             }
             //bandera que indica si cambia algun parametro de la direccion
             $cambio_direccion = false;
             //calle
             if (array_key_exists('calle', $direccion)) {
                 $_direccion->setCalle($direccion['calle']);
                 $cambio_direccion = true;
             }
             //numero_exterior
             if (array_key_exists('numero_exterior', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setNumeroExterior($direccion['numero_exterior']);
             }
             //numero_interior
             if (array_key_exists('numero_interior', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setNumeroInterior($direccion['numero_interior']);
             }
             //referencia
             if (array_key_exists('referencia', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setReferencia($direccion['referencia']);
             }
             //colonia
             if (array_key_exists('colonia', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setColonia($direccion['colonia']);
             }
             //id_ciudad
             if (array_key_exists('id_ciudad', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setIdCiudad($direccion['id_ciudad']);
             }
             //codigo_postal
             if (array_key_exists('codigo_postal', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setCodigoPostal($direccion['codigo_postal']);
             }
             //telefono
             if (array_key_exists('telefono', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setTelefono($direccion['telefono']);
             }
             //telefono2
             if (array_key_exists('telefono2', $direccion)) {
                 $cambio_direccion = true;
                 $_direccion->setTelefono2($direccion['telefono2']);
             }
             //Si cambio algun parametro de direccion, se actualiza el usuario que modifica y la fecha
             if ($cambio_direccion) {
                 $_direccion->setUltimaModificacion(time());
                 $id_usuario = SesionController::Actual();
                 $id_usuario = $id_usuario["id_usuario"];
                 if (is_null($id_usuario)) {
                     DAO::transRollback();
                     Logger::error("No se pudo obtener al usuario de la sesion, ya inicio sesion?");
                     throw new Exception("No se pudo obtener al usuario de la sesion, ya inicio sesion?");
                 }
                 $_direccion->setIdUsuarioUltimaModificacion($id_usuario);
                 //guardamos la direccion
                 try {
                     Logger::log("Salvando direccion...");
                     DireccionDAO::save($_direccion);
                 } catch (Exception $e) {
                     DAO::transRollback();
                     Logger::error("No se pudo guardar la direccion " . $e);
                     if ($e->getCode() == 901) {
                         throw new Exception("Error al guardar direccion de la sucursal {$sucursal->getRazonSocial()}: " . $e->getMessage(), 901);
                     }
                     throw new Exception("Error al guardar direccion de la sucursal {$sucursal->getRazonSocial()}", 901);
                 }
             }
             //cambio dir
         }
         //verificacion editar dir
     }
     // !is_null
 }
<?php

define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server/bootstrap.php";
$page = new GerenciaComponentPage();
//
// Parametros necesarios
//
$page->requireParam("uid", "GET", "Este usuario no existe.");
$este_usuario = UsuarioDAO::getByPK($_GET["uid"]);
$esta_direccion = DireccionDAO::getByPK($este_usuario->getIdDireccion());
//
// Titulo de la pagina
//
$page->addComponent(new TitleComponent("Editar usuario " . $este_usuario->getNombre(), 2));
//
// Forma de usuario
//
if (is_null($esta_direccion)) {
    $esta_direccion = new Direccion();
}
$este_usuario->setPassword("");
$form = new DAOFormComponent($este_usuario);
$form->hideField(array("id_usuario", "id_direccion", "id_direccion_alterna", "id_sucursal", "fecha_asignacion_rol", "fecha_alta", "fecha_baja", "activo", "last_login", "consignatario", "id_clasificacion_cliente", "id_clasificacion_proveedor", "tarifa_venta_obtenida", "tarifa_compra_obtenida", "id_tarifa_compra", "id_tarifa_venta", "saldo_del_ejercicio", "intereses_moratorios", "representante_legal", "pagina_web", "mensajeria", "denominacion_comercial", "dias_de_credito", "facturar_a_terceros", "limite_credito", "token_recuperacion_pass", "tiempo_entrega", "ventas_a_credito", "descuento", "dias_de_embarque", "cuenta_de_mensajeria"));
$form->setCaption("rfc", "RFC");
$form->setCaption("id_moneda", "Moneda default");
$form->setCaption("id_rol", "Rol");
$form->setHelp("id_rol", "Rol");
$form->sendHidden("id_usuario");
$form->addApiCall("api/personal/usuario/editar/");
$form->onApiCallSuccessRedirect("personal.usuario.ver.php?uid=" . $_GET["uid"]);
    //esta definida pero el registro no existe por alguna razon
    Logger::error("user " . $_GET["cid"] . " se supone que tiene id direccion = " . $this_client->getIdDireccion() . " , pero esta en null ...");
    DAO::transBegin();
    $this_client->setIdDireccion(NULL);
    try {
        UsuarioDAO::save($this_client);
        DireccionController::NuevaDireccionParaUsuario($this_client->getIdUsuario());
        //recargar el objeto de cliente
        $this_client = UsuarioDAO::getByPK($_GET["cid"]);
    } catch (Exception $e) {
        DAO::transRollback();
        throw new Exception("No se pudo crear la direccion: " . $e);
    }
    DAO::transEnd();
}
$esta_dir = DireccionDAO::getByPK($this_client->getIdDireccion());
//titulos
$page->addComponent(new TitleComponent("Editar direccion: " . $esta_dir->getColonia()));
//forma de nuevo cliente
$form = new DAOFormComponent($esta_dir);
$form->hideField(array("id_direccion", "id_usuario_ultima_modificacion", "ultima_modificacion"));
$form->sendHidden("id_direccion");
$form->createComboBoxJoin("id_ciudad", "nombre", CiudadDAO::getAll(), $esta_dir->getIdCiudad());
$form->setCaption("id_ciudad", "Ciudad");
$form->addApiCall("api/cliente/editar/");
$form->beforeSend("editar_direccion");
$page->partialRender();
?>
	

	<script>