/**
  *
  *Registra un nuevo concepto de gasto
  *Update : En la respuesta basta con solo indicar success : true | false, y en caso de fallo indicar el por que.
  *
  * @param id_cuenta_contable int El id de la cuenta contable a la que se registraran los gastos de este concepto
  * @param nombre string la justificacion que aparecera despues de la leyenda "gasto por concepto de"
  * @param descripcion string Descripcion larga del concepto de gasto
  * @return id_concepto_gasto int Id autogenerado por la insercin del nuevo gasto
  **/
 public static function NuevoConceptoGasto($id_cuenta_contable, $nombre, $descripcion = null)
 {
     Logger::log("Creando concepto de gasto");
     //valida los parametros de gasto
     $validar = self::validarParametrosConceptoGasto(null, $nombre, $descripcion, $id_cuenta_contable);
     if (is_string($validar)) {
         Logger::error($validar);
         throw new Exception($validar);
     }
     //se inicializa el registro de concepto gasto
     $concepto_gasto = new ConceptoGasto();
     $concepto_gasto->setNombre(trim($nombre));
     $concepto_gasto->setDescripcion($descripcion);
     $concepto_gasto->setIdCuentaContable($id_cuenta_contable);
     $concepto_gasto->setActivo(1);
     DAO::transBegin();
     try {
         ConceptoGastoDAO::save($concepto_gasto);
     } catch (Exception $e) {
         DAO::transRollback();
         Logger::error("No se pudo crear el concepto de gasto: " . $e);
         throw new Exception("No se pudo crear el concepto de gasto");
     }
     DAO::transEnd();
     Logger::log("Gasto creado exitosamente");
     $cuenta_padre = CuentaContableDAO::getByPK($id_cuenta_contable);
     ContabilidadController::NuevaCuenta($cuenta_padre->getAbonosAumentan(), $cuenta_padre->getCargosAumentan(), $cuenta_padre->getClasificacion(), $cuenta_padre->getEsCuentaMayor(), $cuenta_padre->getEsCuentaOrden(), $cuenta_padre->getIdCatalogoCuentas(), $cuenta_padre->getNaturaleza(), $nombre, $cuenta_padre->getTipoCuenta(), $id_cuenta_contable);
     return array("id_concepto_gasto" => $concepto_gasto->getIdConceptoGasto());
 }