Пример #1
0
 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();
 }
Пример #2
0
        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();
            }
        }
Пример #3
0
        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.");
                }
            }
        }
Пример #4
0
        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");
            }
        }
Пример #5
0
        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);
        }
Пример #6
0
        /// <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();
                }
            }
        }