private void btnAgregar_Click(object sender, EventArgs e) { clsPropietario propietarioTemp = lstPropietarios.Find(p => p.Dpi == Convert.ToInt32(txtDPI.Text)); if (txtNombre.Text.Trim().Length > 0 && txtApellido.Text.Trim().Length > 0 && txtDPI.Text.Trim().Length > 0) { if (propietarioTemp == null && Convert.ToInt32(txtDPI.Text) > 0) { FileStream stream = new FileStream("Propietarios.txt", FileMode.Append, FileAccess.Write); StreamWriter writer = new StreamWriter(stream); clsPropietario nuevoPropietario = new clsPropietario(); nuevoPropietario.Dpi = Convert.ToInt32(txtDPI.Text); nuevoPropietario.Nombre = txtNombre.Text.Trim(); nuevoPropietario.Apellido = txtApellido.Text.Trim(); writer.WriteLine(nuevoPropietario.Dpi); writer.WriteLine(nuevoPropietario.Nombre); writer.WriteLine(nuevoPropietario.Apellido); writer.Close(); this.lstPropietarios.Add(nuevoPropietario); MessageBox.Show("Propietario agregado exitosamente.\n Presione actualizar en el formulario general para visualizar los cambios."); this.Close(); } else { MessageBox.Show("El DPI ya ha sido registrado o tiene un valor nulo."); } } else { MessageBox.Show("Debe llenar todos los campos"); } }
public void actualizar() { foreach (var pd in lstPropiedades) { clsPropietario propietarioTemp = lstPropietarios.Find(pt => pt.Dpi == pd.Dpi_Dueño); clsCantidadPropiedades datosCantidadPropiedades = lstDatosCantidadPropiedades.Find(cp => cp.Dpi == pd.Dpi_Dueño); if (datosCantidadPropiedades == null) { datosCantidadPropiedades = new clsCantidadPropiedades(); datosCantidadPropiedades.CantidadPropiedades = 1; datosCantidadPropiedades.CuotaMantenimientoTotal = pd.CuotaMantenimiento; datosCantidadPropiedades.Dpi = pd.Dpi_Dueño; datosCantidadPropiedades.NombreApellido = propietarioTemp.Nombre + " " + propietarioTemp.Apellido; lstDatosCantidadPropiedades.Add(datosCantidadPropiedades); } else { foreach (var dato in lstDatosCantidadPropiedades) { if (dato.Dpi.Equals(datosCantidadPropiedades.Dpi)) { dato.CantidadPropiedades++; dato.CuotaMantenimientoTotal += pd.CuotaMantenimiento; } } } } propietarioConMasPropiedades(); propietarioConCuotaAlta(); cuotasAltas(); cuotasBajas(); }
private void cmbDPI_SelectedIndexChanged(object sender, EventArgs e) { if (cmbDPI.Items.Count > 0) { clsPropietario propietarioTemp = lstPropietarios.Find(p => p.Dpi == Convert.ToInt32(cmbDPI.SelectedValue)); txtNombre.Text = propietarioTemp.Nombre + " " + propietarioTemp.Apellido; } }
public void loadData() { /*Leer los archivos de texto y asignar los valores a las listas * para poder utilizarlos/mostrarlos en el programa*/ FileStream stream = new FileStream("Propietarios.txt", FileMode.Open, FileAccess.Read); FileStream stream2 = new FileStream("Propiedades.txt", FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(stream); StreamReader reader2 = new StreamReader(stream2); //limpiar las listas para el caso de actualización lstPropiedades.Clear(); lstPropietarios.Clear(); lstIntermedia.Clear(); //llenado de la lista de propietario while (reader.Peek() > -1) { clsPropietario propietarioTemp = new clsPropietario(); propietarioTemp.Dpi = Convert.ToInt32(reader.ReadLine()); propietarioTemp.Nombre = reader.ReadLine(); propietarioTemp.Apellido = reader.ReadLine(); lstPropietarios.Add(propietarioTemp); } reader.Close(); //Llenado de la lista de propiedades while (reader2.Peek() > -1) { clsPropiedades propiedadTemp = new clsPropiedades(); propiedadTemp.No_deCasa = Convert.ToInt32(reader2.ReadLine()); propiedadTemp.Dpi_Dueño = Convert.ToInt32(reader2.ReadLine()); propiedadTemp.CuotaMantenimiento = Convert.ToDouble(reader2.ReadLine()); lstPropiedades.Add(propiedadTemp); } reader2.Close(); //llenado de la lista de datos intermedios foreach (var p in lstPropiedades) { clsIntermedia intermediaTemp = new clsIntermedia(); //buscar los datos de un propietario en base al DPI y asignarlos a la lista intermedia clsPropietario propietarioTemp = lstPropietarios.Find(n => n.Dpi == p.Dpi_Dueño); intermediaTemp.No_deCasa = p.No_deCasa; intermediaTemp.CuotaMantenimiento = p.CuotaMantenimiento; intermediaTemp.Nombre = propietarioTemp.Nombre; intermediaTemp.Apellido = propietarioTemp.Apellido; lstIntermedia.Add(intermediaTemp); } dtgPropiedades.DataSource = null; dtgPropiedades.DataSource = lstPropiedades; dtgPropiedades.Refresh(); dtgPropietarios.DataSource = null; dtgPropietarios.DataSource = lstPropietarios; dtgPropietarios.Refresh(); dtgIntermedia.DataSource = null; dtgIntermedia.DataSource = lstIntermedia; dtgIntermedia.Refresh(); }