public List <HospitalBed> ReadEmptyBedsInRoom(HospitalBed roomId)
        {
            var query = string.Format("SELECT * FROM HospitalBedRepository WHERE Campus='{0}' AND FloorNo='{1}' AND Wing='{2}' AND Room='{3}' AND PatientId IS NULL",
                                      roomId.Campus, roomId.Floor, roomId.Wing, roomId.RoomNumber);

            return(bedReader.FetchBedNumbers(conString, query));
        }
Esempio n. 2
0
        public async Task PutPatient(Patient patient, [AllowNull, MaybeNull] HospitalBed bed = null)
        {
            var parameters = new DialogParameters();

            parameters.Add("patient", patient);
            parameters.Add("units", State.Value.AvailableUnits);
            parameters.Add("preSelectedBed", bed);

            var dialog = Dialog.Show <PainelDialogs.PutPatientOnBed>("Put Patient", parameters, new DialogOptions()
            {
                MaxWidth = MaxWidth.Medium, FullWidth = true
            });
            var result = await dialog.Result;

            if (!result.Cancelled)
            {
                var data = ((Guid PatientId, int CareUnitId, int HospitalBedId))result.Data;

                var ok = await PatientService.PutPatientOnBed(data.PatientId, data.HospitalBedId, data.CareUnitId);

                if (!ok)
                {
                    Snackbar.Add($"Could not put {patient?.Name} on bed {bed?.HospitalBedId}", Severity.Error);
                }
            }
        }
Esempio n. 3
0
 private void buttonReturnBed_Click(object sender, EventArgs e)
 {
     if (dataViewBed.SelectedRows.Count > 0)
     {
         int bedID = Convert.ToInt16(dataViewBed.SelectedRows[0].Cells[0].Value);
         int state = Convert.ToInt16(dataViewBed.SelectedRows[0].Cells[2].Value);
         if (state == 1)
         {
             DialogResult dialogResult = MessageBox.Show("Xác nhận trả giường", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
             if (dialogResult == DialogResult.Yes)
             {
                 HospitalBed updateHB = HospitalBed.GetHospitalBed(bedID);
                 updateHB.Patient = 0;
                 updateHB.State   = 0;
                 if (HospitalBed.UpdateHospitalBed(updateHB) > 0)
                 {
                     MessageBox.Show("Trả giường thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 }
             }
         }
         else
         {
             MessageBox.Show("Giường bệnh trống", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
         refreshDataViewBed();
     }
 }
Esempio n. 4
0
        protected async Task DischargePatient(HospitalBed bed)
        {
            var parameters = new DialogParameters();
            var patient    = bed.Patient;

            parameters.Add("patient", patient);
            parameters.Add("units", State.Value.AvailableUnits);
            parameters.Add("preSelectedBed", bed);

            var dialog = Dialog.Show <PainelDialogs.DischargePatient>($"Discharge Patient: {patient.Name}", parameters, new DialogOptions()
            {
                MaxWidth = MaxWidth.Medium, FullWidth = true
            });
            var result = await dialog.Result;

            if (!result.Cancelled)
            {
                var data = ((Guid PatientId, int CareUnitId, int HospitalBedId))result.Data;

                var ok = await PatientService.DischargePatientFromBed(
                    patientId : data.PatientId,
                    hospitalBedId : data.HospitalBedId,
                    careUnitId : data.CareUnitId);

                if (!ok)
                {
                    Snackbar.Add($"Could not discharge {patient?.Name} on bed {bed?.HospitalBedId}", Severity.Error);
                }
            }
        }
        public void Given_Valid_Arguments_When_Update_Invoked_Then_True_Asserted()
        {
            HospitalBedRegistration();
            PatientRegistration();
            HospitalBed beds = new HospitalBed
            {
                BedNumber  = 10,
                Campus     = "PIC",
                Floor      = "2F",
                RoomNumber = "201",
                Wing       = "2A",
                Occupancy  = "111"
            };
            string json = JsonConvert.SerializeObject(beds);

            json = "{\"bed\":" + json + "}";
            client.Headers[HttpRequestHeader.ContentType] = "application/json";
            var response = client.UploadString(url + "UpdateBed", "PUT", json);

            Assert.AreEqual("{}", response);


            json = CreateHospitalBed();
            client.Headers[HttpRequestHeader.ContentType] = "application/json";
            response = client.UploadString(url + "UpdateBed", "PUT", json);

            DeleteHospitalBeds();

            var patientId = "{\"patientId\":\"111\"}";

            client.Headers[HttpRequestHeader.ContentType] = "application/json";
            client.UploadString("http://localhost:51625/PatientRegistrationService.svc/PatientRegistrationService/" + "DeletePatient", "DELETE", patientId);
        }
        public void Given_Invalid_Critical_Alert_Bed_Subscription_When_AlertUsers_Invoked_Then_Invalid_Result_Asserted()
        {
            Callbacks   callbacks = new Callbacks();
            HospitalBed bed       = new HospitalBed
            {
                BedNumber = 10, Campus = "PIC", Floor = "2", Occupancy = "Pat111", Wing = "2A", RoomNumber = "12"
            };
            AlertMonitorList subList = AlertMonitorList.Instance;

            subList.Subscribe(bed.ToString(), callbacks.CallbackFunc);
            PatientAlert alerts = new PatientAlert
            {
                CriticalAlerts = new List <DeviceAlert>(),
                MuteAlert      = false,
                PatientId      = "Pat111",
                WarningAlerts  = new List <DeviceAlert>()
            };

            alerts.CriticalAlerts.Add(new DeviceAlert
            {
                DeviceId = "Dev111",
                Message  = "Critical",
                Value    = 56
            });
            alertManager.AlertUsers(alerts);
            Assert.AreNotEqual("TestPassed", alerts.PatientId);
            subList.Unsubscribe(bed.ToString());
        }
        public List <HospitalBed> ReadEmptyBedsInFloor(HospitalBed floorId)
        {
            var query = string.Format("SELECT * FROM HospitalBedRepository WHERE Campus='{0}' AND FloorNo='{1}' AND PatientId IS NULL",
                                      floorId.Campus, floorId.Floor);

            return(bedReader.FetchBedNumbers(conString, query));
        }
Esempio n. 8
0
        //Refresh datagridview in hospital bed tab
        private void refreshDataViewBed()
        {
            try
            {
                // Get hospital bed's datatable
                DataTable bedTable = HospitalBed.GetListHospitalBed();

                // Add Vietnamese column's name
                bedTable.Columns.Add("Mã giường bệnh", typeof(string), "[BEDID]");
                bedTable.Columns.Add("Mã bệnh nhân", typeof(string), "[PATIENT]");
                bedTable.Columns.Add("Trạng thái", typeof(string), "IIF([STATE] = 0, 'Trống', 'Có người')");

                // Set data source to dataview for searching
                dataViewBed.DataSource = bedTable.DefaultView;

                // Hide English columns'name
                for (int i = 0; i < 3; i++)
                {
                    dataViewBed.Columns[i].Visible = false;
                }
            }
            catch
            {
                MessageBox.Show("Lỗi dữ liệu", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public List <HospitalBed> ReadOccupiedBedsInWing(HospitalBed wingId)
        {
            var query = string.Format("SELECT * FROM HospitalBedRepository WHERE Campus='{0}' AND FloorNo='{1}' AND Wing='{2}' AND PatientId IS NOT NULL",
                                      wingId.Campus, wingId.Floor, wingId.Wing);

            return(bedReader.FetchBedNumbers(conString, query));
        }
        public bool Exists(HospitalBed bed)
        {
            var query =
                $"SELECT * FROM HospitalBedRepository WHERE Campus='{bed.Campus}' AND FloorNo='{bed.Floor}' AND Wing='{bed.Wing}' AND Room='{bed.RoomNumber}'";
            var beds = bedReader.FetchBedNumbers(conString, query);

            return(beds.Any());
        }
 private static void ParseCampusFloor(string[] bedInfo, ref HospitalBed hospitalBed)
 {
     if (bedInfo.Any())
     {
         hospitalBed.Campus = bedInfo[0];
     }
     if (bedInfo.Count() > 1)
     {
         hospitalBed.Floor = bedInfo[1];
     }
 }
 private static void ParseWingRoom(string[] bedInfo, ref HospitalBed hospitalBed)
 {
     if (bedInfo.Count() > 2)
     {
         hospitalBed.Wing = bedInfo[2];
     }
     if (bedInfo.Count() > 3)
     {
         hospitalBed.RoomNumber = bedInfo[3];
     }
 }
Esempio n. 13
0
        public List <HospitalBed> ReadEmptyBedsInCampus(HospitalBed campusId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            campusId.Floor      = "1F";
            campusId.Wing       = "1A";
            campusId.RoomNumber = "11";
            campusId.BedNumber  = 1;
            beds.Add(campusId);
            return(beds);
        }
        public HospitalBed Read(HospitalBed bed)
        {
            var query = string.Format("SELECT * FROM HospitalBedRepository WHERE Campus='{0}' AND FloorNo='{1}' AND Wing='{2}' AND Room='{3}' AND BedNo='{4}'", bed.Campus, bed.Floor, bed.Wing, bed.RoomNumber, bed.BedNumber);
            var beds  = bedReader.FetchBedNumbers(conString, query);

            if (beds.Any())
            {
                return(beds.First());
            }
            return(new HospitalBed());
        }
        private HospitalBed CreateBed()
        {
            HospitalBed bed = new HospitalBed
            {
                BedNumber  = 10,
                Campus     = "PIC",
                Floor      = "2",
                RoomNumber = "12",
                Wing       = "2A"
            };

            return(bed);
        }
        public bool Delete(HospitalBed bed)
        {
            var emptyBeds = ReadEmptyBedsInRoom(bed);

            if (emptyBeds.Count >= bed.BedNumber)
            {
                var query = string.Format(
                    "DELETE TOP({0}) FROM HospitalBedRepository WHERE Campus='{1}' AND FloorNo='{2}' AND Wing='{3}' AND Room='{4}' AND PatientId is NULL ", bed.BedNumber, bed.Campus, bed.Floor, bed.Wing, bed.RoomNumber);
                return(SqlCommands.ExecuteCommand(query, conString));
            }

            return(false);
        }
Esempio n. 17
0
        private void buttonBedAdd_Click(object sender, EventArgs e)
        {
            DialogResult dialogResult = MessageBox.Show("Xác nhận thêm giường", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

            if (dialogResult == DialogResult.Yes)
            {
                if (HospitalBed.InsertHospitalBed() > 0)
                {
                    MessageBox.Show("Thêm giường bệnh thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.None);
                }
            }
            refreshDataViewBed();
        }
Esempio n. 18
0
 private void SetHospitalBedDetail(HospitalBed hbDetail)
 {
     textBoxHospitalBedID.Text = hbDetail.BedID.ToString();
     textBoxPatientID.Text     = hbDetail.Patient.ToString();
     if (hbDetail.State == 0)
     {
         comboBoxState.SelectedIndex = 0;
     }
     else
     {
         comboBoxState.SelectedIndex = 1;
     }
 }
Esempio n. 19
0
        public List <HospitalBed> ReadEmptyBedsInRoom(HospitalBed roomId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            roomId.BedNumber = 1;
            beds.Add(roomId);
            roomId.BedNumber = 2;
            beds.Add(roomId);
            roomId.BedNumber = 3;
            beds.Add(roomId);
            roomId.BedNumber = 4;
            beds.Add(roomId);
            return(beds);
        }
        public bool Update(HospitalBed bed)
        {
            string query;

            if (bed.Occupancy.Any())
            {
                query = string.Format("UPDATE HospitalBedRepository SET PatientId='{0}' WHERE Campus='{1}' AND FloorNo='{2}' AND Wing='{3}' AND Room='{4}' AND BedNo='{5}'", bed.Occupancy, bed.Campus, bed.Floor, bed.Wing, bed.RoomNumber, bed.BedNumber);
            }
            else
            {
                query = string.Format("UPDATE HospitalBedRepository SET PatientId=NULL WHERE Campus='{0}' AND FloorNo='{1}' AND Wing='{2}' AND Room='{3}' AND BedNo='{4}'", bed.Campus, bed.Floor, bed.Wing, bed.RoomNumber, bed.BedNumber);
            }
            return(SqlCommands.ExecuteCommand(query, conString));
        }
Esempio n. 21
0
        public List <HospitalBed> ReadEmptyBedsInFloor(HospitalBed floorId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            floorId.Wing       = "1A";
            floorId.RoomNumber = "11";
            floorId.BedNumber  = 1;
            beds.Add(floorId);
            floorId.Wing       = "2A";
            floorId.RoomNumber = "22";
            floorId.BedNumber  = 2;
            beds.Add(floorId);
            return(beds);
        }
 private void InitializeBed(ref List <HospitalBed> bedList, HospitalBed bed)
 {
     if (!bedList.Any())
     {
         bedList.Add(new HospitalBed
         {
             BedNumber  = 0,
             Campus     = bed.Campus,
             Floor      = bed.Floor,
             Occupancy  = bed.Occupancy,
             RoomNumber = bed.RoomNumber,
             Wing       = bed.Wing
         });
     }
 }
Esempio n. 23
0
        public List <HospitalBed> ReadEmptyBedsInWing(HospitalBed wingId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            wingId.RoomNumber = "11";
            wingId.BedNumber  = 1;
            beds.Add(wingId);
            wingId.RoomNumber = "22";
            wingId.BedNumber  = 2;
            beds.Add(wingId);
            wingId.RoomNumber = "33";
            wingId.BedNumber  = 3;
            beds.Add(wingId);
            return(beds);
        }
Esempio n. 24
0
        public List <HospitalBed> ReadOccupiedBedsInFloor(HospitalBed floorId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            floorId.Wing       = "1A";
            floorId.RoomNumber = "11";
            floorId.BedNumber  = 1;
            floorId.Occupancy  = "111";
            beds.Add(floorId);
            floorId.Wing       = "2A";
            floorId.RoomNumber = "22";
            floorId.BedNumber  = 2;
            floorId.Occupancy  = "222";
            beds.Add(floorId);
            return(beds);
        }
Esempio n. 25
0
        private static void HospitalBedRegistration()
        {
            string      url  = "http://localhost:51449/HospitalBedRegistrationService.svc/HospitalBedRegistrationService/";
            HospitalBed beds = new HospitalBed
            {
                BedNumber  = 10,
                Campus     = "PIC",
                Floor      = "2F",
                RoomNumber = "201",
                Wing       = "2A"
            };
            string json = JsonConvert.SerializeObject(beds);

            json = "{\"beds\":" + json + "}";
            client.Headers[HttpRequestHeader.ContentType] = "application/json";
            var response = client.UploadString(url + "RegisterBeds", "POST", json);
        }
Esempio n. 26
0
        private List <HospitalBed> ParseHospitalBeds(SqlDataReader reader)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            while (reader.Read())
            {
                HospitalBed bed = new HospitalBed();
                bed.Campus     = reader["Campus"].ToString();
                bed.Floor      = reader["FloorNo"].ToString();
                bed.Wing       = reader["Wing"].ToString();
                bed.RoomNumber = reader["Room"].ToString();
                bed.BedNumber  = Convert.ToInt32(reader["BedNo"]);
                bed.Occupancy  = reader["PatientId"].ToString();
                beds.Add(bed);
            }
            return(beds);
        }
        public HospitalBed ParseHospitalBed(string bed)
        {
            HospitalBed hospitalBed = new HospitalBed();

            char[] spearator = { '-', ' ' };

            String[] bedInfo = bed.Split(spearator, StringSplitOptions.RemoveEmptyEntries);

            ParseCampusFloor(bedInfo, ref hospitalBed);
            ParseWingRoom(bedInfo, ref hospitalBed);
            if (bedInfo.Count() > 4)
            {
                hospitalBed.BedNumber = Convert.ToInt32(bedInfo[4]);
            }

            return(hospitalBed);
        }
        private string CreateHospitalBeds()
        {
            //id=PIC-2F-2A-201-5
            HospitalBed beds = new HospitalBed
            {
                BedNumber  = 10,
                Campus     = "PIC",
                Floor      = "2F",
                RoomNumber = "201",
                Wing       = "2A"
            };
            string json = JsonConvert.SerializeObject(beds);

            json = "{\"beds\":" + json + "}";


            return(json);
        }
Esempio n. 29
0
        public List <HospitalBed> ReadOccupiedBedsInWing(HospitalBed wingId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            wingId.RoomNumber = "11";
            wingId.BedNumber  = 1;
            wingId.Occupancy  = "111";
            beds.Add(wingId);
            wingId.RoomNumber = "22";
            wingId.BedNumber  = 2;
            wingId.Occupancy  = "222";
            beds.Add(wingId);
            wingId.RoomNumber = "33";
            wingId.BedNumber  = 3;
            wingId.Occupancy  = "333";
            beds.Add(wingId);
            return(beds);
        }
Esempio n. 30
0
        public List <HospitalBed> ReadOccupiedBedsInRoom(HospitalBed roomId)
        {
            List <HospitalBed> beds = new List <HospitalBed>();

            roomId.BedNumber = 1;
            roomId.Occupancy = "111";
            beds.Add(roomId);
            roomId.BedNumber = 2;
            roomId.Occupancy = "222";
            beds.Add(roomId);
            roomId.BedNumber = 3;
            roomId.Occupancy = "333";
            beds.Add(roomId);
            roomId.BedNumber = 4;
            roomId.Occupancy = "444";
            beds.Add(roomId);
            return(beds);
        }