/// <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); } } }
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)); }
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); }
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); } }
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); } }
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; } }
//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); }
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; } }