示例#1
0
        /// <summary>
        ///     Obtiene un lista paginada de Pais por el filtro especificado
        /// </summary>
        /// <param name="pagina"></param>
        /// <param name="filtro"></param>
        /// <returns></returns>
        internal ResultadoInfo <PaisInfo> ObtenerPorPagina(PaginacionInfo pagina, PaisInfo filtro)
        {
            ResultadoInfo <PaisInfo> paisLista = null;

            try
            {
                Dictionary <string, object> parameters = AuxPaisDAL.ObtenerParametrosPorPagina(pagina, filtro);
                DataSet ds = Retrieve("Pais_ObtenerPorPagina", parameters);
                if (ValidateDataSet(ds))
                {
                    paisLista = MapPaisDAL.ObtenerPorPagina(ds);
                }
            }
            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);
            }
            return(paisLista);
        }
示例#2
0
        /// <summary>
        /// Obtiene el chofer por su identificador
        /// </summary>
        /// <param name="paisInfo"></param>
        /// <returns></returns>
        internal PaisInfo ObtenerPorID(PaisInfo paisInfo)
        {
            PaisInfo result = null;

            try
            {
                Logger.Info();
                Dictionary <string, object> parameters = AuxPaisDAL.ObtenerParametroPorID(paisInfo);
                DataSet ds = Retrieve("Pais_ObtenerPorID", parameters);
                if (ValidateDataSet(ds))
                {
                    result = MapPaisDAL.ObtenerPorID(ds);
                }
            }
            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);
            }
            return(result);
        }
示例#3
0
        public int Insertar(PaisInfo paisInfo)
        {
            int resultado;

            try
            {
                using (var oConnection = new SqlConnection(HelperAccesoDatos.GetCadenaConexion()))
                {
                    var sqlComando = new SqlCommand {
                        Connection = oConnection, CommandText = "InsertarPais", CommandType = CommandType.StoredProcedure
                    };

                    sqlComando.Parameters.Add("EmpresaId", SqlDbType.Int).Value = paisInfo.PaisId;
                    //sqlComando.Parameters.Add("TipoDocumentoId", SqlDbType.Int).Value = paisInfo.TipoDocumentoId;
                    //sqlComando.Parameters.Add("NumeroDocumento", SqlDbType.VarChar).Value = paisInfo.NumeroDocumento;
                    sqlComando.Parameters.Add("Descripcion", SqlDbType.VarChar).Value = paisInfo.Descripcion;
                    //sqlComando.Parameters.Add("RazonSocial", SqlDbType.VarChar).Value = paisInfo.RazonSocial;
                    //sqlComando.Parameters.Add("Ciiu", SqlDbType.VarChar).Value = paisInfo.Ciiu;
                    //sqlComando.Parameters.Add("Direccion", SqlDbType.VarChar).Value = paisInfo.Direccion;
                    sqlComando.Parameters.Add("Activo", SqlDbType.Int).Value            = paisInfo.Activo;
                    sqlComando.Parameters.Add("UsuarioCreacionId", SqlDbType.Int).Value = paisInfo.UsuarioCreacionId;

                    oConnection.Open();
                    resultado = Convert.ToInt32(sqlComando.ExecuteScalar());

                    oConnection.Close();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(resultado);
        }
        public int Insertar(PaisInfo paisInfo)
        {
            int resultado = 0;

            try
            {
                resultado = _paisAccesoDatos.Insertar(paisInfo);
            }
            catch (Exception ex)
            {
                bool rethrow = ExceptionPolicy.HandleException(ex, Constantes.ExcepcionPoliticaLogicaNegocio);
                if (rethrow)
                {
                    throw;
                }
            }
            return(resultado);
        }
示例#5
0
        /// <summary>
        /// Obtiene los parametros para consultar el pais por su identificador.
        /// </summary>
        /// <param name="paisInfo"></param>
        /// <returns></returns>
        internal static Dictionary <string, object> ObtenerParametroPorID(PaisInfo paisInfo)
        {
            Dictionary <string, object> parametros;

            try
            {
                Logger.Info();
                parametros = new Dictionary <string, object>
                {
                    { "@PaisID", paisInfo.PaisID }
                };
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(parametros);
        }
示例#6
0
 /// <summary>
 /// Obtiene una entidad Pais por su descripcion
 /// </summary>
 /// <param name="descripcion">Obtiene una entidad Pais por su Id</param>
 /// <returns></returns>
 public PaisInfo ObtenerPorDescripcion(string descripcion)
 {
     try
     {
         Logger.Info();
         var      paisDAL = new PaisDAL();
         PaisInfo result  = paisDAL.ObtenerPorDescripcion(descripcion);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
示例#7
0
        /// <summary>
        /// lista todos los Paises existentes.
        /// </summary>
        /// <returns></returns>
        public List <PaisInfo> List()
        {
            db.SetParameterValue(commandPais, "i_operation", 'S');
            db.SetParameterValue(commandPais, "i_option", 'A');

            List <PaisInfo> col = new List <PaisInfo>();

            IDataReader dr = null;

            PaisInfo m = null;

            try
            {
                dr = db.ExecuteReader(commandPais);

                while (dr.Read())
                {
                    m = Factory.GetPais(dr);

                    col.Add(m);
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(string.Format("NIVI Error: {0} , NameSpace: {1}, Clase: {2}, Metodo: {3} ", ex.Message, MethodBase.GetCurrentMethod().DeclaringType.Namespace, MethodBase.GetCurrentMethod().DeclaringType.Name, MethodBase.GetCurrentMethod().Name));

                bool rethrow = ExceptionPolicy.HandleException(ex, "DataAccess Policy");

                if (rethrow)
                {
                    throw;
                }
            }
            finally
            {
                if (dr != null)
                {
                    dr.Close();
                }
            }

            return(col);
        }
示例#8
0
        private static PaisInfo CargarPaisInfo(IDataReader dr)
        {
            int colCount = dr.FieldCount;
            var values   = new object[colCount];

            #region Indices
            int indPaisId                = dr.GetOrdinal("PaisId");
            int indCodigoPais            = dr.GetOrdinal("CodigoPais");
            int indDescripcion           = dr.GetOrdinal("Descripcion");
            int indActivo                = dr.GetOrdinal("Activo");
            int indUsuarioCreacionId     = dr.GetOrdinal("UsuarioCreacionId");
            int indFechaCreacion         = dr.GetOrdinal("FechaCreacion");
            int indUsuarioModificacionId = dr.GetOrdinal("UsuarioModificacionId");
            int indFechaModificacion     = dr.GetOrdinal("FechaModificacion");
            int indNumeroFila            = dr.GetOrdinal("NumeroFila");
            int indTotalFilas            = dr.GetOrdinal("TotalFilas");
            #endregion

            var paisInfo = new PaisInfo();
            dr.GetValues(values);

            #region Campos
            paisInfo.PaisId            = Convert.ToInt32(values[indPaisId]);
            paisInfo.CodigoPais        = Convert.ToString(values[indCodigoPais]);
            paisInfo.Descripcion       = Convert.ToString(values[indDescripcion]);
            paisInfo.Activo            = Convert.ToInt32(values[indActivo]);
            paisInfo.UsuarioCreacionId = Convert.ToInt32(values[indUsuarioCreacionId]);
            paisInfo.FechaCreacion     = Convert.ToDateTime(values[indFechaCreacion]);
            if (values[indUsuarioModificacionId] != DBNull.Value)
            {
                paisInfo.UsuarioModificacionId = Convert.ToInt32(values[indUsuarioModificacionId]);
            }
            if (values[indFechaModificacion] != DBNull.Value)
            {
                paisInfo.FechaModificacion = Convert.ToDateTime(values[indFechaModificacion]);
            }
            paisInfo.NumeroFila = Convert.ToInt32(values[indNumeroFila]);
            paisInfo.TotalFilas = Convert.ToInt32(values[indTotalFilas]);
            #endregion

            return(paisInfo);
        }
示例#9
0
 /// <summary>
 /// Obtiene parametros para crear
 /// </summary>
 /// <param name="info">Valores de la entidad</param>
 /// <returns></returns>
 internal static Dictionary <string, object> ObtenerParametrosCrear(PaisInfo info)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@Descripcion", info.Descripcion },
             { "@DescripcionCorta", info.DescripcionCorta },
             { "@Activo", info.Activo },
             { "@UsuarioCreacionID", info.UsuarioCreacionID }
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
示例#10
0
        /// <summary>
        ///     Obtiene un pais por Id
        /// </summary>
        /// <param name="paisInfo"></param>
        /// <returns></returns>
        public PaisInfo ObtenerPorID(PaisInfo paisInfo)
        {
            PaisInfo pasInfo;

            try
            {
                Logger.Info();
                var paisDAL = new PaisDAL();
                pasInfo = paisDAL.ObtenerPorID(paisInfo);
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(pasInfo);
        }
示例#11
0
        /// <summary>
        ///     Obtiene un lista paginada de paises
        /// </summary>
        /// <param name="pagina"></param>
        /// <param name="filtro"></param>
        /// <returns></returns>
        public ResultadoInfo <PaisInfo> ObtenerPorPagina(PaginacionInfo pagina, PaisInfo filtro)
        {
            ResultadoInfo <PaisInfo> result;

            try
            {
                Logger.Info();
                var paisDAL = new PaisDAL();
                result = paisDAL.ObtenerPorPagina(pagina, filtro);
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(result);
        }
示例#12
0
 /// <summary>
 ///     Metodo que actualiza un Pais
 /// </summary>
 /// <param name="info"></param>
 internal void Actualizar(PaisInfo info)
 {
     try
     {
         Dictionary <string, object> parameters = AuxPaisDAL.ObtenerParametrosActualizar(info);
         Update("Pais_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);
     }
 }
示例#13
0
 /// <summary>
 ///  Método que obtiene un registro
 /// </summary>
 /// <param name="ds"></param>
 /// <returns></returns>
 internal static PaisInfo ObtenerPorDescripcion(DataSet ds)
 {
     try
     {
         Logger.Info();
         DataTable dt      = ds.Tables[ConstantesDAL.DtDatos];
         PaisInfo  entidad =
             (from info in dt.AsEnumerable()
              select
              new PaisInfo
         {
             PaisID = info.Field <int>("PaisID"),
             Descripcion = info.Field <string>("Descripcion"),
             DescripcionCorta = info.Field <string>("DescripcionCorta"),
             Activo = info.Field <bool>("Activo").BoolAEnum()
         }).First();
         return(entidad);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
示例#14
0
        /// <summary>
        /// Obtiene parametros para la ejecucion del SP
        /// </summary>
        /// <param name="pagina"></param>
        /// <param name="filtro"></param>
        /// <param name="dependencias"></param>
        /// <returns></returns>
        internal static Dictionary <string, object> ObtenerParametrosPorPagina(PaginacionInfo pagina, PaisInfo filtro,
                                                                               IList <IDictionary <IList <string>, object> >
                                                                               dependencias)
        {
            Dictionary <string, object> parametros;

            try
            {
                Logger.Info();
                parametros = new Dictionary <string, object>
                {
                    { "@Descripcion", filtro.Descripcion },
                    { "@DescripcionCorta", filtro.DescripcionCorta },
                    { "@Inicio", pagina.Inicio },
                    { "@Activo", filtro.Activo },
                    { "@Limite", pagina.Limite }
                };
                AuxDAL.ObtenerDependencias(parametros, dependencias);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(parametros);
        }
示例#15
0
        /// <summary>
        /// Obtiene parametros para obtener lista paginada
        /// </summary>
        /// <param name="pagina"></param>
        /// <param name="filtro"></param>
        /// <returns></returns>
        internal static Dictionary <string, object> ObtenerParametrosPorPagina(PaginacionInfo pagina, PaisInfo filtro)
        {
            Dictionary <string, object> parametros;

            try
            {
                Logger.Info();
                parametros = new Dictionary <string, object>
                {
                    { "@Descripcion", filtro.Descripcion ?? string.Empty },
                    { "@Activo", filtro.Activo },
                    { "@Inicio", pagina.Inicio },
                    { "@Limite", pagina.Limite }
                };
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(parametros);
        }