Example #1
0
        public int savePatientEncounterPresentingComplaints(string patientMasterVisitID, string patientID, string serviceID, string VisitDate, string VisitScheduled, string VisitBy, string anyComplaints, string Complaints, int TBScreening, int NutritionalStatus, int userId, string adverseEvent, string presentingComplaints)
        {
            IPatientEncounter       patientEncounter        = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            PatientEncounterManager patientEncounterManager = new PatientEncounterManager();

            JavaScriptSerializer parser = new JavaScriptSerializer();

            var advEvent    = parser.Deserialize <List <AdverseEvents> >(adverseEvent);
            var pComplaints = parser.Deserialize <List <PresentingComplaints> >(presentingComplaints);
            int val         = patientEncounter.savePresentingComplaints(patientMasterVisitID, patientID, serviceID, VisitDate, VisitScheduled, VisitBy, anyComplaints, Complaints, TBScreening, NutritionalStatus, userId, advEvent, pComplaints);

            //Set the Visit Encounter Here
            //TODO: ALWAYS CHECK IF AN ENCOUNTER EXITS BEFRE ADDING:
            encounterTypeId = patientEncounterManager.GetPatientEncounterId("EncounterType", "ccc-encounter".ToLower());
            var foundEncounter = patientEncounterManager.GetEncounterIfExists(Convert.ToInt32(patientID), Convert.ToInt32(patientMasterVisitID), Convert.ToInt32(encounterTypeId));

            if (foundEncounter != null)
            {
                result = foundEncounter.Id;
            }
            else
            {
                if (val > 0)
                {
                    result = patientEncounterManager.AddpatientEncounter(Convert.ToInt32(patientID),
                                                                         Convert.ToInt32(patientMasterVisitID),
                                                                         patientEncounterManager.GetPatientEncounterId("EncounterType", "ccc-encounter".ToLower()), 203,
                                                                         userId);
                }
            }
            return((result > 0) ? val : 0);
        }
Example #2
0
        public int isVisitScheduled(string patientId)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            DataTable         theDT            = patientEncounter.isVisitScheduled(patientId);

            return(theDT.Rows.Count);
        }
Example #3
0
        public int SavePatientPreviousEncounter(int patientID, int patientMasterVisitID, string EncounterType, int ServiceAreaId, int userId, DateTime visitDate)
        {
            int val = 0;
            IPatientEncounter       patientEncounter        = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            PatientEncounterManager patientEncounterManager = new PatientEncounterManager();

            encounterTypeId = patientEncounterManager.GetPatientEncounterId("EncounterType", EncounterType.ToLower());
            var foundEncounter = patientEncounterManager.GetEncounterIfExists(Convert.ToInt32(patientID), Convert.ToInt32(patientMasterVisitID), Convert.ToInt32(encounterTypeId));

            if (foundEncounter != null)
            {
                result = foundEncounter.Id;
            }
            else
            {
                Entities.CCC.Visit.PatientEncounter patientVisitEncounter = new Entities.CCC.Visit.PatientEncounter()
                {
                    PatientId            = Convert.ToInt32(patientID),
                    EncounterStartTime   = visitDate,
                    EncounterEndTime     = visitDate,
                    ServiceAreaId        = 203,
                    EncounterTypeId      = encounterTypeId,
                    PatientMasterVisitId = Convert.ToInt32(patientMasterVisitID),
                    CreatedBy            = userId
                };

                result = patientEncounterManager.AddPatientEncounter(patientVisitEncounter);
            }
            return((result > 0) ? result : val);
        }
Example #4
0
        public string addAdherenceHIVStatus(int patientId, int patientMasterVisitId, int createdBy, int AcceptedStatus, int DisclosureComplete)
        {
            IPatientEncounter       patientEncounter        = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            PatientEncounterManager patientEncounterManager = new PatientEncounterManager();

            encounterTypeId = patientEncounterManager.GetPatientEncounterId("EncounterType", "Adherence-Barriers");
            var foundEncounter = patientEncounterManager.GetEncounterIfExists(Convert.ToInt32(patientId), Convert.ToInt32(patientMasterVisitId), Convert.ToInt32(encounterTypeId));

            if (foundEncounter != null)
            {
                EncounterResult = foundEncounter.Id;
            }
            else
            {
                EncounterResult = patientEncounterManager.AddpatientEncounter(Convert.ToInt32(patientId), Convert.ToInt32(patientMasterVisitId),
                                                                              patientEncounterManager.GetPatientEncounterId("EncounterType", "Adherence-Barriers"), 203, createdBy);
            }
            if (EncounterResult > 0)
            {
                try
                {
                    var AL = new AdherenceLogic();
                    Result = AL.addAdherenceHIVStatus(patientId, patientMasterVisitId, createdBy, AcceptedStatus, DisclosureComplete);
                    if (Result > 0)
                    {
                        Msg = " HIV Status Added Successfully";
                    }
                }
                catch (Exception e)
                {
                    Msg = e.Message;
                }
            }
            return(Msg);
        }
Example #5
0
 public void savePatientEncounterPhysicalExam(string masterVisitID, string patientID, string userID, string physicalExam, string generalExam)
 {
     IPatientEncounter    patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
     JavaScriptSerializer parser           = new JavaScriptSerializer();
     var           phyExam         = parser.Deserialize <List <PhysicalExamination> >(physicalExam);
     List <string> generalExamList = generalExam.Split(',').ToList();
     int           val             = patientEncounter.savePhysicalEaxminations(masterVisitID, patientID, userID, phyExam, generalExamList);
 }
Example #6
0
        public int saveNeonatalMilestone(int masterVisitID, int patientID, int userID, string mlAssessed, string mlOnsetDate, string mlAchieved, string mlStatus, string mlComment)
        {
            IPatientEncounter    patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            JavaScriptSerializer parser           = new JavaScriptSerializer();
            int Val = patientEncounter.saveNeonatalMilestone(masterVisitID, patientID, userID, mlAssessed, mlOnsetDate, mlAchieved, mlStatus, mlComment);

            return(Val);
        }
Example #7
0
 public void savePatientManagement(string PatientMasterVisitID, string PatientID, string userID, string workplan, string ARVAdherence, string CTXAdherence, string phdp, string diagnosis)
 {
     IPatientEncounter    patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
     JavaScriptSerializer parser           = new JavaScriptSerializer();
     var           diag     = parser.Deserialize <List <Diagnosis> >(diagnosis);
     List <string> PHDPList = phdp.Split(',').ToList();
     int           val      = patientEncounter.savePatientManagement(PatientMasterVisitID, PatientID, userID, workplan, ARVAdherence, CTXAdherence, PHDPList, diag);
 }
Example #8
0
        public int savePatientEncounterTS(string patientMasterVisitID, string patientID, string serviceID, string VisitDate, string VisitScheduled, string VisitBy, int userId)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            int val = patientEncounter.savePresentingComplaintsTS(patientMasterVisitID, patientID, serviceID, VisitDate, VisitScheduled, VisitBy, userId);

            return(val);
        }
Example #9
0
 public void savePatientEncounterChronicIllness(string masterVisitID, string patientID, string userID, string chronicIllness, string Vaccines, string Allergies)
 {
     IPatientEncounter    patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
     JavaScriptSerializer parser           = new JavaScriptSerializer();
     var chrIllness = parser.Deserialize <List <ChronicIlness> >(chronicIllness);
     var vacc       = parser.Deserialize <List <Vaccines> >(Vaccines);
     var allergy    = parser.Deserialize <List <Allergies> >(Allergies);
     int val        = patientEncounter.saveChronicIllness(masterVisitID, patientID, userID, chrIllness, vacc, allergy);
 }
Example #10
0
        public PatientCategorizationParameters getPatientDSDParameters(string patientId)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            PatientCategorizationParameters categorizationParameters = new PatientCategorizationParameters();
            DataSet theDS = patientEncounter.getPatientDSDParameters(patientId);

            if (theDS.Tables[0].Rows.Count > 0)
            {
                categorizationParameters.age = Convert.ToDouble(theDS.Tables[0].Rows[0][0].ToString());
            }


            if (theDS.Tables[1].Rows.Count > 0)
            {
                categorizationParameters.BMI = Convert.ToDouble(theDS.Tables[1].Rows[0][0].ToString());
            }

            if (theDS.Tables[2].Rows.Count > 0)
            {
                if (theDS.Tables[2].Rows[0][2].ToString() == "" && theDS.Tables[2].Rows[0][3].ToString() == "True")
                {
                    categorizationParameters.VL = 50; //undetectable
                }
                else if (theDS.Tables[2].Rows[0][2].ToString() != "")
                {
                    categorizationParameters.VL = Convert.ToDouble(theDS.Tables[2].Rows[0][2].ToString());
                }
                else
                {
                    categorizationParameters.VL = 1001;
                }
            }
            else
            {
                categorizationParameters.VL = 1001;
            }


            if (theDS.Tables[3].Rows.Count > 0)
            {
                categorizationParameters.SameRegimen12Months = Convert.ToInt32(theDS.Tables[3].Rows[0][0].ToString());
            }

            if (theDS.Tables[4].Rows.Count > 0 && theDS.Tables[4].Rows[0][0].ToString() != "")
            {
                categorizationParameters.Completed6MonthsIPT = Convert.ToDouble(theDS.Tables[4].Rows[0][0].ToString());
            }

            categorizationParameters.ActiveOIs = theDS.Tables[5].Rows.Count;

            return(categorizationParameters);
        }
Example #11
0
        public int savePatientEncounter(int patientID, int patientMasterVisitID, string EncounterType, int ServiceAreaId, int userId)
        {
            int val = 0;
            IPatientEncounter       patientEncounter        = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            PatientEncounterManager patientEncounterManager = new PatientEncounterManager();

            encounterTypeId = patientEncounterManager.GetPatientEncounterId("EncounterType", EncounterType.ToLower());
            var foundEncounter = patientEncounterManager.GetEncounterIfExists(Convert.ToInt32(patientID), Convert.ToInt32(patientMasterVisitID), Convert.ToInt32(encounterTypeId));

            if (foundEncounter != null)
            {
                result = foundEncounter.Id;
            }
            else
            {
                result = patientEncounterManager.AddpatientEncounter(Convert.ToInt32(patientID), Convert.ToInt32(patientMasterVisitID), encounterTypeId, 203, userId);
            }
            return((result > 0) ? result : val);
        }
Example #12
0
        public DataTable getPatientWorkPlan(string patientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getPatientWorkPlan(patientID));
        }
Example #13
0
        public DataTable loadTannersStaging(string PatientMasterVisitID, string PatientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getTannersStaging(PatientMasterVisitID, PatientID));
        }
Example #14
0
        public DataTable loadImmunizationHistory(string PatientMasterVisitID, string PatientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getImmunizationHistory(PatientMasterVisitID, PatientID));
        }
Example #15
0
        public DataTable loadPatientEncounterPhysicalExam(string PatientMasterVisitID, string PatientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getPatientEncounterPhysicalExam(PatientMasterVisitID, PatientID));
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            var    myDate          = DateTime.Now.Year;
            var    myDateMonth     = DateTime.Now.Month;
            string TBStatus        = "unknown";
            string NutritionStatus = "unknown";
            string categorization  = "Not done";

            int patientId = Convert.ToInt32(HttpContext.Current.Session["PatientPK"]);
            int personId  = Convert.ToInt32(HttpContext.Current.Session["personId"]);

            PatientTrace = HttpContext.Current.Session["PatientTrace"].ToString();

            DateTime             DoB;
            PatientLookupManager pMgr        = new PatientLookupManager();
            PatientLookup        thisPatient = pMgr.GetPatientDetailSummaryBrief(patientId, personId);

            if (null != thisPatient)
            {
                DoB = Convert.ToDateTime(thisPatient.DateOfBirth);
                Session["PatientId"]     = thisPatient.ptn_pk;
                Session["SystemId"]      = 1;
                Session["DateOfBirth"]   = thisPatient.DateOfBirth.ToString("dd-MMM-yyyy");
                Session["PersonId"]      = thisPatient.PersonId;
                Session["PatientType"]   = thisPatient.PatientType;
                Session["PatientStatus"] = thisPatient.PatientStatus;

                lblPatientNames.Text = (thisPatient.LastName) + ", " + (thisPatient.FirstName) + " " + (thisPatient.MiddleName) + " ";
                if (thisPatient.PatientStatus.Equals("Active"))
                {
                    int       ptn_pk          = thisPatient.ptn_pk.HasValue ? thisPatient.ptn_pk.Value : 0;
                    DataTable patientStatuses = pMgr.GetPatientStatus(ptn_pk);
                    if (patientStatuses.Rows.Count == 0)
                    {
                        lblPatientStatus.Text = "<i class=fa fa-user-o text-success' aria-hidden='true'></i><strong class='label label-danger fa-1x'>no ART pharmacy forms dispensed</strong>";
                    }
                    else
                    {
                        foreach (DataRow patientStatus in patientStatuses.Rows)
                        {
                            var expectedReturnDate = patientStatus.Field <DateTime>("ExpectedReturnDate");
                            var lostToFollowDate   = patientStatus.Field <DateTime>("LostToFollowDate");

                            if (lostToFollowDate < DateTime.Now)
                            {
                                lblPatientStatus.Text = "<i class=fa fa-user-o text-success' aria-hidden='true'></i><strong class='label label-danger fa-1x'>LTFU (>90days) since " + lostToFollowDate.ToString("dd-MMM-yyyy") + "</strong>";
                            }
                            else if (expectedReturnDate < DateTime.Now)
                            {
                                lblPatientStatus.Text = "<i class=fa fa-user-o text-success' aria-hidden='true'></i><strong class='label label-danger fa-1x'>Defaulter (>0days) since - " + expectedReturnDate.ToString("dd-MMM-yyyy") + " </strong>";
                            }
                            else
                            {
                                lblPatientStatus.Text = "<i class=fa fa-user-o text-success' aria-hidden='true'></i><strong class='label label-info fa-1x'>Patient Active</strong>";
                            }
                        }
                    }
                }
                else
                {
                    lblPatientStatus.Text = "<i class='fa fa-user-o text-danger' aria-hidden='true'></i><strong class='label label-danger fa-1x'>" + thisPatient.PatientStatus + "</strong>";
                }
                Session["Gender"] = Session["PatientSex"] = lblGender.Text = LookupLogic.GetLookupNameById(thisPatient.Sex);
                //todo patientManagershould have the lookups resolved
                var patType = LookupLogic.GetLookupNameById(thisPatient.PatientType);
                if (patType != null)
                {
                    lblPatientType.Text = patType.ToUpper();
                }
                // _lookupManager.GetLookupNameFromId(thisPatient.PatientType).ToUpper();

                //lblDOB.Text = thisPatient.DateOfBirth.ToString("dd-MMM-yyyy");
                var ptnMaritalStatus = PatientMaritalStatusManager.GetCurrentPatientMaritalStatus(thisPatient.PersonId);
                if (ptnMaritalStatus != null)
                {
                    lblmstatus.Text =
                        LookupLogic.GetLookupNameById(ptnMaritalStatus.MaritalStatusId)
                        .ToString()
                        .ToUpper();
                }
                else
                {
                    lblmstatus.Text = "<span class='label label-danger'> N/A </span>";
                }


                //    lblOtherNames.Text = "<strong></i>" + _utility.Decrypt(x.FirstName) + ' ' + _utility.Decrypt(x.MiddleName) + "</i></strong>";

                var age = PatientManager.CalculateYourAge(DoB);

                //lblAge.Text ="<strong><i>"+ Convert.ToString(myDate - DoB.Year)+" Years " + Convert.ToString(myDateMonth-DoB.Month) + " Months </i></strong>";
                lblAge.Text    = "<strong><i>" + age.Replace("Age:", "") + "</i></strong>";
                Session["Age"] = Convert.ToString(myDate - DoB.Year);
                // lblCCCReg.Text = x.EnrollmentNumber;
                lblCCCRegNo.Text            = thisPatient.EnrollmentNumber;
                lblEnrollmentDate.Text      = "" + thisPatient.EnrollmentDate.ToString("dd-MMM-yyyy");
                Session["DateOfEnrollment"] = thisPatient.EnrollmentDate.ToString("dd-MMM-yyyy");

                //SET TB STATUS
                if (thisPatient.TBStatus < 1)
                {
                    lbltbstatus.Text = "<span class='fa fa-info-circle text-danger'> " + TBStatus + "<span>";
                }
                else
                {
                    TBStatus = LookupLogic.GetLookupNameById(thisPatient.TBStatus).ToString().ToUpper();
                    switch (TBStatus)
                    {
                    case "TBRX":
                        lbltbstatus.Text = "<span class='label label-danger'>" + TBStatus + "</span>";
                        break;

                    case "INH":
                        lbltbstatus.Text = "<span class='label label-warning'>" + TBStatus + "</span>";
                        break;

                    case "PRTB":
                        lbltbstatus.Text = "<span class='label label-warning'>" + TBStatus + "</span>";
                        break;

                    default:
                        lbltbstatus.Text = "<span class='label label-success'>" + TBStatus + "</span>";
                        break;
                    }
                }

                // SET NUTRITION STATUS
                if (thisPatient.NutritionStatus < 1)
                {
                    lblnutritionstatus.Text = "<span class='fa fa-info-circle text-danger'> " + NutritionStatus + "<span>";
                }
                else
                {
                    string nutrition = LookupLogic.GetLookupNameById(thisPatient.NutritionStatus);
                    if (!string.IsNullOrWhiteSpace(nutrition))
                    {
                        NutritionStatus = nutrition.ToUpper();
                    }

                    //lblnutritionstatus.Text = "<span class='label label-success'>" + NutritionStatus + "</span>";
                    switch (NutritionStatus)
                    {
                    case "OBESE":
                        lblnutritionstatus.Text = "<span class='label label-warning'>" + NutritionStatus + "</span>";
                        break;

                    case "MAM":
                        lblnutritionstatus.Text = "<span class='label label-warning'>" + NutritionStatus + "</span>";
                        break;

                    case "SAM":
                        lblnutritionstatus.Text = "<span class='label label-danger'>" + NutritionStatus + "</span>";
                        break;

                    default:
                        lblnutritionstatus.Text = "<span class='label label-success'>" + NutritionStatus + "</span>";
                        break;
                    }
                }

                // SET categorization:
                if ((DateTime.Now - thisPatient.EnrollmentDate).TotalDays < 365)
                {
                    IPatientEncounter patientCat = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
                    DataTable         theDT      = patientCat.patientCategorizationAtEnrollment(HttpContext.Current.Session["PatientPK"].ToString());
                    if (theDT.Rows.Count > 0)
                    {
                        lblcategorization.Text = "<span class='label " + theDT.Rows[0][1].ToString() + "'>" + theDT.Rows[0][0].ToString() + "</span>";
                    }
                    else
                    {
                        lblcategorization.Text = "<span class='label label-danger'>Unstable</span>";
                    }
                }
                else
                {
                    if (thisPatient.categorization < 1)
                    {
                        lblcategorization.Text = "<span class='label label-danger'>Unstable</span>";
                    }
                    else
                    {
                        //categorization= LookupLogic.GetLookupNameById(thisPatient.categorization).ToString().ToUpper();
                        categorization = thisPatient.categorization.ToString();
                        switch (categorization)
                        {
                        case "1":
                            lblcategorization.Text = "<span class='label label-success'>Stable</span>";
                            break;

                        case "2":
                            lblcategorization.Text = "<span class='label label-danger'>Unstable</span>";
                            break;
                        }
                    }
                }
            }
        }
Example #17
0
        public ZScores getZScores(string patientId, double age, string gender, double height, double weight)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            ZScoresParameters zsParam  = new ZScoresParameters();
            ZScores           zsValues = new ZScores();

            if (age < 15)
            {
                double bmi = 0;

                zsParam = patientEncounter.GetZScoreValues(patientId, gender, height.ToString());

                //////weight for Age//////////

                if (zsParam != null)
                {
                    //Weight for age calculation
                    if (zsParam.L_WA != 0 && weight != 0)
                    {
                        zsValues.weightForAge = ((Math.Pow((weight / zsParam.M_WA), zsParam.L_WA)) - 1) / (zsParam.S_WA * zsParam.L_WA);
                    }
                    else
                    {
                        zsValues.weightForAge = (Math.Log(weight / zsParam.M_WA)) / zsParam.S_WA;
                    }
                }
                else
                {
                    //lblWAClassification.Text = "Out of range";
                }

                ///////Weight for height calculation//////////////////////////////

                if (height <= 120 && height >= 45)
                {
                    try
                    {
                        if (zsParam != null)
                        {
                            if (zsParam.L_WH != 0 && weight != 0)
                            {
                                zsValues.weightForHeight = ((Math.Pow((weight / zsParam.M_WH), zsParam.L_WH)) - 1) / (zsParam.S_WH * zsParam.L_WH);
                            }
                            else
                            {
                                zsValues.weightForHeight = (Math.Log(weight / zsParam.M_WH)) / zsParam.S_WH;
                            }
                        }
                    }

                    catch (Exception)
                    {
                    }
                }

                ////BMIz (Z-Score Calculation)////////////////////////////

                if (zsParam != null)
                {
                    if (height != 0 && weight != 0)
                    {
                        bmi = weight / ((height / 100) * (height / 100));
                    }
                    else
                    {
                        bmi = 0;
                    }

                    if (zsParam.L_BMIz != 0)
                    {
                        zsValues.BMIz = ((Math.Pow((bmi / zsParam.M_BMIz), zsParam.L_BMIz)) - 1) / (zsParam.S_BMIz * zsParam.L_BMIz);
                    }
                    else
                    {
                        zsValues.BMIz = (Math.Log(bmi / zsParam.M_BMIz)) / zsParam.S_BMIz;
                    }

                    //lblBMIz.Text = string.Format("{0:f2}", BMIz);
                }
            }

            return(zsValues);

            /////////////////////////////////////////////////////////

            ///////Height for age calculation/////////////////////////////
            //if (L != 0)
            //    HAz = ((Math.Pow((heightInCm / M), L)) - 1) / (S * L);
            //else
            //    HAz = (Math.Log(heightInCm / M)) / S;

            /////////////////////////////////////////////////////////////
        }
Example #18
0
        public void EncounterHistory(TreeView TreeViewEncounterHistory, string patientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
            DataTable         theDT            = patientEncounter.getPatientEncounterHistory(patientID);

            int      tmpYear  = 0;
            int      tmpMonth = 0;
            TreeNode root     = new TreeNode();
            TreeNode theMRoot = new TreeNode();
            bool     flagyear = true;

            foreach (DataRow theDR in theDT.Rows)
            {
                if (theDR["visitDate"] != DBNull.Value && theDR["visitDate"].ToString().Trim() != "" && ((DateTime)theDR["visitDate"]).Year != 1900)
                {
                    if (tmpYear != ((DateTime)theDR["visitDate"]).Year)
                    {
                        root       = new TreeNode();
                        root.Text  = ((DateTime)theDR["visitDate"]).Year.ToString();
                        root.Value = "";
                        if (flagyear)
                        {
                            root.Expand();
                            flagyear = false;
                        }
                        else
                        {
                            root.Collapse();
                        }
                        TreeViewEncounterHistory.Nodes.Add(root);
                        tmpYear  = ((DateTime)theDR["visitDate"]).Year;
                        tmpMonth = 0;
                    }

                    if (tmpYear == ((DateTime)theDR["visitDate"]).Year && tmpMonth != ((DateTime)theDR["visitDate"]).Month)
                    {
                        theMRoot       = new TreeNode();
                        theMRoot.Text  = ((DateTime)theDR["visitDate"]).ToString("MMMM");
                        theMRoot.Value = "";
                        root.ChildNodes.Add(theMRoot);
                        tmpMonth = ((DateTime)theDR["visitDate"]).Month;
                    }

                    if (tmpYear == ((DateTime)theDR["visitDate"]).Year && tmpMonth == ((DateTime)theDR["visitDate"]).Month)
                    {
                        TreeNode theFrmRoot = new TreeNode();
                        theFrmRoot.Text = theDR["VisitName"].ToString() + " ( " + ((DateTime)theDR["visitDate"]).ToString(HttpContext.Current.Session["AppDateFormat"].ToString()) + " ) - " + theDR["UserName"].ToString();
                        string _VisitName = theDR["VisitName"].ToString();

                        //if (Convert.ToString(Session["TechnicalAreaId"]) == Convert.ToString(theDR["Module"]) || theDR["VisitName"].ToString() == "Patient Registration")
                        //{
                        //    if (DQ != "")
                        //    {
                        //        theFrmRoot.ImageUrl = "~/images/15px-Yes_check.svg.png";
                        //    }
                        //    else if (theDR["CAUTION"].ToString() == "1")
                        //    {
                        //        theFrmRoot.ImageUrl = "~/images/caution.png";
                        //    }
                        //    else
                        //    {
                        //        theFrmRoot.ImageUrl = "~/Images/No_16x.ico";
                        //    }
                        //}
                        //else
                        //{
                        //    if ((_VisitName == "Pharmacy") || (_VisitName == "Laboratory") || (_VisitName == "Paediatric Pharmacy") || _VisitName.Contains("Service Request"))
                        //    {
                        //        if (Session["Paperless"].ToString() == "1")
                        //        {

                        //            if ((_VisitName == "Pharmacy") || (_VisitName == "Laboratory") || (_VisitName == "Paediatric Pharmacy") || _VisitName.Contains("Service Request"))
                        //            {
                        //                if (theDR["CAUTION"].ToString() == "1")
                        //                {
                        //                    theFrmRoot.ImageUrl = "~/images/caution.png";
                        //                }
                        //                else
                        //                    theFrmRoot.ImageUrl = "~/images/15px-Yes_check.svg.png";
                        //            }

                        //        }
                        //        else
                        //        {
                        //            if (DQ != "")
                        //            {
                        //                theFrmRoot.ImageUrl = "~/images/15px-Yes_check.svg.png";
                        //            }
                        //            else
                        //            {
                        //                theFrmRoot.ImageUrl = "~/Images/No_16x.ico";
                        //            }
                        //        }
                        //    }
                        //    else
                        //    {
                        //        //find if form is linked to this module

                        //        if (linkedForms != null && linkedForms.Select("VisitName = '" + _VisitName + "'").Length > 0)
                        //        {
                        //            if (DQ != "")
                        //            {
                        //                theFrmRoot.ImageUrl = "~/images/15px-Yes_check.svg.png";
                        //            }
                        //            else
                        //            {
                        //                theFrmRoot.ImageUrl = "~/Images/No_16x.ico";
                        //            }
                        //        }
                        //        else
                        //        {
                        //            theFrmRoot.ImageUrl = "~/Images/lock.jpg";
                        //            theFrmRoot.ImageToolTip = "You are Not Authorized to Access this Functionality";
                        //            theFrmRoot.SelectAction = TreeNodeSelectAction.None;
                        //        }
                        //    }
                        //}
                        //else
                        //{
                        //    if (Convert.ToInt32(theDR["Module"]) > 2)
                        //    {
                        //        theFrmRoot.ImageUrl = "~/Images/lock.jpg";
                        //        theFrmRoot.ImageToolTip = "You are Not Authorized to Access this Functionality";
                        //        theFrmRoot.SelectAction = TreeNodeSelectAction.None;
                        //    }

                        //    else if (Convert.ToString(Session["TechnicalAreaId"]) == Convert.ToString(theDR["Module"]) || (_VisitName == "Pharmacy") ||
                        //        (_VisitName == "Laboratory") || (_VisitName == "Paediatric Pharmacy") ||_VisitName.Contains("Service Request") )
                        //    {

                        //    }
                        //    else
                        //    {
                        //        theFrmRoot.ImageUrl = "~/Images/lock.jpg";
                        //        theFrmRoot.ImageToolTip = "You are Not Authorized to Access this Functionality";
                        //        theFrmRoot.SelectAction = TreeNodeSelectAction.None;
                        //    }
                        //}

                        if ((theDR["VisitName"].ToString() == "CCC") || (theDR["VisitName"].ToString() == "ccc-encounter"))
                        {
                            theFrmRoot.NavigateUrl = "PatientEncounter.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }


                        if (theDR["VisitName"].ToString() == "Care Ended")
                        {
                            theFrmRoot.NavigateUrl = "../Patient/PatientCareEnded.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }


                        if (theDR["VisitName"].ToString() == "Adherence Barriers")
                        {
                            theFrmRoot.NavigateUrl = "../Adherence/AdherenceBarriers.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }
                        if (theDR["VisitName"].ToString() == "Patient-Tracing")
                        {
                            theFrmRoot.NavigateUrl = "../Patient/PatientTracing.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }
                        if (theDR["VisitName"].ToString() == "Depression Screening")
                        {
                            theFrmRoot.NavigateUrl = "../Screening/DepressionScreening.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }

                        if (theDR["VisitName"].ToString() == "Case Summary")
                        {
                            theFrmRoot.NavigateUrl = "../CaseSummary/CaseSummary.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }

                        if (theDR["VisitName"].ToString() == "Gender Based Violence Screening")
                        {
                            theFrmRoot.NavigateUrl = "../Screening/GBVScreening.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }

                        if (theDR["VisitName"].ToString() == "Alcohol and Drug Abuse Screening")
                        {
                            theFrmRoot.NavigateUrl = "../Screening/AlcoholDrugAbuseScreening.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }

                        if (theDR["VisitName"].ToString() == "ART Fast Track")
                        {
                            theFrmRoot.NavigateUrl = "ArtDistributionForm.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }

                        if (theDR["VisitName"].ToString() == "Adherence Barriers")
                        {
                            theFrmRoot.NavigateUrl = "../Adherence/AdherenceBarriersHome.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }
                        if (theDR["VisitName"].ToString() == "Enhance Adherence Counselling")
                        {
                            theFrmRoot.NavigateUrl = "../EnhanceAdherenceCounselling/EnhanceAdherenceHome.aspx?pid=" + patientID + "&visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }
                        if (theDR["VisitName"].ToString() == "Triage")
                        {
                            theFrmRoot.NavigateUrl = "VitalSigns.aspx?visitId=" + theDR["visitID"].ToString();
                            theFrmRoot.ImageUrl    = "~/images/15px-Yes_check.svg.png";
                        }
                        else if (theDR["VisitName"].ToString() == "Pharmacy")
                        {
                            theFrmRoot.NavigateUrl = "PharmacyPrescription.aspx?visitId=" + theDR["visitID"].ToString();

                            if (theDR["status"].ToString() == "2")
                            {
                                theFrmRoot.ImageUrl = "~/images/15px-Yes_check.svg.png";
                            }
                            else
                            {
                                theFrmRoot.ImageUrl = "~/images/caution.png";
                            }
                        }
                        else if (theDR["VisitName"].ToString() == "Lab")
                        {
                            theFrmRoot.NavigateUrl = "LabOrder.aspx?visitId=" + theDR["visitID"].ToString();
                            if (theDR["status"].ToString() == "Complete")
                            {
                                theFrmRoot.ImageUrl = "~/images/15px-Yes_check.svg.png";
                            }
                            else
                            {
                                theFrmRoot.ImageUrl = "~/images/caution.png";
                            }
                        }

                        theFrmRoot.Value = "";// Convert.ToInt32(PId) + "%" + theDR["OrderNo"].ToString() + "%" + theDR["LocationID"].ToString() + "%" + PtnARTStatus + "%" + theDR["Module"].ToString() + "%" + theDR["VisitName"].ToString();
                        theMRoot.ChildNodes.Add(theFrmRoot);
                    }
                }
            }
        }
Example #19
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var    myDate          = DateTime.Now.Year;
            var    myDateMonth     = DateTime.Now.Month;
            string TBStatus        = "unknown";
            string NutritionStatus = "unknown";
            string categorization  = "Not done";

            int patientId = Convert.ToInt32(HttpContext.Current.Session["PatientPK"]);

            //if (Request.QueryString["patient"] != null)
            //{
            //    patientId = Convert.ToInt32(Request.QueryString["patient"]);
            //    Session["patientId"] = patientId;
            //}

            DateTime             DoB;
            PatientLookupManager pMgr = new PatientLookupManager();
            //IPatientLookupmanager patientLookupmanager = (IPatientLookupmanager)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientLookupManager, BusinessProcess.CCC");

            // List<PatientLookup> patientLookups = patientLookupmanager.GetPatientDetailsLookup(patientId);
            PatientLookup thisPatient = pMgr.GetPatientDetailSummary(patientId);

            pMgr = null;
            if (null != thisPatient)
            {
                DoB = Convert.ToDateTime(thisPatient.DateOfBirth);
                Session["PatientId"]     = thisPatient.ptn_pk;
                Session["SystemId"]      = 1;
                Session["DateOfBirth"]   = thisPatient.DateOfBirth.ToString("dd-MMM-yyyy");
                Session["PersonId"]      = thisPatient.PersonId;
                Session["PatientType"]   = thisPatient.PatientType;
                Session["PatientStatus"] = thisPatient.PatientStatus;
                //Don't decrypt at this level. the use Logic project for this

                //lblPatientNames.Text = _utility.Decrypt(thisPatient.LastName) + ", " + _utility.Decrypt(x.FirstName) + " " +
                //                       _utility.Decrypt(thisPatient.MiddleName)+" ";

                lblPatientNames.Text = (thisPatient.LastName) + ", " + (thisPatient.FirstName) + " " + (thisPatient.MiddleName) + " ";

                //    lblLastName.Text = "<strong><i>" + _utility.Decrypt(x.LastName) + "</i></strong>";
                if (thisPatient.PatientStatus.Equals("Active"))
                {
                    lblPatientStatus.Text = "<i class=fa fa-user-o text-success' aria-hidden='true'></i><strong class='label label-info fa-1x'>Patient Active</strong>";
                }
                else
                {
                    lblPatientStatus.Text = "<i class='fa fa-user-o text-danger' aria-hidden='true'></i><strong class='label label-danger fa-1x'>" + thisPatient.PatientStatus + "</strong>";
                }

                // string femaleIcon = "<i class='fa fa-female' aria-hidden='true'></i>";
                // string maleIcon = "<i class='fa fa-male' aria-hidden='true'></i>";

                //todo patientManagershould have the lookups resolved
                //if (x.Sex == 62)
                //{
                Session["Gender"] = Session["PatientSex"] = lblGender.Text = LookupLogic.GetLookupNameById(thisPatient.Sex);

                //_lookupManager.GetLookupNameFromId(thisPatient.Sex);
                //    Session["Gender"] = _lookupManager.GetLookupNameFromId(x.Sex).ToLower();
                //}
                //if (x.Sex == 61)
                //{
                //    lblGender.Text =_lookupManager.GetLookupNameFromId(x.Sex);
                //    Session["Gender"] = _lookupManager.GetLookupNameFromId(x.Sex).ToLower();
                //}
                //todo patientManagershould have the lookups resolved
                lblPatientType.Text = LookupLogic.GetLookupNameById(thisPatient.PatientType).ToUpper();
                // _lookupManager.GetLookupNameFromId(thisPatient.PatientType).ToUpper();

                //lblDOB.Text = thisPatient.DateOfBirth.ToString("dd-MMM-yyyy");
                var ptnMaritalStatus = PatientMaritalStatusManager.GetCurrentPatientMaritalStatus(thisPatient.PersonId);
                if (ptnMaritalStatus != null)
                {
                    lblmstatus.Text =
                        LookupLogic.GetLookupNameById(ptnMaritalStatus.MaritalStatusId)
                        .ToString()
                        .ToUpper();
                }
                else
                {
                    lblmstatus.Text = "<span class='label label-danger'> N/A </span>";
                }


                //    lblOtherNames.Text = "<strong></i>" + _utility.Decrypt(x.FirstName) + ' ' + _utility.Decrypt(x.MiddleName) + "</i></strong>";

                var age = PatientManager.CalculateYourAge(DoB);

                //lblAge.Text ="<strong><i>"+ Convert.ToString(myDate - DoB.Year)+" Years " + Convert.ToString(myDateMonth-DoB.Month) + " Months </i></strong>";
                lblAge.Text    = "<strong><i>" + age.Replace("Age:", "") + "</i></strong>";
                Session["Age"] = Convert.ToString(myDate - DoB.Year);
                // lblCCCReg.Text = x.EnrollmentNumber;
                lblCCCRegNo.Text            = thisPatient.EnrollmentNumber;
                lblEnrollmentDate.Text      = "" + thisPatient.EnrollmentDate.ToString("dd-MMM-yyyy");
                Session["DateOfEnrollment"] = thisPatient.EnrollmentDate.ToString("dd-MM-yyyy");

                //SET TB STATUS
                if (thisPatient.TBStatus < 1)
                {
                    lbltbstatus.Text = "<span class='fa fa-info-circle text-danger'> " + TBStatus + "<span>";
                }
                else
                {
                    TBStatus = LookupLogic.GetLookupNameById(thisPatient.TBStatus).ToString().ToUpper();
                    switch (TBStatus)
                    {
                    case "TBRX":
                        lbltbstatus.Text = "<span class='label label-danger'>" + TBStatus + "</span>";
                        break;

                    case "INH":
                        lbltbstatus.Text = "<span class='label label-warning'>" + TBStatus + "</span>";
                        break;

                    case "PRTB":
                        lbltbstatus.Text = "<span class='label label-warning'>" + TBStatus + "</span>";
                        break;

                    default:
                        lbltbstatus.Text = "<span class='label label-success'>" + TBStatus + "</span>";
                        break;
                    }
                }

                // SET NUTRITION STATUS
                if (thisPatient.NutritionStatus < 1)
                {
                    lblnutritionstatus.Text = "<span class='fa fa-info-circle text-danger'> " + NutritionStatus + "<span>";
                }
                else
                {
                    string nutrition = LookupLogic.GetLookupNameById(thisPatient.NutritionStatus);
                    if (!string.IsNullOrWhiteSpace(nutrition))
                    {
                        NutritionStatus = nutrition.ToUpper();
                    }

                    //lblnutritionstatus.Text = "<span class='label label-success'>" + NutritionStatus + "</span>";
                    switch (NutritionStatus)
                    {
                    case "OBESE":
                        lblnutritionstatus.Text = "<span class='label label-warning'>" + NutritionStatus + "</span>";
                        break;

                    case "MAM":
                        lblnutritionstatus.Text = "<span class='label label-warning'>" + NutritionStatus + "</span>";
                        break;

                    case "SAM":
                        lblnutritionstatus.Text = "<span class='label label-danger'>" + NutritionStatus + "</span>";
                        break;

                    default:
                        lblnutritionstatus.Text = "<span class='label label-success'>" + NutritionStatus + "</span>";
                        break;
                    }
                }

                // SET categorization:
                if ((DateTime.Now - thisPatient.EnrollmentDate).TotalDays < 365)
                {
                    IPatientEncounter patientCat = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");
                    DataTable         theDT      = patientCat.patientCategorizationAtEnrollment(HttpContext.Current.Session["PatientPK"].ToString());
                    if (theDT.Rows.Count > 0)
                    {
                        lblcategorization.Text = "<span class='label " + theDT.Rows[0][1].ToString() + "'>" + theDT.Rows[0][0].ToString() + "</span>";
                    }
                    else
                    {
                        lblcategorization.Text = "<span class='label label-danger'>Unstable</span>";
                    }
                }
                else
                {
                    if (thisPatient.categorization < 1)
                    {
                        lblcategorization.Text = "<span class='label label-danger'>Unstable</span>";
                    }
                    else
                    {
                        //categorization= LookupLogic.GetLookupNameById(thisPatient.categorization).ToString().ToUpper();
                        categorization = thisPatient.categorization.ToString();
                        switch (categorization)
                        {
                        case "1":
                            lblcategorization.Text = "<span class='label label-success'>Stable</span>";
                            break;

                        case "2":
                            lblcategorization.Text = "<span class='label label-danger'>Unstable</span>";
                            break;
                        }
                    }
                }
            }
        }
Example #20
0
        public DataTable loadPatientVitalSigns(string PatientMasterVisitID, string PatientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getPatientPreviousTriage(PatientMasterVisitID, PatientID));
        }
Example #21
0
        public DataTable loadPatientMilestones(string PatientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getPatientMilestones(PatientID));
        }
Example #22
0
        public PresentingComplaintsEntity loadPatientEncounter(string PatientMasterVisitID, string PatientID)
        {
            IPatientEncounter patientEncounter = (IPatientEncounter)ObjectFactory.CreateInstance("BusinessProcess.CCC.BPatientEncounter, BusinessProcess.CCC");

            return(patientEncounter.getPatientEncounter(PatientMasterVisitID, PatientID));
        }