public string SetPatientDischarge(string ID) { /*Function changed: * return voit to string * new if that checks if patient wasn't already discharged */ InitializeConnection(); m_oCn.Open(); string sMsg = ""; DataSet thisDataSet = new DataSet(); Beds oBeds = new Beds(); try { m_oDA.Fill(thisDataSet, m_sClassName); for (int n = 0; n < thisDataSet.Tables["Admissions"].Rows.Count; n++) { if (thisDataSet.Tables["Admissions"].Rows[n]["PatientID"].ToString() == ID) { if (thisDataSet.Tables["Admissions"].Rows[n]["DischargeDate"] == System.DBNull.Value) { thisDataSet.Tables["Admissions"].Rows[n]["DischargeDate"] = DateTime.Today.Date; m_oDA.Update(thisDataSet, m_sClassName); oBeds.FreeBed(thisDataSet.Tables["Admissions"].Rows[n]["Bed"].ToString()); sMsg = "Patient Discharged"; } else { sMsg = "Patient already discharged."; } } } } catch (Exception e) { sMsg = "Patient was not discharged. " + e.Message.ToString(); } finally { m_oCn.Close(); m_oCn = null; } return(sMsg); }
public string AddData(string admID, DateTime admission, DateTime surgery, string docID, string patID, string ward, string bed, bool tv, bool phone, bool semi, bool priv) { string sMsg = ""; try { InitializeConnection(); m_oCn.Open(); DataSet thisDataSet = new DataSet(); m_oDA.Fill(thisDataSet, m_sClassName); string filter = "PatientID='" + patID + "' AND DischargeDate is null"; DataRow[] patientHosp = thisDataSet.Tables["Admissions"].Select(filter); if (patientHosp.Length != 0) { return(" Patient already hospitalized."); } DataColumn[] keys = new DataColumn[1]; keys[0] = thisDataSet.Tables["Admissions"].Columns["ID"]; thisDataSet.Tables["Admissions"].PrimaryKey = keys; DataRow findRow = thisDataSet.Tables["Admissions"].Rows.Find(admID); if (findRow == null) { DataRow thisRow = thisDataSet.Tables["Admissions"].NewRow(); thisRow["ID"] = admID; thisRow["AdmissionDate"] = admission; thisRow["SurgeryDate"] = surgery; thisRow["DoctorID"] = docID; thisRow["PatientID"] = patID; thisRow["Ward"] = ward; thisRow["Bed"] = bed; thisRow["TV"] = tv; thisRow["Phone"] = phone; thisRow["SemiPrivate"] = semi; thisRow["Private"] = priv; Beds oBeds = new Beds(); oBeds.OccupyBed(bed); thisDataSet.Tables["Admissions"].Rows.Add(thisRow); if ((findRow = thisDataSet.Tables["Admissions"].Rows.Find(admID)) != null) { sMsg = " Admission Record Was Added"; } } else { sMsg = " Admission " + admID + " already present in database."; } m_oDA.Update(thisDataSet, m_sClassName); } catch (Exception e) { sMsg = "Record was not added" + e.Message.ToString(); } finally { m_oCn.Close(); m_oCn = null; } return(sMsg); }