private void btnModificarServicio_Click(object sender, RoutedEventArgs e) { if (cmbOrigen.SelectedValue.ToString() != cmbDestino.SelectedValue.ToString()) { DateTime fecha = Convert.ToDateTime(dateFecha.SelectedDate); int hora = Convert.ToInt32(((ComboBoxItem)cmbHora.SelectedItem).Content); int min = Convert.ToInt32(cmbMinutos.SelectedValue.ToString()); TimeSpan ts = new TimeSpan(hora, min, 0); fecha = fecha.Date + ts; if (_servicioRepositorio.controlFechaHoraServicioExistente(fecha, _autobusRepositorio.buscarAutobusMatricula(cmbAtobuses.SelectedValue.ToString()).aut_codigo, servicioCodigo)) { Servicio oServicio = new Servicio(); oServicio.ser_codigo = servicioCodigo; oServicio.aut_codigo = _autobusRepositorio.buscarAutobusMatricula(cmbAtobuses.SelectedValue.ToString()).aut_codigo; oServicio.ser_estado = Convert.ToString(((ComboBoxItem)cmbEstado.SelectedItem).Content); oServicio.ter_codigo_origen = _terminalRepositorio.buscarTerminalNombre(Convert.ToString(cmbOrigen.SelectedValue.ToString())).ter_codigo; oServicio.ter_codigo_destino = _terminalRepositorio.buscarTerminalNombre(Convert.ToString(cmbDestino.SelectedValue.ToString())).ter_codigo; oServicio.ser_fecha = fecha; _servicioRepositorio.ModificarServicio(oServicio); if (oServicio.ser_estado.Equals("Cancelado")) { _pasajeRepositorio.removerPasajes(oServicio.ser_codigo); MessageBox.Show("Servicio Cancelado. Todos los pasajes fueron eliminados"); } Servicios.ItemsSource = _classTrabajarServicioFormat.listarServicios(); btnModificarServicio.IsEnabled = false; btnGuardarUsuario.IsEnabled = true; } else { MessageBox.Show("El servicio no puede tener la misma fecha, hora y choche que otro Servicio 'Abierto'"); } } else { MessageBox.Show("El Origen y Destino no pueden ser los mismos"); } }