/// <summary>
 /// Metodo para Guardar/Modificar una entidad IndicadorProductoCalidad
 /// </summary>
 /// <param name="info"></param>
 public int Guardar(IndicadorProductoCalidadInfo info)
 {
     try
     {
         Logger.Info();
         var indicadorProductoCalidadDAL = new IndicadorProductoCalidadDAL();
         int result = info.IndicadorProductoCalidadID;
         if (info.IndicadorProductoCalidadID == 0)
         {
             result = indicadorProductoCalidadDAL.Crear(info);
         }
         else
         {
             indicadorProductoCalidadDAL.Actualizar(info);
         }
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene un lista de IndicadorProductoCalidad
 /// </summary>
 /// <returns></returns>
 public IList <IndicadorProductoCalidadInfo> ObtenerTodos()
 {
     try
     {
         Logger.Info();
         var indicadorProductoCalidadDAL             = new IndicadorProductoCalidadDAL();
         IList <IndicadorProductoCalidadInfo> result = indicadorProductoCalidadDAL.ObtenerTodos();
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene un lista paginada
 /// </summary>
 /// <param name="pagina"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 public ResultadoInfo <IndicadorProductoCalidadInfo> ObtenerPorPagina(PaginacionInfo pagina, IndicadorProductoCalidadInfo filtro)
 {
     try
     {
         Logger.Info();
         var indicadorProductoCalidadDAL = new IndicadorProductoCalidadDAL();
         ResultadoInfo <IndicadorProductoCalidadInfo> result = indicadorProductoCalidadDAL.ObtenerPorPagina(pagina, filtro);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
 /// <summary>
 /// Obtiene una entidad IndicadorProductoCalidad por su descripción
 /// </summary>
 /// <param name="descripcion"></param>
 /// <returns></returns>
 public IndicadorProductoCalidadInfo ObtenerPorDescripcion(string descripcion)
 {
     try
     {
         Logger.Info();
         var indicadorProductoCalidadDAL     = new IndicadorProductoCalidadDAL();
         IndicadorProductoCalidadInfo result = indicadorProductoCalidadDAL.ObtenerPorDescripcion(descripcion);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }