コード例 #1
0
        /**
         * searches bed for patient
         * @return string of bed
         */
        public string suchePassendesBett(Patient patient)
        {
            string bett = "NULL"; //DatabaseManagement.GetInstance().GetPassendesBett(patient.Station, patient);

            if (patient.Station.Equals("Pädiatrie") &&
                (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Paediatrie < 50))
            {
                //suche bett in Paediatrie
                bett = DatabaseManagement.GetInstance().GetPassendesBett("Pädiatrie", patient);
            }
            else if (patient.Station.Equals("Gynäkologie") &&
                     (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Gynaekologie < 50))
            {
                //suche bett in Gynäkologie
                bett = DatabaseManagement.GetInstance().GetPassendesBett("Gynäkologie", patient);
            }
            else if (patient.Station.Equals("Innere Medizin") &&
                     (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Innere < 50))
            {
                //suche bett in Innere Medizin
                bett = DatabaseManagement.GetInstance().GetPassendesBett("Innere Medizin", patient);
            }
            else if (patient.Station.Equals("Onkologie") &&
                     (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Onkologie < 50))
            {
                //suche bett in Onkologie
                bett = DatabaseManagement.GetInstance().GetPassendesBett("Onkologie", patient);
            }
            else if (patient.Station.Equals("Orthopädie") &&
                     (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Orthopaedie < 50))
            {
                //suche bett in Orthopädie
                bett = DatabaseManagement.GetInstance().GetPassendesBett("Orthopädie", patient);
            }
            else if (patient.Station.Equals("Intensivstation") &&
                     (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Intensiv < 10))
            {
                // suche bett in Intensivstation
                bett = DatabaseManagement.GetInstance().GetPassendesBett("Intensivstation", patient);
            }

            if (bett == "NULL")
            {
                if (patient.SollStation.Equals(""))
                {
                    patient.SollStation = patient.Station;
                    DatabaseManagement.GetInstance().PatientAendern(patient);
                }


                bett = SucheBettAufAndererStation(patient);
            }

            return(bett);
        }
コード例 #2
0
        /**
         * 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);
        }
コード例 #3
0
        public bool PatientenTransfer(string versNr, string room)
        {
            DatabaseManagement dbm = DatabaseManagement.GetInstance();
            Patient            p   = dbm.GetPatient(versNr);

            var    subs    = room.Split('-');
            string station = subs[0];

            bool result = false;

            if (p != null)
            {
                switch (station)
                {
                case "IM":
                    p.Station = "Innere Medizin";
                    break;

                case "G":
                    p.Station = "Gynäkologie";
                    break;

                case "On":
                    p.Station = "Onkologie";
                    break;

                case "Or":
                    p.Station = "Orthopädie";
                    break;

                case "P":
                    p.Station = "Pädiatrie";
                    break;

                case "Is":
                    p.Station = "Intensivstation";
                    break;

                default:
                    return(false);
                }

                p.ZimmerNr = subs[1];
                p.Bett     = subs[2];

                result = dbm.PatientAendern(p);
            }
            return(result);
        }
コード例 #4
0
        private string SucheBettAufAndererStation(Patient patient)
        {
            bool   found = false;
            int    count = 4;
            string bett  = "NULL";

            while (!found && (count >= 0))
            {
                if (UpdateManagement.GetInstance().GetCurrentBettenbelegung().Innere < 50)
                {
                    bett = DatabaseManagement.GetInstance().GetPassendesBett("Innere Medizin", patient);
                    //suche bett in innere, wenn patient nicht in eigene station kann
                }

                if (bett == "NULL")  // patient auf station mit größter freier kapaziät unterbringen
                {
                    if (patient.Geschlecht.Equals("w"))
                    {
                        bett = DatabaseManagement.GetInstance().GetPassendesBett(UpdateManagement.GetInstance().GetBettenbelegungSortiert(UpdateManagement.GetInstance().GetCurrentBettenbelegung())[count], patient);
                    }
                    else
                    {
                        if (UpdateManagement.GetInstance().GetBettenbelegungSortiert(UpdateManagement.GetInstance().GetCurrentBettenbelegung())[count].Equals("Gynäkologie"))
                        {
                            count--;
                            bett = DatabaseManagement.GetInstance().GetPassendesBett(UpdateManagement.GetInstance().GetBettenbelegungSortiert(UpdateManagement.GetInstance().GetCurrentBettenbelegung())[count], patient);
                        }
                        else
                        {
                            bett = DatabaseManagement.GetInstance().GetPassendesBett(UpdateManagement.GetInstance().GetBettenbelegungSortiert(UpdateManagement.GetInstance().GetCurrentBettenbelegung())[count], patient);
                        }
                    }
                }

                if (bett != "NULL")
                {
                    found = true;
                }

                count--;
            }

            return(bett);
        }
コード例 #5
0
        /**
         * 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);
        }
コード例 #6
0
 public void DeleteMemberTransferliste(string vorname, string nachname)
 {
     DatabaseManagement.GetInstance().DeleteMemberTransferliste(vorname, nachname);
 }
コード例 #7
0
ファイル: UpdateManagement.cs プロジェクト: Janessus/SoftBed
        /**
         * calls GetVerlegungsliste() from DatabaseManagement
         * @return current Verlegungsliste
         */
        public Verlegungsliste GetCurrentVerlegungsliste()
        {
            Verlegungsliste verlegungsliste = DatabaseManagement.GetInstance().GetVerlegungsliste();

            return(verlegungsliste);
        }
コード例 #8
0
ファイル: UpdateManagement.cs プロジェクト: Janessus/SoftBed
        /**
         * calls GetBettenbelegung() from DatabaseManagement
         * @return current Bettenbelegung
         */
        public Bettenbelegung GetCurrentBettenbelegung()
        {
            Bettenbelegung bettenbelegung = DatabaseManagement.GetInstance().GetBettenbelegung();

            return(bettenbelegung);
        }
コード例 #9
0
ファイル: UpdateManagement.cs プロジェクト: Janessus/SoftBed
        /**
         * calls GetUser(userName) from DatabaseManagement
         * @return User
         */
        public User GetUser(string userName)
        {
            User user = DatabaseManagement.GetInstance().GetUser(userName);

            return(user);
        }
コード例 #10
0
ファイル: UpdateManagement.cs プロジェクト: Janessus/SoftBed
        /**
         * calls GetPatient(versNr) from DatabaseManagement
         * @return Patient
         */
        public Patient GetPatient(string versNr)
        {
            Patient patient = DatabaseManagement.GetInstance().GetPatient(versNr);

            return(patient);
        }
コード例 #11
0
        /**
         * uebergibt dem Databasemanagement einen Patienten  mit geaendert Attributen
         * @return true, wenn Patient erfolgreich geaendert und false, wenn nicht erfolgreich
         */
        public bool PatientAendern(Patient newPatient)
        {
            bool request = DatabaseManagement.GetInstance().PatientAendern(newPatient);

            return(request);
        }