<?php

define("BYPASS_INSTANCE_CHECK", false);
require_once "../../../server//bootstrap.php";
$page = new GerenciaComponentPage();
$page->addComponent(new TitleComponent("Nuevo Ingreso"));
//forma de nuevo ingreso
$form = new DAOFormComponent(array(new Ingreso(), new ConceptoIngreso()));
$form->hideField(array("activo", "cancelado", "id_usuario", "id_ingreso", "motivo_cancelacion", "fecha_de_registro", "id_sucursal", "id_caja"));
$form->createComboBoxJoin("id_billete", "nombre", BilleteDAO::search(new Billete(array("activo" => 1))));
$form->setType("fecha_del_ingreso", "date");
$form->createComboBoxJoin("id_empresa", "razon_social", EmpresaDAO::getAll());
$form->createComboBoxJoin("id_concepto_ingreso", "nombre", ConceptoIngresoDAO::getAll());
$form->createComboBoxJoin("id_caja", "descripcion", CajaDAO::getAll());
$form->addApiCall("api/cargosyabonos/ingreso/nuevo", "POST");
$form->renameField(array("fecha_del_ingreso" => "fecha_ingreso"));
$page->addComponent($form);
$page->render();
 /**
      *
      *Lista los conceptos de ingreso, se puede ordenar por los atributos del concepto de ingreso.
      
      <br/><br/><b>Update :</b>Falta especificar la estructura del JSON que se env?como parametro
      *
      * @param ordenar json Valor que indicar la forma en que se ordenar la lista
      * @return conceptos_ingreso json Arreglo que contendr� la informaci�n de los conceptos de ingreso
      **/
 public static function ListaConceptoIngreso($activo = null, $orden = null)
 {
     Logger::log("Listando conceptos de ingreso");
     //valida los parametros
     $validar = self::validarParametrosConceptoIngreso(null, null, null, null, $activo);
     if (is_string($validar)) {
         Logger::error($validar);
         throw new Exception($validar);
     }
     if (!is_null($orden)) {
         if ($orden != "id_concepto_ingreso" && $orden != "nombre" && $orden != "descripcion" && $orden != "monto" && $orden != "activo") {
             Logger::error("La variable orden (" . $orden . ") no es valida");
             throw new Exception("La variable orden (" . $orden . ") no es valida");
         }
     }
     $conceptos_ingreso = null;
     $concepto_ingreso_criterio = new ConceptoIngreso();
     if (!is_null($activo)) {
         $concepto_ingreso_criterio->setActivo($activo);
         $conceptos_ingreso = ConceptoIngresoDAO::search($concepto_ingreso_criterio, $orden);
     } else {
         $conceptos_ingreso = ConceptoIngresoDAO::getAll(null, null, $orden);
     }
     Logger::log("Lista exitosa");
     return $conceptos_ingreso;
 }