示例#1
0
        //BOTÓN AGREGAR CLIENTE
        private void BtnAgregarCliente_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                //Pone valores por defecto a los datos no obligatorios

                if (TxtTelefono.Text == "")
                {
                    TxtTelefono.Text = "0";
                }
                if (TxtCelular.Text == "")
                {
                    TxtCelular.Text = "0";
                }
                if (TxtDireccion.Text == "")
                {
                    TxtDireccion.Text = "No ingresado";
                }
                if (ChkSuscriptor.IsChecked == true)
                {
                    if (TxtEmail.Text == "")
                    {
                        throw new EntryPointNotFoundException();
                    }
                }
                if (ChkSuscriptor.IsChecked == false)
                {
                    if (TxtEmail.Text == "")
                    {
                        TxtEmail.Text = "No ingresado";
                    }
                }

                //Verifica si los valores obligatorios no son vacíos
                if (TxtNombre.Text == "" || TxtApellido.Text == "" || TxtCedula.Text == "")
                {
                    throw new FormatException(); //si alguno lo es lanza una excepcion
                }
                else if (ChkComprador.IsChecked == false && ChkInquilino.IsChecked == false && ChkPropietario.IsChecked == false && ChkSuscriptor.IsChecked == false)
                {
                    throw new FormatException();
                }

                //Verifica la CI
                else if (VerificarCedulaIdentidad(TxtCedula.Text) == false)
                {
                    throw new InvalidDataException();
                }

                //Si está todo correcto instancia una persona con los datos
                Contenedor.ArrayPersonas.Add(FábricaDeObjetos.getPersona(TxtApellido.Text, Convert.ToInt32(TxtCelular.Text), Convert.ToInt32(TxtTelefono.Text),
                                                                         TxtCedula.Text, Convert.ToBoolean(ChkComprador.IsChecked), Convert.ToBoolean(ChkPropietario.IsChecked),
                                                                         Convert.ToBoolean(ChkInquilino.IsChecked), Convert.ToBoolean(ChkSuscriptor.IsChecked), TxtDireccion.Text, TxtEmail.Text, TxtNombre.Text));

                //Luego limpia los campos para un nuevo ingreso
                TxtNombre.Text           = "";
                TxtApellido.Text         = "";
                TxtCedula.Text           = "";
                TxtTelefono.Text         = "";
                TxtCelular.Text          = "";
                TxtDireccion.Text        = "";
                TxtEmail.Text            = "";
                ChkComprador.IsChecked   = false;
                ChkPropietario.IsChecked = false;
                ChkInquilino.IsChecked   = false;
                ChkSuscriptor.IsChecked  = false;

                MessageBox.Show("Cliente guardado exitosamente");
            }
            catch (FormatException)
            {
                MessageBox.Show("Alguno de los datos obligatorios no fue ingresado");
            }
            catch (InvalidDataException)
            {
                MessageBox.Show("Verifique la Cédula. Debe tener un formato como el siguiente: '12345678' (ocho números seguidos)");
            }
            catch (EntryPointNotFoundException)
            {
                MessageBox.Show("Los suscriptores deben tener mail");
            }

            try
            { //Escribe en el archivo
                File.Exists("Clientes.txt");
                File.Delete("Clientes.txt");
            }
            finally { AdministradorArchivos.EscribirClientes(@".\Clientes.txt"); }
        }
        private void BtnCoordinarVisita_Click(object sender, RoutedEventArgs e)
        {
            try
            { //Verifica la fecha
                if (Convert.ToDateTime(DateFecha.Text) < DateTime.Now.Date)
                {
                    MessageBox.Show("Verifique la fecha");
                }
                //Si está bien la fecha...
                else
                { //Verifica la ID del cliente
                    if (VerificarIDCliente(TxtIdCliente.Text) == false)
                    {
                        throw new FormatException();
                    }
                    //Si está bien la ID del cliente...
                    else
                    {//Verifica si está algún check tildado
                        if (ChkCasa.IsChecked == false && ChkApto.IsChecked == false)
                        {
                            MessageBox.Show("Debe seleccionar casa o apartamento");
                        }
                        else//Si hay alguno tildado
                        {//Si es casa verifica la ID de la casa
                            if (ChkCasa.IsChecked == true)
                            {//Si no es un id válido lanza excecpción
                                if (VerificarIDCasa(TxtIdInmueble.Text) == false)
                                {
                                    throw new InvalidDataException();
                                }
                                //Si es un id válido agrega la visita
                                else
                                {
                                    Contenedor.ArrayVisitas.Add(FábricaDeObjetos.getVisita(TxtComentarios.Text, DateFecha.Text, Convert.ToInt32(TxtIdCliente.Text), Convert.ToInt32(TxtIdInmueble.Text)));
                                    TxtIdInmueble.Clear();
                                    TxtIdCliente.Clear();
                                    TxtComentarios.Clear();

                                    MessageBox.Show("Visita guardada exitosamente");
                                }
                            }//Si es apto verifica la ID del apto
                            else if (ChkApto.IsChecked == true)
                            {
                                {//Si no es un id válido lanza excecpción
                                    if (VerificarIDCasa(TxtIdInmueble.Text) == false)
                                    {
                                        throw new InvalidDataException();
                                    }
                                    //Si es un id válido agrega la visita
                                    else
                                    {
                                        Contenedor.ArrayVisitas.Add(FábricaDeObjetos.getVisita(TxtComentarios.Text, DateFecha.Text, Convert.ToInt32(TxtIdCliente.Text), Convert.ToInt32(TxtIdInmueble.Text)));
                                        TxtIdInmueble.Clear();
                                        TxtIdCliente.Clear();
                                        TxtComentarios.Clear();

                                        MessageBox.Show("Visita guardada exitosamente");
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("No existe el cliente");
            }
            catch (InvalidDataException)
            {
                MessageBox.Show("No existe el inmueble");
            }
            catch
            {
                MessageBox.Show("Verifique los datos");
            }

            try
            {
                File.Exists("Visitas.txt");
                File.Delete("Visitas.txt");
            }
            finally { AdministradorArchivos.EscribirVisitas(@".\Visitas.txt"); }
        }