<?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"); }
function funcion_tipo_almacen($id_tipo_almacen) { return TipoAlmacenDAO::getByPK($id_tipo_almacen) ? TipoAlmacenDAO::getByPK($id_tipo_almacen)->getDescripcion() : "------"; }
/** * *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"); }