<?php define("BYPASS_INSTANCE_CHECK", false); require_once "../../../server/bootstrap.php"; $page = new GerenciaComponentPage(); // // Parametros necesarios // $page->requireParam("aid", "GET", "Este almacen no existe."); $este_almacen = AlmacenDAO::getByPK($_GET["aid"]); // // Titulo de la pagina // $page->addComponent(new TitleComponent("Editar almacen " . $este_almacen->getNombre(), 2)); // // Forma de usuario // $form = new DAOFormComponent($este_almacen); $form->hideField(array("id_almacen", "id_empresa", "id_sucursal", "activo")); $form->addApiCall("api/sucursal/almacen/editar/", "GET"); $form->onApiCallSuccessRedirect("sucursales.lista.almacen.php"); $form->sendHidden("id_almacen"); $form->createComboBoxJoin("id_tipo_almacen", "descripcion", array_diff(TipoAlmacenDAO::getAll(), TipoAlmacenDAO::search(new TipoAlmacen(array("id_tipo_almacen" => 2)))), $este_almacen->getIdTipoAlmacen()); $page->addComponent($form); $page->render();
<?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; }
function funcion_tipo_almacen($id_tipo_almacen) { return TipoAlmacenDAO::getByPK($id_tipo_almacen) ? TipoAlmacenDAO::getByPK($id_tipo_almacen)->getDescripcion() : "------"; }
/** * 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"); }
$btn_eliminar->onApiCallSuccessRedirect("sucursales.lista.almacen.php"); $btn_eliminar->addName("eliminar"); $funcion_eliminar = " function eliminar_almacen(btn){" . "if(btn == 'yes')" . "{" . "var p = {};" . "p.id_almacen = " . $_GET["aid"] . ";" . "sendToApi_eliminar(p);" . "}" . "}" . " " . "function confirmar(){" . " Ext.MessageBox.confirm('Desactivar', 'Desea eliminar este almacen?', eliminar_almacen );" . "}"; $btn_eliminar->addOnClick("confirmar", $funcion_eliminar); $menu->addMenuItem($btn_eliminar); $page->addComponent($menu); } // // Forma de producto // $form = new DAOFormComponent($este_almacen); $form->setEditable(false); $form->hideField(array("id_almacen")); $form->createComboBoxJoin("id_sucursal", "razon_social", SucursalDAO::getAll(), $este_almacen->getIdSucursal()); $form->createComboBoxJoin("id_empresa", "razon_social", EmpresaDAO::search(new Empresa(array("activo" => 1))), $este_almacen->getIdEmpresa()); $form->createComboBoxJoin("id_tipo_almacen", "descripcion", TipoAlmacenDAO::getAll(), $este_almacen->getIdTipoAlmacen()); $page->addComponent($form); $page->addComponent(new TitleComponent("Productos en este almacen"), 3); $tabla = new TableComponent(array("id_producto" => "Producto", "id_unidad" => "Unidad", "cantidad" => "Cantidad"), ProductoAlmacenDAO::search(new ProductoAlmacen(array("id_almacen" => $_GET["aid"])))); function funcion_producto($id_producto) { return ProductoDAO::getByPK($id_producto) ? ProductoDAO::getByPK($id_producto)->getNombreProducto() : "--------"; } function funcion_unidad($id_unidad) { return UnidadDAO::getByPK($id_unidad) ? UnidadDAO::getByPK($id_unidad)->getNombre() : "---------"; } $tabla->addColRender("id_producto", "funcion_producto"); $tabla->addColRender("id_unidad", "funcion_unidad"); $page->addComponent($tabla); $page->render();
/** * *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 NuevoTipo($descripcion, $activo = null) { Logger::log("Creando nuevo tipo de almacen"); if (!ValidacionesController::validarLongitudDeCadena($descripcion, 0, 64)) { Logger::error("descripcion : {$descripcion}"); throw new Exception($descripcion); } //No se puede repetir la descripcion del tipo de almacen $tipos_almacen = TipoAlmacenDAO::search(new TipoAlmacen(array("descripcion" => trim($descripcion)))); if (!empty($tipos_almacen)) { Logger::error("La descripcion (" . $descripcion . ") es repetida"); throw new BusinessLogicException("La descripcion esta repetida"); } $activo = $activo == null ? 1 : $activo; $tipo_almacen = new TipoAlmacen(array("descripcion" => trim($descripcion), "activo" => $activo)); DAO::transBegin(); try { TipoAlmacenDAO::save($tipo_almacen); } catch (Exception $e) { DAO::transRollback(); Logger::error("No se pudo crear el nuevo tipo de almacen: " . $e); throw new InvalidDatabaseOperationException("No se pudo crear el nuevo tipo de almacen, contacte a su administrador de sistema"); } DAO::transEnd(); Logger::log("Tipo de almacen creado exitosamente"); return array("id_tipo_almacen" => (int) $tipo_almacen->getIdTipoAlmacen()); }