/// <summary>Ustawia wartości aktualnych i następnych zajęć w zakładce Sprawdzanie obecności</summary> private void UstawZajecia() { try { lv_aktualne_zajecia.Clear(); Zajecia_pojedyncze zajecia = databaseController.GetZajecia_Pojedyncze(conjuring, connection, wykladowca); if (zajecia != null) { lv_aktualne_zajecia.Items.Add(zajecia.Zajecia.Przedmiot.Nazwa); lv_aktualne_zajecia.Items.Add(zajecia.Zajecia.Sala.Numer + " " + zajecia.Zajecia.Sala.Budynek); lv_aktualne_zajecia.Items.Add(zajecia.Data_zajec.ToShortTimeString()); } else { lv_aktualne_zajecia.Items.Add("Aktualnie nie ma żadnych zajęć"); } lv_nastepne_zajecia.Clear(); zajecia = databaseController.GetNextZajecia_Pojedyncze(conjuring, connection, wykladowca); if (zajecia != null) { lv_nastepne_zajecia.Items.Add(zajecia.Zajecia.Przedmiot.Nazwa); lv_nastepne_zajecia.Items.Add(zajecia.Zajecia.Sala.Numer + " " + zajecia.Zajecia.Sala.Budynek); lv_nastepne_zajecia.Items.Add(zajecia.Data_zajec.ToShortTimeString()); } else { lv_nastepne_zajecia.Items.Add("Koniec zajęć na dzisiaj!"); } } catch (Exception ex) { return; } }
/// <summary> Zapisanie listy studentów w bazie danych.</summary> private void btn_zapisz_Click(object sender, EventArgs e) { if (studentRecorder.GetListLength() > 0) { Zajecia_pojedyncze _zajecia = databaseController.GetZajecia_Pojedyncze(conjuring, connection, wykladowca); if (_zajecia == null) { MessageBox.Show("Lista studentów jest pusta.", "Uwaga", MessageBoxButtons.OK); } else { foreach (StudentInfo stud in studentRecorder.lStudInfo) { databaseController.InsertObecnosc(conjuring, connection, stud, _zajecia); } studentRecorder.lStudInfo.Clear(); CurrentIndex = -1; RefreshStudentGridViewOnce(); } } else { MessageBox.Show("Lista studentów jest pusta.", "Uwaga", MessageBoxButtons.OK); } }
public void Edytuj_Zaj_poj(TheConjuring_dbEntities1 conjuring, Zajecia_pojedyncze zajecia_Pojedyncze, DateTime NowaDataZajec, DateTime NowaGodzinaZajec, Wykladowca wyk) { try { var x = (from zp in conjuring.Zajecia_pojedyncze join z in conjuring.Zajecia on zp.Id_Zajec equals z.Id_Zajec join w in conjuring.Wykladowca on z.Id_Wykladowcy equals w.Id_Wykladowcy where zp.Id_Zajec_pojedynczych == zajecia_Pojedyncze.Id_Zajec_pojedynczych && w.Id_Wykladowcy == wyk.Id_Wykladowcy select zp).FirstOrDefault(); String rec = x.Id_Zajec_pojedynczych + " | " + x.Data_zajec; DateTime pom = new DateTime(NowaDataZajec.Year, NowaDataZajec.Month, NowaDataZajec.Day, NowaGodzinaZajec.Hour, NowaGodzinaZajec.Minute, 0, 0); x.Data_zajec = pom; String recafter = x.Id_Zajec_pojedynczych + " | " + x.Data_zajec; DialogResult dr = MessageBox.Show("Czy napewno chcesz zmienić rekord z\n" + rec + "\nna\n" + recafter + " ?", "Potwierdzenie", MessageBoxButtons.YesNo); if (dr == DialogResult.Yes) { conjuring.SaveChanges(); MessageBox.Show("Wiadomość: Zmieniono rekordu."); } else { MessageBox.Show("Wiadomość: Nie zmieniono rekordu."); } } catch (NullReferenceException ex) { MessageBox.Show("Wyjątek: Rekord nie istnieje w bazie danych."); } }
public void InsertZajeciaPojedyncze(TheConjuring_dbEntities1 conjuring, SqlConnection connection, Zajecia zajecia) { DateTime semestr_letni = new DateTime(DateTime.Now.Year, 6, 30); DateTime semestr_zimowy = new DateTime(DateTime.Now.Year + 1, 1, 30); DateTime datyZajec = (DateTime)zajecia.Czas; if (zajecia.Czas < semestr_letni) { while (datyZajec < semestr_letni) { Zajecia_pojedyncze zajecia_Pojedyncze = new Zajecia_pojedyncze { Id_Zajec = zajecia.Id_Zajec, Data_zajec = datyZajec }; connection.Open(); conjuring.Zajecia_pojedyncze.Add(zajecia_Pojedyncze); conjuring.SaveChanges(); connection.Close(); if (zajecia.Tydzien == false) { datyZajec = datyZajec.AddDays(7); } else { datyZajec = datyZajec.AddDays(14); } } } else { while (datyZajec < semestr_zimowy) { Zajecia_pojedyncze zajecia_Pojedyncze = new Zajecia_pojedyncze { Id_Zajec = zajecia.Id_Zajec, Data_zajec = datyZajec }; connection.Open(); conjuring.Zajecia_pojedyncze.Add(zajecia_Pojedyncze); conjuring.SaveChanges(); connection.Close(); if (zajecia.Tydzien == false) { datyZajec = datyZajec.AddDays(7); } else { datyZajec = datyZajec.AddDays(14); } } } }
public Zajecia_pojedyncze GetNextZajecia_Pojedyncze(TheConjuring_dbEntities1 conjuring, SqlConnection connection, Wykladowca wykladowca) { try { connection.Open(); var zajecia = conjuring.Zajecia.Where(z => z.Id_Wykladowcy == wykladowca.Id_Wykladowcy); IQueryable <Zajecia_pojedyncze> zajecia_pojedyncze = null; foreach (var z in zajecia) { zajecia_pojedyncze = conjuring.Zajecia_pojedyncze.Where(zp => zp.Id_Zajec == z.Id_Zajec); } DateTime now = DateTime.Now; DateTime shifted = now.AddMinutes(15); Zajecia_pojedyncze nastepneZajecia = zajecia_pojedyncze.First(nz => nz.Data_zajec.Day == now.Day && nz.Data_zajec > shifted); connection.Close(); return(nastepneZajecia); } catch (Exception ex) { connection.Close(); return(null); } }
public void Usun_Zaj_poj(TheConjuring_dbEntities1 conjuring, Zajecia_pojedyncze zajecia_Pojedyncze, Wykladowca wyk) { try { var x = (from zp in conjuring.Zajecia_pojedyncze where zp.Id_Zajec_pojedynczych == zajecia_Pojedyncze.Id_Zajec_pojedynczych join z in conjuring.Zajecia on zp.Id_Zajec equals z.Id_Zajec join w in conjuring.Wykladowca on z.Id_Wykladowcy equals w.Id_Wykladowcy where zp.Id_Zajec_pojedynczych == zajecia_Pojedyncze.Id_Zajec_pojedynczych && w.Id_Wykladowcy == wyk.Id_Wykladowcy select zp).FirstOrDefault(); String rec = x.Data_zajec.ToString(); DialogResult dr = MessageBox.Show("Czy napewno chcesz usunąć zajecia pojedyncze odbywajace się w podanej dacie ?\n" + rec, "Potwierdzenie", MessageBoxButtons.YesNo); if (dr == DialogResult.Yes) { int c = (from zp in conjuring.Zajecia_pojedyncze join o in conjuring.Obecnosc on zp.Id_Zajec_pojedynczych equals o.Id_Zajec_pojedynczych join z in conjuring.Zajecia on zp.Id_Zajec equals z.Id_Zajec join w in conjuring.Wykladowca on z.Id_Wykladowcy equals w.Id_Wykladowcy where zp.Id_Zajec_pojedynczych == zajecia_Pojedyncze.Id_Zajec_pojedynczych && w.Id_Wykladowcy == wyk.Id_Wykladowcy select o).Distinct().Count(); if (c == 0) { conjuring.Zajecia_pojedyncze.Remove(x); conjuring.SaveChanges(); MessageBox.Show("Usunieto rekord"); } else { MessageBox.Show("Nie można usunąć danych zajęć pojedyńczych, ze względu na to że studenci mają na nich obecność"); return; } } } catch (NullReferenceException ex) { MessageBox.Show("Wyjątek: Rekord nie istnieje w bazie danych."); } }
private void btn_szukaj_obecnosci_Click(object sender, EventArgs e) { Zajecia_pojedyncze zajecia_Pojedyncze = new Zajecia_pojedyncze(); Zajecia_pojedyncze zajecia_Zedytowane = new Zajecia_pojedyncze(); Zajecia zajecia = new Zajecia(); DateTime data_od, data_do; //Przygotowanie daty w zakresie której będzie sprawdzana obecność data_od = cb_data_od.Value; data_do = cb_data_do.Value; if (cb_przedmiot_przegladanie.Text == "") { MessageBox.Show("Wypełnij pola!"); } else { zajecia = (Zajecia)cb_przedmiot_przegladanie.SelectedItem; lista_zajec_pojedynczych = databaseController.Pojedyncz_od_do(conjuring, cb_data_od.Value, cb_data_do.Value, zajecia, wykladowca); dgv_lista_obecnosci.DataSource = FillDataTable(lista_zajec_pojedynczych); } }
private void btn_aktualizuj_Click(object sender, EventArgs e) { Zajecia_pojedyncze zajecia_Pojedyncze = lista_zajec_pojedynczych[CurrentIndex]; DateTime NowaDataZajec = Convert.ToDateTime(data_zajec.Text); DateTime NowaGodzinaZajec = Convert.ToDateTime(godzina_zajec.Text); List <Sala> sale = databaseController.ListSala(conjuring); Sala NowaSala = sale[cb_sala.SelectedIndex]; databaseController.Edytuj_Zaj_poj(conjuring, zajecia_Pojedyncze, NowaDataZajec, NowaGodzinaZajec, wykladowca); try { //Tutaj wywołanie metody: // NazwaMetody(Zajecia_pojedyncze zajecia_Pojedyncze, DateTime NowaDataZajec, DateTime NowaGodzinaZajec, Sala NowaSala); // NowaDataZajec to jest to co jest pod: obiektZajęćPojedyńczych.Data_zajec // NowaGodzinaZajec to jest to co jest pod: obiektZajęćPojedyńczych.Zajecia.Czas // NowaSala to jest to co jest pod: obiektZajęćPojedyńczych.Zajecia.Sala } catch (Exception ex) { } }
public Zajecia_pojedyncze GetZajecia_Pojedyncze(TheConjuring_dbEntities1 conjuring, SqlConnection connection, Wykladowca wykladowca) { try { connection.Open(); var zajecia = conjuring.Zajecia.Where(z => z.Id_Wykladowcy == wykladowca.Id_Wykladowcy); IQueryable <Zajecia_pojedyncze> zajecia_pojedyncze = null; foreach (var z in zajecia) { zajecia_pojedyncze = conjuring.Zajecia_pojedyncze.Where(zp => zp.Id_Zajec == z.Id_Zajec); } //var obecneZajecia = zajecia_pojedyncze.Single(oz => oz.Data_zajec >= DateTime.Now.AddMinutes(-5) && oz.Data_zajec <= DateTime.Now.AddMinutes(90)); DateTime now = DateTime.Now; DateTime shifted = now.AddMinutes(-89); DateTime shifted2 = now.AddMinutes(15); Zajecia_pojedyncze obecneZajecia = zajecia_pojedyncze.First(oz => oz.Data_zajec >= shifted && oz.Data_zajec <= shifted2); connection.Close(); return(obecneZajecia); } catch (Exception ex) { connection.Close(); return(null); } }
public void InsertObecnosc(TheConjuring_dbEntities1 conjuring, SqlConnection connection, StudentInfo studentInfo, Zajecia_pojedyncze zajecia) { connection.Open(); int studentIndex = Convert.ToInt32(studentInfo.index); var isThereStudent = conjuring.Student.Where(s => s.Indeks == studentIndex).FirstOrDefault(); connection.Close(); if (isThereStudent == null) { Student student = new Student { Indeks = Convert.ToInt32(studentInfo.index), Imie = studentInfo.firstName, Nazwisko = studentInfo.lastName, }; Obecnosc obecnosc = new Obecnosc { Indeks = Convert.ToInt32(studentInfo.index), Id_Zajec_pojedynczych = zajecia.Id_Zajec_pojedynczych, Data = zajecia.Data_zajec, Spoznienie = studentInfo.late, notatka = studentInfo.note }; connection.Open(); conjuring.Student.Add(student); conjuring.Obecnosc.Add(obecnosc); conjuring.SaveChanges(); connection.Close(); } else { Obecnosc obecnosc = new Obecnosc { Indeks = Convert.ToInt32(studentInfo.index), Id_Zajec_pojedynczych = zajecia.Id_Zajec_pojedynczych, Data = zajecia.Data_zajec, Spoznienie = studentInfo.late, notatka = studentInfo.note }; connection.Open(); conjuring.Obecnosc.Add(obecnosc); conjuring.SaveChanges(); connection.Close(); } }
private void btn_usun_Click(object sender, EventArgs e) { Zajecia_pojedyncze zajecia_Pojedyncz = lista_zajec_pojedynczych[CurrentIndex]; databaseController.Usun_Zaj_poj(conjuring, zajecia_Pojedyncz, wykladowca); }