public static function getById($entrega_directa_id, $detalle_alimento_id) { $sql = 'select * from alimento_entrega_directa where entrega_directa_id = :entrega_directa_id and detalle_alimento_id = :detalle_alimento_id '; $query = self::nuevaDb()->prepare($sql); $query->execute(array(":entrega_directa_id" => $entrega_directa_id, ":detalle_alimento_id" => $detalle_alimento_id)); $arreglo = $query->fetchAll(PDO::FETCH_ASSOC); $result = Alimentoentregadirecta::inicializar($arreglo[0]); return $result; }
public function alta() { Session::tienePermiso('alta'); $this->view->setEncabezado("Nueva entrega directa"); $this->view->setTitulo("Entrega directa"); if (isset($_POST['params'])) { $this->check_csrf('post'); $this->actualizar_csrf(); $datosEntregaDirecta = $_POST["params"]; $datosEntregaDirecta['fecha'] = date('Y-m-d'); $entregaDirecta = Entregadirecta::nuevo($datosEntregaDirecta); $this->validar($entregaDirecta); $datos = $this->organizarDatos($_POST["detalles"], $_POST["params"]); $this->validarDatos($datos, $entregaDirecta); if (count($entregaDirecta->getErrores()) != 0) { //creo las clases necesarias para el primer acceso al formulario $detalle = new Detalle(); $entidad = new EntidadReceptora(); $config = new Configuracion(); //obtengo todas las entidades, el limite de vencimiento y los detalles disponibles $entidades = $entidad->obtenerTodos(); $dias = $config->buscarPor("clave", "vencimiento_stock"); $entrega = $detalle->obtenerPorVencer($dias[0]['valor']); // $alimentosListado = Alimento::getStockOfall(); $this->view->setError("Modifique los campos indicados."); $this->view->renderizar("formulario", array("accion" => "alta", "entrega_directa" => $entregaDirecta, "pedidos" => $entrega, "entidades" => $entidades, "token" => $this->token, "token_id" => $this->token_id)); exit; } $entregaDirecta->guardar(); $paramsAlimentoEntregaDirecta['entrega_directa_id'] = $entregaDirecta->getId(); $alimento_pedido = array(); foreach ($datos["pedidos"] as $key => $val) { $alimento_pedido['entrega_directa_id'] = $paramsAlimentoEntregaDirecta['entrega_directa_id']; $alimento_pedido['detalle_alimento_id'] = $key; $alimento_pedido['cantidad'] = $val; $alimento_pedido['baja'] = 0; $alimentoPedido = Alimentoentregadirecta::inicializar($alimento_pedido); $alimentoPedido->guardar(); $detalleAlimento = new Detalle(); $detalleAli = $detalleAlimento->obtenerDetalleAlimento($key); $detalleAlimento = $detalleAlimento->inicializar($detalleAli[0]); $stockActual = $detalleAlimento->getStock(); $auxiliar = $stockActual - $val; $detalleAlimento->setStock($auxiliar); $detalleAlimento->actualizar(); } $detalle = new Detalle(); $entidad = new EntidadReceptora(); $config = new Configuracion(); //obtengo todas las entidades, el limite de vencimiento y los detalles disponibles $entidades = $entidad->obtenerTodos(); $dias = $config->buscarPor("clave", "vencimiento_stock"); $entrega = $detalle->obtenerPorVencer($dias[0]['valor']); // $alimentosListado = Alimento::getStockOfall(); $this->view->renderizar("formulario", array("accion" => "alta", "pedidos" => $entrega, "entidades" => $entidades, "token" => $this->token, "token_id" => $this->token_id)); } else { //creo las clases necesarias para el primer acceso al formulario $detalle = new Detalle(); $entidad = new EntidadReceptora(); $config = new Configuracion(); //obtengo todas las entidades, el limite de vencimiento y los detalles disponibles $entidades = $entidad->obtenerTodos(); $dias = $config->buscarPor("clave", "vencimiento_stock"); $entrega = $detalle->obtenerPorVencer($dias[0]['valor']); // $alimentosListado = Alimento::getStockOfall(); $this->view->renderizar("formulario", array("accion" => "alta", "pedidos" => $entrega, "entidades" => $entidades, "token" => $this->token, "token_id" => $this->token_id)); } }