// Este metodo se debe de llamar en el panel de Ubicación ya que es el ultimos paso para registrarse /// <summary> /// Guarda el Usuario en la base de datos /// </summary> public void ActualizarRepartidor() { // información general string correo = txtCorreo.Text; string contrasenna = txtContrasenna.Text; string nombre = txtNombre.Text; string apellidos = txtApellidos.Text; string telefono = txtTelefono.Text; string cedula = txtCedula.Text; // Tarjeta string numeroTarjeta = txtTarjeta.Text; string cvv = txtCVV.Text; DateTime fechaV = fechaVencimiento.Value; TipoTarjeta tipoTarjeta = (rbVisa.Checked) ? TipoTarjeta.VISA : TipoTarjeta.MASTERCARD; // Información transporte string marca = "", modelo = "", color = "", placa = ""; bool alDia = false; TipoBicicleta tipoBicicleta = TipoBicicleta.BMX; TipoTransporte tipoTransporte = (rbBicicleta.Checked) ? TipoTransporte.Bicicleta : (rbCarro.Checked) ? TipoTransporte.Automovil : TipoTransporte.Motocicleta; switch (tipoTransporte) { case TipoTransporte.Bicicleta: marca = txtMarca.Text; modelo = txtModelo.Text; color = txtColor.Text; tipoBicicleta = (TipoBicicleta)cbTipoBici.SelectedItem; break; case TipoTransporte.Automovil: case TipoTransporte.Motocicleta: marca = txtMarca.Text; modelo = txtModelo.Text; color = txtColor.Text; placa = txtPlaca.Text; alDia = cbAldia.Checked; break; } // Ubicación double lat = Convert.ToDouble(txtLat.Text.Replace('.', ',')); double lng = Convert.ToDouble(txtLng.Text.Replace('.', ',')); string direccion = txtDireccion.Text; if (PagoFactura.ValidarTarjeta(numeroTarjeta) && Correo1.ValidarCorreo(correo)) { // Instancia a las clases logicas de la CAPA_LN UsuarioLN usuarioLN = new UsuarioLN(); TarjetaLN tarjetaLN = new TarjetaLN(); DireccionLN direccionLN = new DireccionLN(); TransporteLN transporteLN = new TransporteLN(); // Actualizar Datos _Repartidor._Direccion.latitud = lat.ToString().Replace(',', '.'); _Repartidor._Direccion.longitud = lng.ToString().Replace(',', '.'); _Repartidor._Direccion.Descripcion = direccion; _Repartidor._Tarjeta.cvv = cvv; _Repartidor._Tarjeta.numero = numeroTarjeta; _Repartidor._Tarjeta.FechaVencimiento = fechaV; _Repartidor._Tarjeta._TipoTarjeta = tipoTarjeta; _Repartidor.Cedula = cedula; _Repartidor.Nombre = nombre; _Repartidor.Apellidos = apellidos; _Repartidor.NumeroTelefono = telefono; _Repartidor.Correo = correo; _Repartidor.Contrasenna = contrasenna; // Actualizar la Direccion direccionLN.ActualizarDireccion(_Repartidor._Direccion); // Actualizar la Tarjeta tarjetaLN.ActualizarTarjeta(_Repartidor._Tarjeta); // Actualizar transporte if (rbBicicleta.Checked) { // Asignar propiedades (_Repartidor._Transporte as Bicicleta).Marca = marca; (_Repartidor._Transporte as Bicicleta).Color = color; (_Repartidor._Transporte as Bicicleta).Modelo = modelo; (_Repartidor._Transporte as Bicicleta)._TipoBicicleta = tipoBicicleta; transporteLN.ActualizarBicicleta(_Repartidor._Transporte as Bicicleta); } if (rbCarro.Checked) { (_Repartidor._Transporte as Automovil).Marca = marca; (_Repartidor._Transporte as Automovil).Color = color; (_Repartidor._Transporte as Automovil).Modelo = modelo; (_Repartidor._Transporte as Automovil).Placa = placa; (_Repartidor._Transporte as Automovil).AlDia = alDia; transporteLN.ActualizarAuto(_Repartidor._Transporte as Automovil); } if (rbMotocicleta.Checked) { (_Repartidor._Transporte as Motocicleta).Marca = marca; (_Repartidor._Transporte as Motocicleta).Color = color; (_Repartidor._Transporte as Motocicleta).Modelo = modelo; (_Repartidor._Transporte as Motocicleta).Placa = placa; (_Repartidor._Transporte as Motocicleta).AlDia = alDia; transporteLN.ActualizarMoto(_Repartidor._Transporte as Motocicleta); } // Actualizar el Negocio usuarioLN.ActualizarRepartidor(_Repartidor); } else { MessageBox.Show(this, "La tarjeta de credito o el correo es invalido", "Problema encontrado", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); throw new FormatException(); } }