/// <summary>
        /// Dada una lista de entidades, calcula por columna los digitos verificadores verticales y los insert/actualiza en la BD
        /// </summary>
        /// <typeparam name="T">List<T></typeparam>
        /// <param name="list">Lista</param>
        public void CargarDVV <T>(List <T> list) where T : IEntityDV
        {
            PropertyInfo[] Props = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance);

            for (int i = 0; i < Props.Length; i++)
            {
                var cadena = new StringBuilder();

                if (Props[i].Name != ConstantesTexto.DVH)
                {
                    foreach (var e in list)
                    {
                        cadena.Append(Props[i].GetValue(e) ?? string.Empty);
                        string n = Props[i].Name;
                    }

                    DVV dvv = new DVV();
                    dvv.tabla   = typeof(T).Name;
                    dvv.columna = Props[i].Name;
                    dvv.DV      = new CryptoSeguridad().Encrypt(cadena.ToString());

                    new DigitosVerificadoresDAL().UpdateDVV(dvv);
                }
            }
        }
Exemplo n.º 2
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            UsuarioBLL     BLLUsuario = new UsuarioBLL();
            UsuarioEntidad usuario    = new UsuarioEntidad();


            List <string> LisDVHs = new List <string>();

            var VerificarIntegridad = BLLUsuario.GenerarCadenaDVHTablaEntera();

            foreach (var Usuario  in  VerificarIntegridad)
            {
                LisDVHs.Add(DigitoVerificadorH.CarlcularDigitoUsuario(Usuario)); // en la lista esta cada uno de los horizontales calculados nuevamente
            }
            Double Acum = 0;

            foreach (var valor in LisDVHs) // por cada valor en la lista de cada digito horizontal lo voy sumando para obtener el vertical
            {
                Acum += Convert.ToDouble(valor);
            }


            //Acum = DVHBLL.ConsultarDVH();

            DVV SumaDVV = DVVDAL.SelectTablaUsuario();

            double DVVBD = Convert.ToDouble(SumaDVV.dvv); //traigo el digito vertical de la base

            if (Acum == DVVBD)
            {
                usuario = BLLUsuario.IniciarSesion(TXTEmail.Text, TXTPassword.Text);

                if (usuario != null)

                {
                    usuario.Familia       = UnManagerFamilia.FamiliaSelectNombreFamiliaByIdUsuario(usuario.IdUsuario);
                    usuario.Permisos      = BLLUsuario.UsuarioTraerPermisos(usuario.Email, usuario.IdUsuario);
                    Session["NomUsuario"] = usuario.Nombre;
                    Session["Usuario"]    = usuario;
                    ServicioLog.CrearLogEventos("Logueo", "Logueo Correcto", usuario.Apellido, (usuario.IdUsuario).ToString());

                    Response.Redirect("/Views/Private/MenuAdministracion.aspx");
                }
                else
                {
                    Response.Write("<script>alert('usuario o clave incorrecta')</script>");
                    limpiarCampos();
                }
            }
            else if (Acum != DVVBD)
            {
                System.Text.StringBuilder sb = new System.Text.StringBuilder();
                sb.Append(@"<script type='text/javascript'>");
                sb.Append("alert('La Base de datos se encuentra corrupta, comuniquese con su Administrador');");
                sb.Append(@"</script>");
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(),
                                                        "AgregarClickMsj1", sb.ToString(), false);
            }
        }
        // GET: Backup/Details/5
        public ActionResult ConsistenciaBD()
        {
            LoginComponent loginComponent = new LoginComponent();
            DVV            dVV            = new DVV();

            dVV.estado = loginComponent.VerificarDVV();


            return(View(dVV));
        }
Exemplo n.º 4
0
        public void Insert(DVV DigitoVV)
        {
            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@Tabla", DigitoVV.tabla),
                new SqlParameter("@DVV", DigitoVV.dvv)
            };

            SqlClientUtility.ExecuteScalar(SqlClientUtility.connectionStringName, CommandType.StoredProcedure, "InsertDVV", parameters);
        }
        public DVV GenerarDVV(string DVV, string tabla)
        {
            DVV dVV = new DVV();


            EncriptarSHA256 encriptarSHA256 = new EncriptarSHA256(DVV);

            dVV.dvv   = encriptarSHA256.Hashear();
            dVV.tabla = tabla;
            return(dVV);
        }
Exemplo n.º 6
0
        public DVV  SelectByTabla(string Tabla)
        {
            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@Tabla", Tabla)
            };

            using (DataSet dt = SqlClientUtility.ExecuteDataSet(SqlClientUtility.connectionStringName, CommandType.StoredProcedure, "SelectByTabla", parameters))
            {
                DVV ValorDVVUsuario = new DVV();

                ValorDVVUsuario = MapearMuchos(dt).First();

                return(ValorDVVUsuario);
            }
        }
Exemplo n.º 7
0
        public static DVV   SelectTablaUsuario()
        {
            //    SqlParameter[] parameters = new SqlParameter[]
            //    {

            //        new SqlParameter("@Tabla", Usuario)
            //    };

            using (DataSet dt = SqlClientUtility.ExecuteDataSet(SqlClientUtility.connectionStringName, CommandType.StoredProcedure, "SelectTablaUsuario"))
            {
                DVV ValorDVVUsuario = new DVV();

                ValorDVVUsuario = MapearMuchos(dt).First();

                return(ValorDVVUsuario);
            }
        }
Exemplo n.º 8
0
        public bool VerificarDVV()
        {
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            DVVComponent      dVVComponent      = new DVVComponent();
            DVV dvvTabla = new DVV();

            dvvTabla = dVVComponent.ObtenerDVV("Usuario");
            string dvhTabla    = usuariosComponent.ListaDVH();
            DVV    dvvGenerado = new DVV();

            dvvGenerado = dVVComponent.GenerarDVV(dvhTabla, "Usuario");
            if (dvvTabla.dvv == dvvGenerado.dvv)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        /// <summary>
        /// Update de tabla DVV (contiene info de digítos verificadores verticales)
        /// </summary>
        /// <param name="entity"></param>
        public void UpdateDVV(DVV entity)
        {
            try
            {
                using (SqlConnection conn = ConnectionBD.Instance().Conect())
                {
                    conn.Open();
                    using (SqlCommand cmd = new SqlCommand("sp_insert_updateDVV @tabla, @columna, @DV", conn))
                    {
                        cmd.CommandType = CommandType.Text;
                        cmd.Parameters.AddWithValue("@tabla", entity.tabla);
                        cmd.Parameters.AddWithValue("@columna", entity.columna);
                        cmd.Parameters.AddWithValue("@DV", entity.DV);

                        cmd.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 10
0
        //public DVV GenerarDVV(string DVV, string tabla)
        //{
        //    DVV dVV = new DVV();


        //    EncriptarSHA256 encriptarSHA256 = new EncriptarSHA256(DVV);
        //    dVV.dvv = encriptarSHA256.Hashear();
        //    dVV.tabla = tabla;
        //    return dVV;

        //}

        public DVV GenerarDVV(string DVV, string Tabla)
        {
            UsuarioDAL DVHTotal = new UsuarioDAL();
            DVV        varDVV   = new DVV();


            List <UsuarioEntidad> variable = DVHTotal.SelectAllUsuarios();

            float SumaDVH = 0;

            foreach (UsuarioEntidad item in variable)
            {
                SumaDVH += item.DVH;
            }


            varDVV.tabla = Tabla;
            varDVV.dvv   = (SumaDVH).ToString();



            return(varDVV);
        }
Exemplo n.º 11
0
        private static List <DVV> MapearMuchos(DataSet ds)
        {
            List <DVV> ResUnosItem = new List <DVV>();

            try
            {
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    DVV unItem = new DVV();


                    unItem.IdDVV = (int)row["IdDVV"];
                    unItem.tabla = row["Tabla"].ToString();
                    unItem.dvv   = row["DVV"].ToString();

                    ResUnosItem.Add(unItem);
                }
                return(ResUnosItem);
            }
            catch (Exception es)
            {
                throw;
            }
        }