public ActionResult UtworzDzienIGodzinePracy(DzienGodzinaPracyLekarza dg, int id) { if (ModelState.IsValid && id != 0) { PrzychodniaBDEntities7 dc = new PrzychodniaBDEntities7(); dg.IdLekarza = id; dc.DzienGodzinaPracyLekarza.Add(dg); dc.SaveChanges(); return(RedirectToAction("EdytujDniIGodzinyPracy", new { id = id })); } var dniTygodnia = new List <SelectListItem>(); dniTygodnia.Add(new SelectListItem { Selected = true, Text = "Poniedziałek", Value = "1" }); dniTygodnia.Add(new SelectListItem { Text = "Wtorek", Value = "2" }); dniTygodnia.Add(new SelectListItem { Text = "Środa", Value = "3" }); dniTygodnia.Add(new SelectListItem { Text = "Czwartek", Value = "4" }); dniTygodnia.Add(new SelectListItem { Text = "Piątek", Value = "5" }); dg.ListaDniTygodnia = dniTygodnia; return(View(dg)); }
public ActionResult GenerujTerminy(Lekarz l, Nullable <int> id, string typ) { DateTime?d1 = l.DataRozpWizyt; DateTime?d2 = l.DataZakWizyt; PrzychodniaBDEntities7 dc = new PrzychodniaBDEntities7(); if (id != 0 && id != null && l.IdLekarza == 0) { l = dc.Lekarz.FirstOrDefault(ll => ll.IdLekarza == id); } if (typ != null && typ.Equals("Generuj Terminy")) { l.DataRozpWizyt = d1; l.DataZakWizyt = d2; l.Uzytkownik = l.Uzytkownik; try { dc.SaveChanges(); } catch (Exception e) { } List <int> dni_przyjec = dc.DzienGodzinaPracyLekarza.Where(dgg => dgg.IdLekarza == id).Select(a => a.DzienTygodnia).ToList(); List <DzienGodzinaPracyLekarza> dg = dc.DzienGodzinaPracyLekarza.Where(dgg => dgg.IdLekarza == id).ToList(); Rejestracja r = new Rejestracja(); r.IdLekarza = (int)id; r.CzyZajeta = "N"; while (d1.Value <= d2.Value) { if (dni_przyjec.Contains((int)d1.Value.DayOfWeek)) { DzienGodzinaPracyLekarza dgdg = dg.FirstOrDefault(dd => dd.DzienTygodnia == (int)d1.Value.DayOfWeek); string g1 = dgdg.GodzinaRozp; string g2 = dgdg.GodzinaZak; string czas = dgdg.CzasJednejWizyty; DateTime t1 = DateTime.Parse(g1, System.Globalization.CultureInfo.CurrentCulture); DateTime t2 = DateTime.Parse(g2, System.Globalization.CultureInfo.CurrentCulture); t1 = new DateTime(d1.Value.Year, d1.Value.Month, d1.Value.Day, t1.Hour, t1.Minute, t1.Second); t2 = new DateTime(d1.Value.Year, d1.Value.Month, d1.Value.Day, t2.Hour, t2.Minute, t1.Second); while (t1 < t2) { r.DataRozp = t1; r.DataZak = t1.AddMinutes(Convert.ToDouble(czas)); dc.Rejestracja.Add(r); try { dc.SaveChanges(); } catch (Exception exception) { } t1 = t1.AddMinutes(Convert.ToDouble(czas)); } } d1 = d1.Value.AddDays(1); } } return(View(l)); }