/** * refreshes progressbars */ private void RefreshBettenbelegung() { Bettenbelegung currentBelegung = UpdateManagement.GetInstance().GetCurrentBettenbelegung(); gynProgBar.Value = currentBelegung.Gynaekologie; labelGyn.Text = currentBelegung.Gynaekologie.ToString() + "/50"; RefreshColorProgBar(gynProgBar); iMProgBar.Value = currentBelegung.Innere; labelIm.Text = currentBelegung.Innere.ToString() + "/50"; RefreshColorProgBar(iMProgBar); onkProgBar.Value = currentBelegung.Onkologie; labelOnk.Text = currentBelegung.Onkologie.ToString() + "/50"; RefreshColorProgBar(onkProgBar); orthProgBar.Value = currentBelegung.Orthopaedie; labelOrth.Text = currentBelegung.Orthopaedie.ToString() + "/50"; RefreshColorProgBar(orthProgBar); paedProgBar.Value = currentBelegung.Paediatrie; labelPaed.Text = currentBelegung.Paediatrie.ToString() + "/50"; RefreshColorProgBar(paedProgBar); itsProgBar.Value = currentBelegung.Intensiv; labelIts.Text = currentBelegung.Intensiv.ToString() + "/10"; RefreshColorProgBar(itsProgBar); gesKHProgBar.Value = currentBelegung.Gesamt(); labelGes.Text = currentBelegung.Gesamt().ToString() + "/260"; RefreshColorProgBar(gesKHProgBar); }
/** * uebergibt dem Databasemanagement eine Versichertennummer, * um den dazugehoerigen Patienten zu loeschen * @return true, wenn Patient erfolgreich geloescht und false, wenn nicht erfolgreich */ public bool PatientLoeschen(string versNr) { bool request = DatabaseManagement.GetInstance().PatientLoeschen(versNr); Bettenbelegung belegung = UpdateManagement.GetInstance().GetCurrentBettenbelegung(); islast = belegung.Intensiv; geslast = belegung.Gesamt(); return(request); }
public void GetCurrentBettenbelegungTest() { UpdateManagement upM = UpdateManagement.GetInstance(); PatientenManagement pM = PatientenManagement.GetInstance(); Bettenbelegung bettenbelegung1 = upM.GetCurrentBettenbelegung(); Patient dummy = new Patient("Max", "Mustermann", "F111222333", new DateTime(1985, 01, 01), "Onkologie", "Onkologie", new DateTime(2019, 04, 01), "m"); Patient dummy2 = new Patient("Sven", "Knabe", "G456789012", new DateTime(2010, 02, 02), "Pädiatrie", "Pädiatrie", new DateTime(2019, 05, 01), "m"); Patient dummy3 = new Patient("Christina", "Meier", "H899001233", new DateTime(1997, 04, 05), "Onkologie", "Onkologie", new DateTime(2019, 09, 01), "w"); pM.PatientAnlegen(dummy, ZimmerManagement.GetInstance().suchePassendesBett(dummy)); pM.PatientAnlegen(dummy2, ZimmerManagement.GetInstance().suchePassendesBett(dummy2)); pM.PatientAnlegen(dummy3, ZimmerManagement.GetInstance().suchePassendesBett(dummy3)); Bettenbelegung bettenbelegung2 = upM.GetCurrentBettenbelegung(); Assert.IsTrue(bettenbelegung1.Gesamt() + 3 == bettenbelegung2.Gesamt()); }
public List <string> GetBettenbelegungSortiert(Bettenbelegung bettenbelegung) { List <SortBelegung> sortBelegung = new List <SortBelegung>(); sortBelegung.Add(new SortBelegung("Pädiatrie", bettenbelegung.Paediatrie)); sortBelegung.Add(new SortBelegung("Gynäkologie", bettenbelegung.Gynaekologie)); sortBelegung.Add(new SortBelegung("Innere Medizin", bettenbelegung.Innere)); sortBelegung.Add(new SortBelegung("Onkologie", bettenbelegung.Onkologie)); sortBelegung.Add(new SortBelegung("Orthopädie", bettenbelegung.Orthopaedie)); sortBelegung.Sort(); List <string> sorted = new List <string>(); for (int i = 0; i < 5; i++) { sorted.Insert(i, sortBelegung.ElementAt(i).station); } return(sorted); }
/** * uebergibt dem Databasemanagement einen neuen Patienten zum Anlegen * @return true, wenn Patient erfolgreich angelegt und false, wenn nicht erfolgreich */ public bool PatientAnlegen(Patient newPatient, String roomSuggestion) { bool request = DatabaseManagement.GetInstance().PatientAnlegen(newPatient, roomSuggestion); Bettenbelegung belegung = UpdateManagement.GetInstance().GetCurrentBettenbelegung(); if (belegung.Intensiv == 10 && islast == 9) { ZimmerManagement.GetInstance().ITSVoll(); } if (belegung.Gesamt() == 225 && geslast == 224) { ZimmerManagement.GetInstance().KHFastVoll(); } islast = belegung.Intensiv; geslast = belegung.Gesamt(); return(request); }
/** * tests if KH is full * @return 0 if not full, 1 if ITS full, 2 if everything except ITS is full, 3 if everything is full */ private int IsKHFull() { int full = 0; int currentBelegungITS = UpdateManagement.GetInstance().GetCurrentBettenbelegung().Intensiv; int currentBelegungGyn = UpdateManagement.GetInstance().GetCurrentBettenbelegung().Gynaekologie; Bettenbelegung currentBelegung = UpdateManagement.GetInstance().GetCurrentBettenbelegung(); if (currentBelegungITS >= 10) { editMeldungLdl.Text = "Die Intensivstation ist voll! Legen Sie keinen Patienten mehr in die Intensivstation!"; full = 1; } else if ((currentBelegung.Gesamt() - currentBelegungITS - currentBelegungGyn) >= 200) { editMeldungLdl.Text = "Alle Stationen außer die Intensivstation und die Gynäkologie sind voll!"; full = 4; } if (currentBelegung.Gesamt() - currentBelegungITS >= 250) { editMeldungLdl.Text = "Alle Stationen außer die Intensivstation sind voll! Sie können Patienten nur noch in die Intensivstation legen!"; full = 2; } if ((currentBelegung.Gesamt() - currentBelegungGyn) >= 210) { editMeldungLdl.Text = "Alle Stationen außer die Gynäkologie sind voll! Sie können nur noch Frauen aufnehmen!"; full = 5; } if (currentBelegung.Gesamt() >= 260) { editMeldungLdl.Text = "Das Krankenhaus ist voll! Es kann kein weiterer Patient mehr aufgenommen werden!"; full = 3; } return(full); }
public bool ITSVoll() { Bettenbelegung belegung = UpdateManagement.GetInstance().GetCurrentBettenbelegung(); if (belegung.Intensiv == 10) { try { MailMessage mail = new MailMessage(); mail.From = new MailAddress("*****@*****.**"); //Absender SmtpClient smtp = new SmtpClient(); smtp.Port = 587; smtp.EnableSsl = true; smtp.DeliveryMethod = SmtpDeliveryMethod.Network; smtp.UseDefaultCredentials = false; smtp.Credentials = new NetworkCredential("*****@*****.**", "SoftBedProject"); //Adresse und Passwort smtp.Host = "smtp.gmail.com"; mail.To.Add("*****@*****.**"); //Empfänger mail.Subject = "Die Kapazizäten unserer Intensivstation sind erschöpft!"; mail.Body = "Sehr geehrte Kolleginnen und Kollegen,\n" + "die Betten auf unserer Intensivstationen sind vollständig belegt.\n" + "Dies ist eine Anfrage, Patienten an sie zu transferieren, da keine Kapaziäten mehr auf unserer Intensivstation vorhanden sind.\n" + "Mit freundlichen Grüßen"; smtp.Send(mail); return(true); } catch (Exception ex) { Console.WriteLine("Fehler beim Senden der E-Mail\n\n{0}", ex.Message); } } return(false); }
/** * calls GetBettenbelegung() from DatabaseManagement * @return current Bettenbelegung */ public Bettenbelegung GetCurrentBettenbelegung() { Bettenbelegung bettenbelegung = DatabaseManagement.GetInstance().GetBettenbelegung(); return(bettenbelegung); }