private void btnAdd_Click(object sender, EventArgs e) { if(validFields()) { if (txtID.Text.Length > 0) //Alter { try { using (context = new Teste_OnibusContext()) { var id = int.Parse(txtID.Text); STATION station = context.STATIONS.FirstOrDefault(x => x.Station_ID == id); station.Station_Description = txtDescription.Text; context.SaveChanges(); if (loadGridViewData(context)) { lblMessage.Text = "Updated successfully!"; lblMessage.ForeColor = Color.Green; enableFields(false); } } } catch (Exception ex) { Methods.DisplayMessage(lblMessage, "It was not possible to update the data", Color.Red); } } //else // Add //{ // STATION station = new STATION(); // station = txtDescription.Text; // using (context = new Teste_OnibusContext()) // { // context.STATION.Add(station); // context.SaveChanges(); // if (loadGridViewData(context)) // { // lblMessage.Text = "Add successfully!"; // lblMessage.ForeColor = Color.Green; // enableFields(false); // } // } //} } else { Methods.DisplayMessage(lblMessage, "Check the input data", Color.Red); } resetFields(); }
public ManageRoute(Form parent) { InitializeComponent(); this.formParent = parent; using (context = new Teste_OnibusContext()) { loadGridViewData(context); } }
public ManageStations(Form parent) { InitializeComponent(); this.parentForm = parent; using (context = new Teste_OnibusContext()) { loadGridViewData(context); } }
public ManageReference(Form parent) { InitializeComponent(); this.parentForm = parent; txtMain.Enabled = false; using (context = new Teste_OnibusContext()) { loadGridViewData(context); } }
private bool loadGridViewData(Teste_OnibusContext context) { try { var list = new BindingList<ROUTE>(context.ROUTEs.ToList()); var source = new BindingSource(list, null); dgvRoutes.DataSource = source; return true; } catch (Exception ex) { return false; } }
public void loadStationCombobox() { using (Teste_OnibusContext db = new Teste_OnibusContext()) { db.Database.Connection.Open(); //DBStation db = new DBStation(new Teste_OnibusContext()); IEnumerable<STATION> enumerable = db.STATIONS.ToList(); cboStation.DataSource = enumerable; cboStation.DisplayMember = "Station_Description"; cboStation.ValueMember = "Station_ID"; txtDistance.Visible = false; lblDistance.Visible = false; lblMeters.Visible = false; } }
private void btnSearch_Click(object sender, EventArgs e) { cboBuses.DataSource = null; lblMessage.Text = String.Empty; try { int distance = 300; //if (!getDistance(ref distance)) //{ // throw new Exception("Distância inserida em formato incorreto. Favor utilizar apenas números inteiros acima de zero."); //} Teste_OnibusContext context = new Teste_OnibusContext(); DBLandmark DBlandmark = new DBLandmark(context); //consulta as coordenadas do ponto de referencia IEnumerable<Coordinates> landmarkResult = DBlandmark.SelectLike(processString(txtKeyword.Text)); if (landmarkResult.Count() > 1) { Methods.DisplayMessage(lblMessage, "More then one place has this name. Plese be more specific.", Color.Red); //Especificar melhor a busca } else if (landmarkResult.Count() == 0) { Methods.DisplayMessage(lblMessage, "No local was found with this description", Color.Red); //fillRecommendedBuses(kml, getCoordinatesReference(txtKeyword.Text)); //pesquisa no Google Maps } else { //txtResultPontoReferencia.Text = landmarkResult.ElementAt(0).LandmarkKnownAs.Known_As_Description; fillRecommendedBuses(landmarkResult.ElementAt(0).Landmark.Landmark_Coordinates, context, (STATION)cboStation.SelectedItem, distance); //ja está cadastrado no Banco de Dados Methods.DisplayMessage(lblMessage, "See your recommended buses!", Color.Green); } } catch (Exception ex) { Methods.DisplayMessage(lblMessage, ex.Message, Color.Red); } }
private void btnAdd_Click(object sender, EventArgs e) { if (validFields()) { if (txtID.Text.Length > 0) //Alter { try { using (context = new Teste_OnibusContext()) { var id = int.Parse(txtID.Text); LANDMARK_KNOWN_AS landmark = context.LANDMARK_KNOWN_AS.FirstOrDefault(x => x.Known_As_ID == id); landmark.Known_As_Description = txtKnown.Text; context.SaveChanges(); if (loadGridViewData(context)) { lblMessage.Text = "Updated successfully!"; lblMessage.ForeColor = Color.Green; enableFields(false); } } } catch (Exception ex) { Methods.DisplayMessage(lblMessage, "It was not possible to update the data", Color.Red); } } } else { Methods.DisplayMessage(lblMessage, "Check the input data", Color.Red); } resetFields(); }
public DBBus(Teste_OnibusContext dBase) { this.dBase = dBase; }
private void dgvReferences_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e) { lblMessage.Text = string.Empty; if (MessageBox.Show("When performing this operation, all related landmarks will also be deleted. Are you sure you want to continue?", "Confirmation", MessageBoxButtons.OKCancel) == System.Windows.Forms.DialogResult.OK) { try { using (context = new Teste_OnibusContext()) { var id = int.Parse(e.Row.Cells["Known_As_ID"].Value.ToString()); LANDMARK_KNOWN_AS landmark = context.LANDMARK_KNOWN_AS.FirstOrDefault(x => x.Known_As_ID == id); var parentLandmark = landmark.LANDMARK; var relatedLandmarks = parentLandmark.LANDMARK_KNOWN_AS.ToList(); foreach (var item in relatedLandmarks) { context.LANDMARK_KNOWN_AS.Remove(item); } context.LANDMARK_KNOWN_AS.Remove(landmark); context.LANDMARKs.Remove(parentLandmark); context.SaveChanges(); if (loadGridViewData(context)) { Methods.DisplayMessage(lblMessage, "Deleted successfully!", Color.Green); } } } catch (Exception ex) { Methods.DisplayMessage(lblMessage, "Error while deleting", Color.Red); } enableFields(false); } else e.Cancel = true; }
private void fillRecommendedBuses(DbGeography coordinatesReference, Teste_OnibusContext context, STATION selectedStation, int distance) { List<BUS> recommendedBus = new List<BUS>(); DBStation_Bus dbStationBus = new DBStation_Bus(context); // seleciona os ônibus que passam na estação a menos de DISTANCE metros do ponto de referência var stationsNear = dbStationBus.SelectStationsNear(distance, coordinatesReference); foreach (var station in stationsNear) { // para cada ônibus que passa no ponto de refência, verifica se ele também passa na estação em que o usuário está var busInStation = dbStationBus.SelectStationBus(station.BUS, selectedStation); foreach (var item in busInStation) { if (!recommendedBus.Contains(item.Bus)) // se passar, recomenda ele para o usuário recommendedBus.Add(item.Bus); } } cboBuses.DataSource = recommendedBus.Select(x => x.Bus_Description).ToList(); }
private bool loadGridViewData(Teste_OnibusContext context) { try { dgvReferences.DataSource = null; var list = new BindingList<LANDMARK_KNOWN_AS>(context.LANDMARK_KNOWN_AS.ToList()); var source = new BindingSource(list, null); dgvReferences.DataSource = source; dgvReferencesColumnsVisible(false); return true; } catch (Exception ex) { return false; } }
private void btnAdd_Click(object sender, EventArgs e) { if (validFields()) { if (txtID.Text.Length > 0) //Alter { try { using (context = new Teste_OnibusContext()) { var id = int.Parse(txtID.Text); BUS bus = context.BUS.FirstOrDefault(x => x.Bus_ID == id); bus.Bus_Description = txtDescription.Text; bus.Bus_Provider = txtProvider.Text; bus.Bus_Color = txtColor.Text; context.SaveChanges(); if (loadGridViewData(context)) { lblMessage.Text = "Updated successfully!"; lblMessage.ForeColor = Color.Green; enableFields(false); } } } catch (Exception ex) { Methods.DisplayMessage(lblMessage, "It was not possible to update the data", Color.Red); } } else // Add { BUS bus = new BUS(); bus.Bus_Description = txtDescription.Text; bus.Bus_Provider = txtProvider.Text; bus.Bus_Color = txtColor.Text; using (context = new Teste_OnibusContext()) { context.BUS.Add(bus); context.SaveChanges(); if (loadGridViewData(context)) { lblMessage.Text = "Add successfully!"; lblMessage.ForeColor = Color.Green; enableFields(false); } } } } else { Methods.DisplayMessage(lblMessage, "Check the input data", Color.Red); } resetFields(); }
public DBLandmarkKnownAs(Teste_OnibusContext dBase) { this.dBase = dBase; }
public DBStation_Bus(Teste_OnibusContext dBase) { this.dBase = dBase; }
private void dgvBus_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e) { lblMessage.Text = string.Empty; if (MessageBox.Show("When performing this operation, the route of this bus will also be deleted. Are you sure you want to continue?", "Confirmation", MessageBoxButtons.OKCancel) == System.Windows.Forms.DialogResult.OK) { try { using (context = new Teste_OnibusContext()) { var id = int.Parse(e.Row.Cells["ID"].Value.ToString()); BUS bus = context.BUS.FirstOrDefault(x => x.Bus_ID == id); ROUTE route = context.ROUTEs.FirstOrDefault(x => x.Bus_ID == id); List<STATION_BUSES> station_bus = context.STATION_BUSES.Where(x => x.Buses_FK == id).ToList(); foreach (var item in station_bus) { context.STATION_BUSES.Remove(item); } context.ROUTEs.Remove(route); context.BUS.Remove(bus); context.SaveChanges(); } Methods.DisplayMessage(lblMessage, "Deleted successfully!", Color.Green); } catch (Exception ex) { Methods.DisplayMessage(lblMessage, "Error while deleting", Color.Red); } enableFields(false); } else e.Cancel = true; }
private void dgvReferences_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (e.ColumnIndex == 0) { enableFields(true); int id = int.Parse(dgvReferences["Known_As_ID", e.RowIndex].Value.ToString()); using (context = new Teste_OnibusContext()) { var mainLandmark = context.LANDMARK_KNOWN_AS.FirstOrDefault(x => x.Known_As_ID == id).LANDMARK.LANDMARK_KNOWN_AS.OrderBy(x => x.Known_As_ID).First().Known_As_Description; txtMain.Text = mainLandmark; txtKnown.Text = dgvReferences["Known_As_Description", e.RowIndex].Value.ToString(); txtID.Text = id.ToString(); } lblMessage.Text = ""; } }
public DBRoute(Teste_OnibusContext dBase) { this.dBase = dBase; }
private bool loadGridViewData(Teste_OnibusContext context) { try { var list = new BindingList<STATION>(context.STATIONS.ToList()); var source = new BindingSource(list, null); dgvStations.DataSource = source; return true; } catch (Exception ex) { return false; } }
private void btnClearStationReferences_Click(object sender, EventArgs e) { if (MessageBox.Show("Are you sure you want to delete all the Landmarks?", "Confirmation", MessageBoxButtons.OKCancel) == System.Windows.Forms.DialogResult.OK) { try { using (context = new Teste_OnibusContext()) { DBLandmark db = new DBLandmark(context); db.DeleteAll(); Methods.DisplayMessage(lblMessage, "All records deleted successfully!", Color.Green); } } catch (Exception ex) { Methods.DisplayMessage(lblMessage, "It was not possible to delete the records!", Color.Red); } } }
private void btnBrowse_Click(object sender, EventArgs e) { openFileDialog1.Filter = "KML|*.kml"; lblMessage.Text = ""; if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) { using (context = new Teste_OnibusContext()) { using (var transaction = context.Database.BeginTransaction()) { try { KmlFile kml = Methods.OpenFile(openFileDialog1.FileName, lblMessage); bool done = false; if (chbBus.Checked) { done = addBusRoutes(kml); // cadastro o ônibus, a rota e faço o join com as estações em que ele passa } else if (rdbStations.Checked || rdbReferences.Checked) // cadastro as estações ou os pontos de referência { count = 0; string fileName = ""; if (rdbStations.Checked) fileName = "stations_coordinates.txt"; else if (rdbReferences.Checked) fileName = "reference_coordinates.txt"; using (StreamWriter writetext = new StreamWriter(fileName)) { if (kml.Root.Flatten().OfType<Folder>().Any()) done = parseFolder(kml, done, writetext); else done = parsePlacemark(kml.Root.Flatten().OfType<Placemark>(), done, writetext); } } transaction.Commit(); if (done) Methods.DisplayMessage(lblMessage, "Load completed successfully!", Color.Green); else Methods.DisplayMessage(lblMessage, "THe operation was not done!", Color.Red); } catch (Exception ex) { transaction.Rollback(); Methods.DisplayMessage(lblMessage, ex.Message, Color.Red); } } } } }