<?php

define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server/bootstrap.php";
$page = new GerenciaComponentPage();
//
// Parametros necesarios
//
$page->requireParam("tid", "GET", "Este tipo de almacen no existe.");
$este_tipo_almacen = TipoAlmacenDAO::getByPK($_GET["tid"]);
//
// Titulo de la pagina
//
$page->addComponent(new TitleComponent("Detalles de " . $este_tipo_almacen->getDescripcion(), 2));
//
// Menu de opciones
//
$menu = new MenuComponent();
$menu->addItem("Editar este tipo de almacen", "sucursales.editar.tipo_almacen.php?tid=" . $_GET["tid"]);
$almacenes = AlmacenDAO::search(new Almacen(array("id_tipo_almacen" => $_GET["tid"])));
if (empty($almacenes)) {
    $btn_eliminar = new MenuItem("Eliminar este tipo de almacen", null);
    $btn_eliminar->addApiCall("api/sucursal/tipo_almacen/eliminar", "GET");
    $btn_eliminar->onApiCallSuccessRedirect("sucursales.lista.tipo_almacen.php");
    $btn_eliminar->addName("eliminar");
    $funcion_eliminar = " function eliminar_sucursal(btn){" . "if(btn == 'yes')" . "{" . "var p = {};" . "p.id_tipo_almacen = " . $_GET["tid"] . ";" . "sendToApi_eliminar(p);" . "}" . "}" . "      " . "function confirmar(){" . " Ext.MessageBox.confirm('Eliminar', 'Desea eliminar este tipo de almacen?', eliminar_sucursal );" . "}";
    $btn_eliminar->addOnClick("confirmar", $funcion_eliminar);
    $menu->addMenuItem($btn_eliminar);
}
$page->addComponent($menu);
//
 private static function validarParametrosAlmacen($id_almacen = null, $id_sucursal = null, $id_empresa = null, $id_tipo_almacen = null, $nombre = null, $descripcion = null, $activo = null)
 {
     //Valida que el almacen exista en la base de datos
     if (!is_null($id_almacen)) {
         if (is_null(AlmacenDAO::getByPK($id_almacen))) {
             return "El almacen con id: " . $id_almacen . " no existe";
         }
     }
     //Valida que 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 la empresa exista en la base de datos
     if (!is_null($id_empresa)) {
         if (is_null(EmpresaDAO::getByPK($id_empresa))) {
             return "La empresa con id: " . $id_empresa . " no existe";
         }
     }
     //Valida que el tipo de almacen exista en la base de datos
     if (!is_null($id_tipo_almacen)) {
         if (is_null(TipoAlmacenDAO::getByPK($id_tipo_almacen))) {
             return "El tipo de almacen con id: " . $id_tipo_almacen . " no existe";
         }
     }
     //Valida que el nombre tenga una longitud maxima de 100
     if (!is_null($nombre)) {
         $e = self::validarString($nombre, 100, "nombre");
         if (is_string($e)) {
             return $e;
         }
     }
     //Valida que la descripcion tenga una longitud maxima de 255
     if (!is_null($descripcion)) {
         $e = self::validarString($descripcion, 255, "descripcion");
         if (is_string($e)) {
             return $e;
         }
     }
     //Valida el boleano activo
     if (!is_null($activo)) {
         $e = self::validarNumero($activo, 1, "activo");
         if (is_string($e)) {
             return $e;
         }
     }
     //No se encontro error, regresa true
     return true;
 }
 /**
  * Desactivar Tipo de Almacen
  */
 public function testTipoDesactivar()
 {
     $a = AlmacenesController::NuevoTipo("Desactivar_Tipo_Almacen" . time());
     AlmacenesController::DesactivarTipo($id_tipo_almacen = $a["id_tipo_almacen"]);
     $this->assertEquals(0, TipoAlmacenDAO::getByPK($a["id_tipo_almacen"])->getActivo(), "Error al desactivar el tipo de almacen");
 }
Example #4
0
function funcion_tipo_almacen($id_tipo_almacen)
{
    return TipoAlmacenDAO::getByPK($id_tipo_almacen) ? TipoAlmacenDAO::getByPK($id_tipo_almacen)->getDescripcion() : "------";
}
Example #5
0
 /**
  *
  *Edita un tipo de almacen
  *
  * @param id_tipo_almacen int Id del tipo de almacen a editar
  * @param activo bool Indica si el tipo almacén se activa o desactiva
  * @param descripcion string Descripcion del tipo de almacen
  **/
 static function EditarTipo($id_tipo_almacen, $activo = null, $descripcion = null)
 {
     Logger::log("Editando tipo de almacen " . $id_tipo_almacen);
     //Se valida que el tipo de almacen exista
     $tipo_almacen = TipoAlmacenDAO::getByPK($id_tipo_almacen);
     if (is_null($tipo_almacen)) {
         Logger::error("El tipo de almacen " . $id_tipo_almacen . " no existe");
         throw new Exception("El tipo de almacen " . $id_tipo_almacen . " no existe");
     }
     //Se valida el parametro descripcion
     if (!is_null($descripcion)) {
         if (!ValidacionesController::validarLongitudDeCadena($descripcion, 2, 64)) {
             Logger::error($validar);
             throw new Exception($validar, 901);
         }
         $tipos_almacen = array_diff(TipoAlmacenDAO::search(new TipoAlmacen(array("descripcion" => trim($descripcion)))), array(TipoAlmacenDAO::getByPK($id_tipo_almacen)));
         if (!empty($tipos_almacen)) {
             Logger::error("La descripcion (" . $descripcion . ") es repetida");
             throw new Exception("La descripcion esta repetida");
         }
         $tipo_almacen->setDescripcion($descripcion);
     }
     DAO::transBegin();
     try {
         TipoAlmacenDAO::save($tipo_almacen);
     } catch (Exception $e) {
         DAO::transRollback();
         Logger::error("No se pudo editar el tipo de almacen " . $e);
         throw new Exception("No se pudo editar el tipo de almacen ", 901);
     }
     DAO::transEnd();
     Logger::log("Tipo de almacen editado correctamente");
 }