public bool actualizar(pago miPago)
 {
     try
     {
         AdminData ad = new AdminData();
         ad.modificarVenta(this, miPago);
         return true;
     }
     catch
     {
         return false;
     }
 }
        private void btnIngresarPago_Click(object sender, RoutedEventArgs e)
        {
            if (auxiliar.esNúmero(txtPago.Text) && txtPago.Text != "0" && cmbCódigoCliente.Items.Contains(cmbCódigoCliente.Text))
            {
                //if (!swModificarCliente) //sólo si es ingresar un cliente nuevo y no modificar uno ya existente
                //{
                    pago unPago = new pago();
                    if (dateFechaPago.SelectedDate != null)
                    {
                        DateTime fecha = (DateTime)dateFechaPago.SelectedDate;
                        unPago.Fecha = fecha.ToShortDateString();
                    }
                    else
                        unPago.Fecha = DateTime.Now.ToShortDateString();
                    unPago.IdCliente = int.Parse(cmbCódigoCliente.Text);
                    unPago.IdVenta = 0;
                    unPago.Monto = double.Parse(txtPago.Text);

                    unPago.guardarPago();
                //}
                //else
                //{
                //    pago pagoOriginal = (pago)dataGridPagos.SelectedItem;
                //    pago unPago = new pago();
                //    if (dateFechaPago.SelectedDate != null)
                //        unPago.Fecha = (DateTime)dateFechaPago.SelectedDate;
                //    else
                //        unPago.Fecha = DateTime.Now;
                //    unPago.IdCliente = int.Parse(cmbCódigoCliente.Text);
                //    unPago.IdVenta = 0;

                //    unPago.Monto = double.Parse(txtPago.Text);

                //    //unPago.actualizar();
                //    swModificarCliente = false;
                //}

                if (misPagos != null) misPagos.Clear();
                iniciarCampos();
            }
            else
            {
                MessageBox.Show("No se puede guardar el Pago porque o no ha escrito un cliente existente, o no ha escrito un monto en el pago.", "Atenti!");
            }
        }
        //ingresar clientes
        private void btnIngresarCliente_Click(object sender, RoutedEventArgs e)
        {
            //se cargan los datos del cliente menos tel y mails
            cliente cli = new cliente();
            cli.Nombre = txtNombre.Text;
            cli.Apellido = txtApellido.Text;

            if (!swModificarCliente) //sólo si es ingresar un cliente nuevo y no modificar uno ya existente
            {
                //se comprueba que no haya otro cliente con el mismo nombre
                foreach (cliente clienteGuardado in misClientes)
                {
                    if (clienteGuardado.Nombre.ToLower() == cli.Nombre.ToLower() && clienteGuardado.Apellido.ToLower() == cli.Apellido.ToLower())
                    {
                        MessageBox.Show("Ya hay un cliente ingresado con el nombre " + cli.Nombre + " " + cli.Apellido + ". Por favor ingrese otro nombre distinto.", "Atención");
                        return;
                    }
                }
            }

            cli.Dirección = txtDirección.Text;
            cli.Peluquería = txtPeluquería.Text;
            cli.Localidad = txtLocalidad.Text;
            DateTime fecha = DateTime.Now;
            try
            { fecha = DateTime.Parse(txtFechaNacimiento.Text); } //si hay una fecha válida
            catch
            { MessageBox.Show("No ha escribo bien la fecha de nacimiento. Hay que escribirla dd/mm/aaaa. La d es día, m es mes, y a es año. O sea que son dos números para el día, dos para el mes, y cuatro para el año. Por ejemplo 02/04/1980.", "Error en la fecha"); return; }

            cli.fecha_nacimiento = fecha.ToShortDateString();

            //se guardan los teléfonos
            if (txtTeléfono.Text != "") cli.Teléfonos.Add(new Teléfono(txtTeléfono.Text)); //lo que está en el txt
            foreach (string str in listBoxTeléfonos.Items) //lo que está en la lista
            {
                cli.Teléfonos.Add(new Teléfono(str));
            }
            //se guardan los mails
            if (txtMail.Text != "") cli.Emails.Add(new Mail(txtMail.Text)); //lo que está en el txt mails
            foreach (string str in listBoxMail.Items) //lo que está en la lista
            {
                cli.Emails.Add(new Mail(str));
            }

            pago unPago = new pago();

            if (!swModificarCliente)
            {
                cli.guardar();
                //se muestra el agregado en el grid
                misClientes.Add(cli);
            }
            else
            {
                cliente unCliente = (cliente)dataGridClientes.SelectedItem;
                cli.Id = unCliente.Id;
                cli.actualizar();
                swModificarCliente = false;
                misClientes.Clear();
                misClientes = new ObservableCollection<cliente>(cliente.cargarTodos());
                dataGridClientes.DataContext = misClientes;
            }

            iniciarCampos();
            tabItem2.Focus();
        }
 public bool guardar(pago miPago)
 {
     try
     {
         AdminData ad = new AdminData();
         ad.guardarVenta(this, miPago);
         return true;
     }
     catch
     {
         return false;
     }
 }
 private void lblEliminarPago_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
     try
     {
         if (dataGridPagos.SelectedItem != null)
         {
             if (MessageBox.Show("¿Está seguro que desea eliminar el pago seleccionado?", "Atención", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
             {
                 pagoParaMostrar unPagoParaMostrar = (pagoParaMostrar)dataGridPagos.SelectedItem;
                 pago unPago = new pago();
                 unPago.Id = unPagoParaMostrar.id;
                 unPago.IdCliente = unPagoParaMostrar.idCliente;
                 unPago.IdVenta = unPagoParaMostrar.idVenta;
                 unPago.Monto = unPagoParaMostrar.monto;
                 unPago.Fecha = unPagoParaMostrar.fecha;
                 unPago.eliminar();
                 misPagos.Remove(unPagoParaMostrar);
             }
         }
         else
         {
             MessageBox.Show("No ha seleccionado ningún pago. Por favor seleccione uno de la lista superior", "Atenti!");
         }
     }
     catch
     {
     }
 }