public bool Pronosticar(PicoPlacaME picoPlacaME) { bool puedeViajar = true; try { int longitud = picoPlacaME.PicoPlaca.Placa.Length - 1; //longitud DateTime fecha = Convert.ToDateTime(picoPlacaME.PicoPlaca.Fecha); string diaSemana = ((int)(fecha.DayOfWeek)).ToString(); var listaComparar = from l in picoPlacaME.ListaValidacion where l.Placa == picoPlacaME.PicoPlaca.Placa.Substring(longitud, 1) && l.Dia == diaSemana && ((picoPlacaME.PicoPlaca.Tiempo >= Convert.ToDateTime(l.HoraInicioM) && picoPlacaME.PicoPlaca.Tiempo <= Convert.ToDateTime(l.HoraFinM)) || (picoPlacaME.PicoPlaca.Tiempo >= Convert.ToDateTime(l.HoraInicioT) && picoPlacaME.PicoPlaca.Tiempo <= Convert.ToDateTime(l.HoraFinT))) select l; if (listaComparar.Count() > 0) puedeViajar = false; } catch (Exception ex) { // MessageBox.Show("Ocurrio el siguiente error: " + ex.Message); } return puedeViajar; }
private void picoPlacaButton_Click(object sender, EventArgs e) { try { //ingrese todos los campos if (this.placTextBox.Text == string.Empty || this.fechaDateTimePicker.Value == null || this.tiempoDateTimePicker.Value == null) { MessageBox.Show("Todos los datos son obligatorios, favor ingrese todos los campos.", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { //la placa debe tener 7 digitos en Ecuador if (this.placTextBox.Text.Length < 7) { MessageBox.Show("La placa debe tener 7 digitos.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } dia = fechaDateTimePicker.Value.Day; mes = fechaDateTimePicker.Value.Month; a = fechaDateTimePicker.Value.Year; //llamo al predictor Predictor predictor = new Predictor(); PicoPlacaME picoPlacaME = new PicoPlacaME(); picoPlacaME.PicoPlaca = this.EnviarDatos(); picoPlacaME.ListaValidacion = this.Validaciones(dia, mes, a); bool puedeCircular = predictor.Pronosticar(picoPlacaME); if (!puedeCircular) MessageBox.Show("No puede viajar, tiene pico y placa.", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error); else MessageBox.Show("Puede viajar.", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception ex) { MessageBox.Show("Ocurrio el siguiente error: " + ex.Message); } }