private async void Form1_FormClosing(object sender, FormClosingEventArgs e) { //Zapisuję ostatni stan. if (ObecnyStan != null) { if (ObecnyStan.NazwaZdarzenia == "Awaria") { Awaria nowaAwaria = new Awaria { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna }; db.Awaria.Add(nowaAwaria); await db.SaveChangesAsync(); } else if (ObecnyStan.NazwaZdarzenia == "Przezbrojenie") { Przezbrojenie nowePrzezbrojenie = new Przezbrojenie { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna }; db.Przezbrojenia.Add(nowePrzezbrojenie); await db.SaveChangesAsync(); } else { Stan stanDoZapisania = new Stan { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna }; db.Stan.Add(stanDoZapisania); await db.SaveChangesAsync(); } } //zamykam połączenie arduino this.closeArduinoConnection(); }
private void btnSave_Click(object sender, EventArgs e) { if (sprawdzFormularz()) { using (var db = new LicznikDataModel()) { Awaria aw = db.Awaria.Where(a => a.StanId == WybranaAwaria.StanId).FirstOrDefault(); aw.Maszyna = db.Maszyna.Where(m => m.MaszynaId == (int)cmbMaszyny.SelectedValue).FirstOrDefault(); aw.OpisAwarii = txtOpis.Text; aw.TypZdarzenia = db.TypZdarzenia.Where(t => t.TypZdarzeniaId == WybranaAwaria.TypZdarzenia.TypZdarzeniaId).FirstOrDefault(); db.SaveChanges(); } this.DialogResult = DialogResult.OK; this.Close(); } }
private async void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { // po kliknięciu wiersza otwieramy okno edycji int stanID = (int)dgvListaZdarzen.Rows[e.RowIndex].Cells[stanIdDataGridViewColumn.Name].Value; //MessageBox.Show(stanID.ToString()); using (LicznikDataModel db = new LicznikDataModel()) { //ustalam typ zdarzenia var typ = (from s in db.Stan where s.StanId == stanID select s).FirstOrDefault(); if (typ.TypZdarzenia.NazwaZdarzenia == "Awaria") { Awaria aw = (Awaria)typ; OpisAwariiForm opisAwarii = new OpisAwariiForm { WybranaAwaria = aw }; opisAwarii.ShowDialog(); } else if (typ.TypZdarzenia.NazwaZdarzenia == "Przezbrojenie") { //Przezbrojenie przezbr = (Przezbrojenie)typ; //DanePrzezbrojeniaForm danePrzezbrojenia = new DanePrzezbrojeniaForm { WybranePrzezbrojenie = przezbr }; //DialogResult wynik = danePrzezbrojenia.ShowDialog(); //if (wynik == DialogResult.OK) //{ // przezbr = danePrzezbrojenia.WybranePrzezbrojenie; // db.Entry(przezbr).State = System.Data.Entity.EntityState.Modified; // await db.SaveChangesAsync(); //} } else { MessageBox.Show("Z tym typem awarii nie jest związane żadne działanie."); } } }
private void btnZapisz_Click(object sender, EventArgs e) { long fileName = DateTime.Now.ToBinary(); string myFullPath = myPath + "\\" + fileName.ToString() + ".csv"; if (dtpStartDate.Value.Day != dtpEndDate.Value.Day) { using (var db = new LicznikDataModel()) { List <Stan> raport = db.Stan.Where(r => r.GodzinaUruchomienia > dtpStartDate.Value && r.GodzinaUruchomienia < dtpEndDate.Value).ToList(); data.Append("Linia produkcyjna,"); data.Append("Typ Zdarzenia,"); data.Append("Godzina uruchomienia,"); data.Append("Czas trwania,"); data.Append("Brygada,"); data.Append("Opis Awarii,"); data.Append("Maszyna,"); data.Append("Opis przezbrojenia,"); data.Append("\n"); foreach (var item in raport) { data.Append(item.LiniaProdukcyjna); data.Append(","); data.Append(item.TypZdarzenia.NazwaZdarzenia); data.Append(","); data.Append(item.GodzinaUruchomienia.ToString()); data.Append(","); data.Append(item.CzasTrwania.ToString()); data.Append(","); data.Append(item.Brygada.ToString()); data.Append(","); if (item.TypZdarzenia.NazwaZdarzenia == "Awaria") { Awaria aw = (Awaria)item; data.Append(aw.OpisAwarii); data.Append(","); if (aw.Maszyna != null) { data.Append(aw.Maszyna.NazwaMaszyny); } else { data.Append("Nie określono miejsca awarii"); } data.Append(","); } else if (item.TypZdarzenia.NazwaZdarzenia == "Przezbrojenie") { Przezbrojenie pr = (Przezbrojenie)item; data.Append(pr.OpisPrzezbrojenia); data.Append(","); } data.Append("\n"); } using (StreamWriter outputFile = new StreamWriter(myFullPath, false, Encoding.GetEncoding("Windows-1250"))) { outputFile.Write(data); } MessageBox.Show("Dane zostały zapisane w pliku \n" + myFullPath, "Dane zostały zapisane."); this.Close(); } } else { MessageBox.Show("Wybrałeś takie same daty!", "Uwaga"); } }
public StringBuilder getCSVData() { StringBuilder data = new StringBuilder(); data.Append("Linia produkcyjna;"); data.Append("Typ Zdarzenia;"); data.Append("Godzina uruchomienia;"); data.Append("Czas trwania;"); data.Append("Brygada;"); data.Append("Opis Awarii;"); data.Append("Maszyna;"); data.Append("Opis przezbrojenia;"); data.Append("\n"); foreach (var item in Raport) { data.Append(item.LiniaProdukcyjna); data.Append(";"); data.Append(item.TypZdarzenia.NazwaZdarzenia); data.Append(";"); data.Append(item.GodzinaUruchomienia.ToString()); data.Append(";"); data.Append(item.CzasTrwania.ToString()); data.Append(";"); data.Append(item.Brygada.ToString()); data.Append(";"); if (item.TypZdarzenia.NazwaZdarzenia == "Awaria") { Awaria aw = (Awaria)item; if (aw.OpisAwarii != null) { data.Append(aw.OpisAwarii.Replace("\n", " ").Replace("\r", string.Empty)); } else { data.Append("Brak opisu awarii."); } data.Append(";"); if (aw.Maszyna != null) { data.Append(aw.Maszyna.NazwaMaszyny); } else { data.Append("Nie określono miejsca awarii"); } data.Append(";"); } else if (item.TypZdarzenia.NazwaZdarzenia == "Przezbrojenie") { Przezbrojenie pr = (Przezbrojenie)item; data.Append(";;"); if (pr.OpisPrzezbrojenia != null) { data.Append(pr.OpisPrzezbrojenia.Replace("\n", " ").Replace("\r", string.Empty)); } else { data.Append("Brak opisu przezbrojenia."); } data.Append(";"); } data.Append("\n"); } return(data); }
/// <summary> /// Ustawia stan obecny maszyny /// </summary> /// <param name="stan">Nowy stan maszyny</param> private async void UstawStan(TypZdarzenia nowyStan) { //Zapisz obecny stan switch (nowyStan.NazwaZdarzenia) { case "Przezbrojenie": DanePrzezbrojeniaForm nowePrzezbrojenieForm = new DanePrzezbrojeniaForm(); DialogResult wynik = nowePrzezbrojenieForm.ShowDialog(); if (wynik == DialogResult.OK) { this.ObecnieProdukowanyProdukt = nowePrzezbrojenieForm.ObecnyProdukt; this.ObecnieProdukowanyKolor = nowePrzezbrojenieForm.ObecnyKolor; Przezbrojenie nowePrzezbrojenie = new Przezbrojenie { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna, Produkt = this.ObecnieProdukowanyProdukt, Kolor = this.ObecnieProdukowanyKolor }; db.Przezbrojenia.Add(nowePrzezbrojenie); await db.SaveChangesAsync(); ObecnyStan = nowyStan; } break; case "Awaria": break; default: break; } if (ObecnyStan != null) { if (ObecnyStan.NazwaZdarzenia == "Nieokreślony" && nowyStan.NazwaZdarzenia != "Produkcja") { // jeżeli ObecnyStan to "Nieokreślony" a nowyStan to nie "Produkcja" zmieniamy Obecny stan bez zapisywania w bazie. ObecnyStan = nowyStan; UpdateStateLabels(ObecnyStan.NazwaZdarzenia, CzasUruchomienia, CzasTrwania); cmbStan.SelectedIndex = -1; btnZmienStan.Enabled = false; } else if (ObecnyStan.NazwaZdarzenia == "Awaria") { // typ ObecnyStan do zapisania to awaria zapisujemy obiekt awarii Awaria nowaAwaria = new Awaria { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna, Produkt = this.ObecnieProdukowanyProdukt, Kolor = this.ObecnieProdukowanyKolor }; // ustawiam nowy stan obecny DateTime godz = DateTime.Now; ObecnyStan = nowyStan; CzasUruchomienia = DateTime.Now; UpdateStateLabels(ObecnyStan.NazwaZdarzenia, CzasUruchomienia, CzasTrwania); // zerowanie stanu formularza CzasTrwania = 0; cmbStan.SelectedIndex = -1; btnZmienStan.Enabled = false; db.Awaria.Add(nowaAwaria); await db.SaveChangesAsync(); PopulateDgvListaZdarzen(); } else if (ObecnyStan.NazwaZdarzenia == "Przezbrojenie") { // typ ObecnyStan to Przezbrojenie zapisujemy obiekt przezbrojenie Przezbrojenie nowePrzezbrojenie = new Przezbrojenie { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna, Produkt = this.ObecnieProdukowanyProdukt, Kolor = this.ObecnieProdukowanyKolor }; // ustawiam nowy stan obecny DateTime godz = DateTime.Now; ObecnyStan = nowyStan; CzasUruchomienia = DateTime.Now; UpdateStateLabels(ObecnyStan.NazwaZdarzenia, CzasUruchomienia, CzasTrwania); // zerowanie stanu formularza CzasTrwania = 0; cmbStan.SelectedIndex = -1; btnZmienStan.Enabled = false; db.Przezbrojenia.Add(nowePrzezbrojenie); await db.SaveChangesAsync(); PopulateDgvListaZdarzen(); } else { // zapisujemy stan obecny Stan stanDoZapisania = new Stan { GodzinaUruchomienia = CzasUruchomienia, CzasTrwania = this.CzasTrwania, TypZdarzenia = ObecnyStan, Brygada = this.Brygada, LiniaProdukcyjna = this.LiniaProdukcyjna }; // ustawiam nowy stan obecny ObecnyStan = nowyStan; CzasUruchomienia = DateTime.Now; UpdateStateLabels(ObecnyStan.NazwaZdarzenia, CzasUruchomienia, CzasTrwania); // zerowanie stanu formularza CzasTrwania = 0; cmbStan.SelectedIndex = -1; btnZmienStan.Enabled = false; db.Stan.Add(stanDoZapisania); await db.SaveChangesAsync(); PopulateDgvListaZdarzen(); } } }