/// <summary>
 /// Obtiene un lista paginada
 /// </summary>
 /// <param name="pagina"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 public ResultadoInfo <TipoObservacionInfo> ObtenerPorPagina(PaginacionInfo pagina, TipoObservacionInfo filtro)
 {
     try
     {
         Dictionary <string, object> parameters = AuxTipoObservacionDAL.ObtenerParametrosPorPagina(pagina, filtro);
         DataSet ds = Retrieve("TipoObservacion_ObtenerPorPagina", parameters);
         ResultadoInfo <TipoObservacionInfo> result = null;
         if (ValidateDataSet(ds))
         {
             result = MapTipoObservacionDAL.ObtenerPorPagina(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene un registro de TipoObservacion
 /// </summary>
 /// <param name="descripcion">Descripción de la TipoObservacion</param>
 /// <returns></returns>
 public TipoObservacionInfo ObtenerPorDescripcion(string descripcion)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxTipoObservacionDAL.ObtenerParametrosPorDescripcion(descripcion);
         DataSet             ds     = Retrieve("TipoObservacion_ObtenerPorDescripcion", parameters);
         TipoObservacionInfo result = null;
         if (ValidateDataSet(ds))
         {
             result = MapTipoObservacionDAL.ObtenerPorDescripcion(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Metodo para Crear un registro de TipoObservacion
 /// </summary>
 /// <param name="info">Valores de la entidad que será creada</param>
 public int Crear(TipoObservacionInfo info)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxTipoObservacionDAL.ObtenerParametrosCrear(info);
         int result = Create("TipoObservacion_Crear", parameters);
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene una lista filtrando por el estatus Activo = 1, Inactivo = 0
 /// </summary>
 /// <returns></returns>
 public IList <TipoObservacionInfo> ObtenerTodos(EstatusEnum estatus)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxTipoObservacionDAL.ObtenerTodos(estatus);
         DataSet ds = Retrieve("TipoObservacion_ObtenerTodos", parameters);
         IList <TipoObservacionInfo> result = null;
         if (ValidateDataSet(ds))
         {
             result = MapTipoObservacionDAL.ObtenerTodos(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Metodo para actualizar un registro de TipoObservacion
 /// </summary>
 /// <param name="info">Valores de la entidad que se actualizarán</param>
 public void Actualizar(TipoObservacionInfo info)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxTipoObservacionDAL.ObtenerParametrosActualizar(info);
         Update("TipoObservacion_Actualizar", parameters);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }