Exemplo n.º 1
0
    public void RenderVerticalMenu()
    {
        if (!String.IsNullOrEmpty(BaseMstr.SelectedPatientID))
        {
            DataSet dsTreatments, dsEncounters, dsAssessments;

            if (Session["TREATMENTS_LIST_DS"] == null)
            {
                Session["TREATMENTS_LIST_DS"] = treatment.GetTreatmentListDS(BaseMstr, BaseMstr.SelectedPatientID);
            }
            dsTreatments = (DataSet)Session["TREATMENTS_LIST_DS"];

            if (Session["ENCOUNTERS_LIST_DS"] == null)
            {
                Session["ENCOUNTERS_LIST_DS"] = encounter.GetAllEncounterListDS(BaseMstr, BaseMstr.SelectedPatientID);
            }
            dsEncounters = (DataSet)Session["ENCOUNTERS_LIST_DS"];

            if (Session["ASSESSMENTS_LIST_DS"] == null)
            {
                Session["ASSESSMENTS_LIST_DS"] = encounter.GetAllEncounterIntakeDS(BaseMstr, BaseMstr.SelectedPatientID);
            }
            dsAssessments = (DataSet)Session["ASSESSMENTS_LIST_DS"];


            CVerticalMenu vmMenu = new CVerticalMenu(BaseMstr, dsTreatments, dsEncounters, dsAssessments);
            vmMenu.RenderTreePanel(divVerticalMenu);
        }
    }
Exemplo n.º 2
0
    protected bool DefultEncounterSelect(string strPatientID, long lTreatmentID)
    {
        bool       bTreatClosed = false;
        CEncounter enc          = new CEncounter();
        CTreatment treatment    = new CTreatment();
        DataSet    dsTreatment  = treatment.GetTreatmentListDS(Master, Master.SelectedPatientID);
        DataSet    dsEncs       = enc.GetAllEncounterListDS(Master, strPatientID);

        long lTreatmentCount = dsTreatment.Tables[0].Rows.Count;

        DataRow[] drClosedCases     = dsTreatment.Tables[0].Select("case_closed = 1");
        long      lTreatClosed      = drClosedCases.GetLength(0);
        bool      bAllowClosedCases = (lTreatmentCount == lTreatClosed) ? true : false;

        foreach (DataTable tdt in dsTreatment.Tables)
        {
            foreach (DataRow tdr in tdt.Rows)
            {
                if (!tdr.IsNull("case_closed"))
                {
                    bTreatClosed = (Convert.ToInt32(tdr["case_closed"]) == 1) ? true : false;
                }

                if (!bTreatClosed || (bTreatClosed && bAllowClosedCases))
                {
                    bool bCaseClosed = false;

                    DataRow[] drEncs = dsEncs.Tables[0].Select("treatment_id = " + Convert.ToInt32(tdr["treatment_id"]));

                    long lEncCount  = drEncs.GetLength(0);
                    long lClosedEnc = 0;
                    foreach (DataRow drEncDr in drEncs)
                    {
                        if (!drEncDr.IsNull("closed"))
                        {
                            if (Convert.ToInt32(drEncDr["closed"]) == 1)
                            {
                                ++lClosedEnc;
                            }
                        }
                    }
                    bool bAllowClosedEncs = (lEncCount == lClosedEnc) ? true : false;

                    if (dsEncs != null)
                    {
                        foreach (DataTable dt in dsEncs.Tables)
                        {
                            foreach (DataRow dr in dt.Rows)
                            {
                                if (!dr.IsNull("closed"))
                                {
                                    bCaseClosed = (Convert.ToInt32(dr["closed"]) == 1) ? true : false;
                                }
                                if (!dr.IsNull("encounter_type_id"))
                                {
                                    long lEncounterType = Convert.ToInt32(dr["encounter_type_id"]);
                                    if ((lEncounterType != (long)EncounterType.ADMIN_NOTE && lEncounterType != (long)EncounterType.GROUP_NOTE) && (!bCaseClosed || (bCaseClosed && bAllowClosedEncs)))
                                    {
                                        Master.SelectedEncounterID = dr["encounter_id"].ToString();
                                        return(true);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        return(false);
    }