public void GenerateRows(string HiddenStaffPermissionId)
    {
        objUserPreferences = new Streamline.UserBusinessServices.UserPrefernces();
        DataSet DataSetPermissions = null;
        DataSet dsTemp             = null;
        DataSet dsStaff            = null;

        dsUserPreferences = new Streamline.UserBusinessServices.DataSets.DataSetUserPrefrences();

        try
        {
            DataSet dtst = new DataSet();
            Session["Permissions"] = "";
            DataSetPermissions     = new DataSet();
            if (Session["StaffIdForPreferences"] != null && HiddenStaffPermissionId == string.Empty)
            {
                dsTemp = objUserPreferences.CheckStaffPermissions(Convert.ToInt32(Session["StaffIdForPreferences"]));
                dsUserPreferences.Staff.Merge(dsTemp.Tables[0]);
                dsUserPreferences.StaffPermissions.Merge(dsTemp.Tables[1]);
            }
            //Changes for merge.
            else if (Session["StaffIdForPreferences"] != null && HiddenStaffPermissionId != string.Empty)
            {
                if (Session["DataSetPermissionsList"] != null)
                {
                    if (((DataSet)(Session["DataSetPermissionsList"])).Tables.Count > 0)
                    {
                        dsUserPreferences = (Streamline.UserBusinessServices.DataSets.DataSetUserPrefrences)(Session["DataSetPermissionsList"]);
                    }
                }
                DataRow[] _DataRowPermissions = Streamline.UserBusinessServices.SharedTables.DataSetSystemActions.Tables[0].Select("ActionId in(" + HiddenStaffPermissionId + ")");
                for (int i = 0; i < _DataRowPermissions.Length; i++)
                {
                    DataRow DataRowNewPermissiosn = dsUserPreferences.StaffPermissions.NewRow();
                    DataRowNewPermissiosn["StaffId"]          = Convert.ToInt32(dsUserPreferences.Staff.Rows[0]["StaffId"]);
                    DataRowNewPermissiosn["ActionId"]         = _DataRowPermissions[i]["ActionId"];
                    DataRowNewPermissiosn["RowIdentifier"]    = System.Guid.NewGuid();
                    DataRowNewPermissiosn["CreatedBy"]        = Context.User.Identity.Name; // ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).UserCode;
                    DataRowNewPermissiosn["CreatedDate"]      = DateTime.Now;
                    DataRowNewPermissiosn["ModifiedBy"]       = Context.User.Identity.Name; //((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).UserCode;
                    DataRowNewPermissiosn["ModifiedDate"]     = DateTime.Now;
                    DataRowNewPermissiosn["NewlyAddedColumn"] = "Y";
                    dsUserPreferences.StaffPermissions.Rows.Add(DataRowNewPermissiosn);
                }
            }
            else if (Session["StaffIdForPreferences"] == null && HiddenStaffPermissionId != string.Empty)
            {
                DataRow[] _dataRow = Streamline.UserBusinessServices.SharedTables.DataSetSystemActions.Tables[0].Select("ActionId in (" + HiddenStaffPermissionId + ")");
                String[]  ActionId = HiddenStaffPermissionId.Split(',');
                if (ActionId.Length > 0)
                {
                    if (Session["DataSetPermissionsList"] == null)
                    {
                        DataSetPermissions = new DataSet();
                        DataSetPermissions.Tables.Add("StaffPermissions");
                        DataSetPermissions.Tables[0].Columns.Add("ActionId", System.Type.GetType("System.Int32"));
                        DataSetPermissions.Tables[0].Columns.Add("StaffPermissionId", System.Type.GetType("System.Int32"));
                        DataSetPermissions.Tables[0].Columns.Add("NewlyAddedColumn");
                        DataSetPermissions.Tables[0].Columns.Add("StaffId", System.Type.GetType("System.Int32"));
                        DataSetPermissions.Tables[0].Columns.Add("CreatedBy");
                        DataSetPermissions.Tables[0].Columns.Add("CreatedDate", System.Type.GetType("System.DateTime"));
                        DataSetPermissions.Tables[0].Columns.Add("ModifiedBy");
                        DataSetPermissions.Tables[0].Columns.Add("ModifiedDate", System.Type.GetType("System.DateTime"));
                        DataSetPermissions.Tables[0].Columns.Add("RecordDeleted");
                        DataSetPermissions.Tables[0].Columns.Add("DeletedBy");
                        DataSetPermissions.Tables[0].Columns.Add("DeletedDate", System.Type.GetType("System.DateTime"));
                        DataSetPermissions.Tables[0].Columns.Add("RowIdentifier", System.Type.GetType("System.Guid"));
                    }
                    else
                    {
                        dsTemp = (DataSet)Session["DataSetPermissionsList"];
                        dsUserPreferences.Merge(dsTemp);
                    }
                    Random ran = new Random();
                    for (int i = 0; i < ActionId.Length; i++)
                    {
                        //Random ran = new Random();
                        DataRow DataRowNewPermissiosn = dsUserPreferences.StaffPermissions.NewRow();
                        DataRowNewPermissiosn["StaffPermissionId"] = Convert.ToInt32(ran.Next().ToString());
                        DataRowNewPermissiosn["StaffId"]           = Convert.ToInt32(dsUserPreferences.Staff.Rows[0]["StaffId"]);
                        DataRowNewPermissiosn["ActionId"]          = Convert.ToInt32(_dataRow[i]["ActionId"]);
                        DataRowNewPermissiosn["RowIdentifier"]     = System.Guid.NewGuid();
                        DataRowNewPermissiosn["CreatedBy"]         = Context.User.Identity.Name; //((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).UserCode;
                        DataRowNewPermissiosn["CreatedDate"]       = DateTime.Now;
                        DataRowNewPermissiosn["ModifiedBy"]        = Context.User.Identity.Name; //((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).UserCode;
                        DataRowNewPermissiosn["ModifiedDate"]      = DateTime.Now;
                        DataRowNewPermissiosn["NewlyAddedColumn"]  = "Y";
                        dsUserPreferences.StaffPermissions.Rows.Add(DataRowNewPermissiosn);
                    }
                }
            }
            DataSetPermissions.Merge(dsUserPreferences.StaffPermissions);
            PanelPermissionsList.Controls.Clear();
            PanelPermissionsList.ScrollBars = ScrollBars.Vertical;
            Table tbPermissionsList = new Table();
            tbPermissionsList.ID = System.Guid.NewGuid().ToString();
            //tbPermissionsList.BorderWidth = 2;


            tbPermissionsList.Width = new Unit(100, UnitType.Percentage);

            TableHeaderRow  thTitle  = new TableHeaderRow();
            TableHeaderCell thBlank1 = new TableHeaderCell();

            //Screen Name
            TableHeaderCell thScreenName = new TableHeaderCell();
            thScreenName.Text = "Screen Name";
            thScreenName.Attributes.Add("onclick", "onHeaderClick(this)");
            thScreenName.Attributes.Add("ColumnName", "ScreenName");
            //thScreenName.CssClass = "handStyle";
            thScreenName.Attributes.Add("align", "left");

            //Action
            TableHeaderCell thAction = new TableHeaderCell();
            thAction.Text = "Action";
            thAction.Attributes.Add("onclick", "onHeaderClick(this)");
            thAction.Attributes.Add("ColumnName", "Action");
            //thAction.CssClass = "handStyle";
            thAction.Attributes.Add("align", "left");

            thTitle.Cells.Add(thBlank1);
            thTitle.Cells.Add(thScreenName);
            thTitle.Cells.Add(thAction);

            thTitle.CssClass = "GridViewHeaderText";

            tbPermissionsList.Rows.Add(thTitle);
            string rowStyle = "GridViewRowStyle";

            string staffPermissionId;
            string myscript = "<script id='Permissionslist' type='text/javascript'>";
            myscript += "function $deleteRecord(sender,e){";
            if (!string.IsNullOrEmpty(_deleteRowMessage))
            {
                myscript += " if (confirm ('" + _deleteRowMessage + "') == true ){" + this._onDeleteEventHandler + "(sender,e)}}";
            }
            else
            {
                myscript += "}";
            }
            if (DataSetPermissions != null && DataSetPermissions.Tables["StaffPermissions"].Rows.Count > 0)
            {
                myscript += "function RegisterPermissionsListControlEvents(){try{";
                if (DataSetPermissions.Tables[0].Rows.Count > 0)
                {
                    Random    ran = new Random();
                    DataRow[] dtr = DataSetPermissions.Tables[0].Select("ISNULL(RecordDeleted,'N')<>'Y'");
                    DataView  dtv = DataSetPermissions.Tables[0].DefaultView;
                    dtv.RowFilter = "ISNULL(RecordDeleted,'N')<>'Y'";

                    dtst.Merge(dtr);
                    foreach (DataRow dr in dtst.Tables[0].Rows)
                    {
                        if (dtst.Tables[0].Columns.Contains("StaffPermissionId"))
                        {
                            if (dr["StaffPermissionId"].ToString() != "")
                            {
                                staffPermissionId = dr["StaffPermissionId"].ToString();
                            }
                            else
                            {
                                staffPermissionId       = ran.Next().ToString();
                                dr["StaffPermissionId"] = staffPermissionId;
                            }
                        }
                        else
                        {
                            staffPermissionId = ran.Next().ToString();
                        }
                        string    screeName      = "Medication Management";
                        DataRow[] _DataRowAction = Streamline.UserBusinessServices.SharedTables.DataSetSystemActions.Tables[0].Select("ActionId in(" + Convert.ToInt32(dr["ActionId"]) + ")");
                        string    action         = _DataRowAction[0]["Action"].ToString();
                        if (Session["Permissions"].ToString() == "")
                        {
                            Session["Permissions"] = _DataRowAction[0]["ActionId"].ToString();
                        }
                        else
                        {
                            Session["Permissions"] = Session["Permissions"] + "," + _DataRowAction[0]["ActionId"].ToString();
                        }
                        tbPermissionsList.Rows.Add(GenerateSubRows(dr, staffPermissionId, screeName, action, tbPermissionsList.ClientID, ref myscript, rowStyle));
                        rowStyle = rowStyle == "GridViewRowStyle" ? "GridViewAlternatingRowStyle" : "GridViewRowStyle";
                    }
                }
                Session["DataSetPermissionsList"] = dsUserPreferences;
                PanelPermissionsList.Controls.Add(tbPermissionsList);
                myscript += "}catch(e){  Streamline.SmartClient.ExceptionManager.getInstance().publishException(ERROR_CODE_REGULAR, e);}}</script>";
                Page.RegisterClientScriptBlock(this.ClientID, myscript);
            }
        }
        catch (Exception ex)
        {
            if (ex.Data["CustomExceptionInformation"] == null)
            {
                ex.Data["CustomExceptionInformation"] = "";
            }
            else
            {
                ex.Data["CustomExceptionInformation"] = "";
            }
            if (ex.Data["DatasetInfo"] == null)
            {
                ex.Data["DatasetInfo"] = null;
            }
            throw (ex);
        }
    }
    public override void Activate()
    {
        DataSet dsTemp = null;

        try
        {
            if (System.Configuration.ConfigurationSettings.AppSettings["OpenFromSmartCare"].ToString().ToUpper() == "FALSE")
            {
                LinkButtonLogout.Style["display"]    = "block";
                LinkButtonStartPage.Style["display"] = "block";
            }
            LabelPrescriberName.Text = ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).LastName + ", " + ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).FirstName + " " + (((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity)).StaffDegree;
            #region --Made changes by Pradeep as per task#2711
            string LastPrescriptionReviewTime = ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).LastPrescriptionReviewTime;
            if (LastPrescriptionReviewTime.ToString() != string.Empty)
            {
                LabelReviewDateTime.Text = Convert.ToDateTime(LastPrescriptionReviewTime).ToString("MM/dd/yyyy hh:mm tt");;
            }

            #endregion --
            //LabelReviewDateTime.Text = ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).LastPrescriptionReviewTime;
            HiddenFieldRDLCurrentDateTime.Value = DateTime.Now.ToString();
            if (Session["DataSetSecurityQustion"] != null)
            {
                dsTemp = (DataSet)Session["DataSetSecurityQustion"];
                Random random = new Random();
                int    num    = random.Next(0, dsTemp.Tables[0].Rows.Count);
                if (dsTemp.Tables[0].Rows.Count > 0)
                {
                    LabelSecurityQuestion.Text      = dsTemp.Tables["StaffSecurityQuestion"].Rows[num]["CodeName"].ToString();
                    HiddenFieldSecurityAnswer.Value = dsTemp.Tables["StaffSecurityQuestion"].Rows[num]["SecurityAnswer"].ToString();
                }
            }
            else
            {
                objUserPreferences = new UserPrefernces();
                dsTemp             = objUserPreferences.GetSecurityQuestions(Convert.ToInt32((((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).UserId)));
                Session["DataSetSecurityQustion"] = dsTemp;
                Random random = new Random();
                int    num    = random.Next(0, dsTemp.Tables[0].Rows.Count);
                if (dsTemp.Tables[0].Rows.Count > 0)
                {
                    LabelSecurityQuestion.Text      = dsTemp.Tables["StaffSecurityQuestion"].Rows[num]["CodeName"].ToString();
                    HiddenFieldSecurityAnswer.Value = dsTemp.Tables["StaffSecurityQuestion"].Rows[num]["SecurityAnswer"].ToString();
                }
            }
            GetRDLCContents();
            //if (Session["DataSetSecurityQustion"] != null)
            //{
            //    dsSecurityQuestion = new DataSet();
            //    dsSecurityQuestion = (DataSet)Session["DataSetSecurityQustion"];
            //    Random ran = new Random();
            //    int randomNumber = ran.Next(0,dsSecurityQuestion.Tables["StaffSecurityQuestion"].Rows.Count);
            //    LabelSecurityQuestion.Text = dsSecurityQuestion.Tables["StaffSecurityQuestion].Rows[randomNumber]["CodeName"];
            //    HiddenFieldSecurityAnswer.Value = dsSecurityQuestion.Tables[StaffSecurityQuestion].Rows[randomNumber]["Answer"];
            //}
        }
        catch (Exception ex)
        {
            throw ex;
        }
        finally
        {
            objUserPreferences = null;
        }
    }
    protected void ButtonApprove_Click(object sender, EventArgs e)
    {
        int count = 0;

        new Streamline.UserBusinessServices.MedicationLogin();
        DataSet dsTemp = null;

        try
        {
            if (LabelErrorMessage.Text == "Your account is disabled.Please contact system administrator.")
            {
                Response.Redirect("MedicationLogin.aspx");
            }
            if (HiddenFieldFirstChance.Value == "")
            {
                HiddenFieldFirstChance.Value = "0";
            }

            if (HiddenFieldSecurityAnswer.Value.Trim().ToLower() == TextBoxAnswer.Text.Trim().ToLower())
            {
                ImageError.Style.Add("display", "none");
                ImageError.Style.Add("display", "none");
                LabelErrorMessage.Style.Add("display", "none");
                TextBoxAnswer.Focus();
                LabelErrorMessage.Text = "";
                objUserPreferences     = new Streamline.UserBusinessServices.UserPrefernces();
                count = objUserPreferences.ApprovePrescription(((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).UserId, ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).LastPrescriptionReviewTime, HiddenFieldRDLCurrentDateTime.Value);
                ((Streamline.BaseLayer.StreamlineIdentity)Context.User.Identity).LastPrescriptionReviewTime = HiddenFieldRDLCurrentDateTime.Value;
                ScriptManager.RegisterStartupScript(LabelErrorMessage, LabelErrorMessage.GetType(), ClientID.ToString(), "redirectToStartPage();", true);
                //return count;
            }
            else
            {
                HiddenFieldFirstChance.Value = Convert.ToString(Convert.ToInt32(HiddenFieldFirstChance.Value) + 1);
                if (Convert.ToInt32(HiddenFieldFirstChance.Value) >= 2)
                {
                    if (HiddenFieldSecondChance.Value == "")
                    {
                        HiddenFieldSecondChance.Value = "0";
                    }
                    HiddenFieldSecondChance.Value = Convert.ToString(Convert.ToInt32(HiddenFieldSecondChance.Value) + 1);
                    if (HiddenFieldSecondChance.Value == "1")
                    {
                        dsTemp = (DataSet)Session["DataSetSecurityQustion"];
                        Random random = new Random();
                        if (dsTemp != null)
                        {
                            int num = random.Next(0, dsTemp.Tables[0].Rows.Count);
                            if (dsTemp.Tables[0].Rows.Count > 0)
                            {
                                LabelSecurityQuestion.Text      = dsTemp.Tables["StaffSecurityQuestion"].Rows[num]["CodeName"].ToString();
                                HiddenFieldSecurityAnswer.Value = dsTemp.Tables["StaffSecurityQuestion"].Rows[num]["SecurityAnswer"].ToString();
                            }
                        }
                    }
                    if (Convert.ToInt32(HiddenFieldSecondChance.Value) > 2)
                    {
                        objMedicationLogin = new Streamline.UserBusinessServices.MedicationLogin();
                        objMedicationLogin.chkCountLogin(((StreamlineIdentity)(Context.User.Identity)).UserCode);

                        ImageError.Style.Add("display", "block");
                        ImageError.Style.Add("display", "block");
                        LabelErrorMessage.Style.Add("display", "block");
                        TextBoxAnswer.Focus();
                        LabelErrorMessage.Text = "Your account is disabled.Please contact system administrator.";
                        return;
                    }
                }
                ImageError.Style.Add("display", "block");
                ImageError.Style.Add("display", "block");
                LabelErrorMessage.Style.Add("display", "block");
                TextBoxAnswer.Focus();
                LabelErrorMessage.Text = "The answers provided do not match the answers on record.";
            }
        }
        catch (Exception ex)
        {
            throw;
        }
    }
Exemple #4
0
        private void FillGridView(string sortField, string activeUsersOnly, string searchFilter, string prescribersOnly, string epcsprescribers)
        {
            DataTable dtTemp;
            DataSet   dsTemp;

            objUserPreferences = new UserPrefernces();
            string filterString = "";

            string[] filters = searchFilter.Split(' ');
            if (filters.Length > 0 && searchFilter != "")
            {
                if (filters.Length == 1)
                {
                    filterString = "(lastname like '%" + filters[0] + "%' or firstname like '%" + filters[0] + "%') AND ";
                }
                else
                {
                    filterString = "(lastname like '%" + filters[1] + "%' and firstname like '%" + filters[0] + "%') AND ";
                }
            }
            try
            {
                _dsUserPreferences = new Streamline.UserBusinessServices.DataSets.DataSetUserPrefrences();
                dsTemp             = objUserPreferences.DownloadStaffMedicationDetail();
                _dsUserPreferences.Staff.Merge(dsTemp.Tables[0]);
                dtTemp = _dsUserPreferences.Staff.Clone();
                if (activeUsersOnly == "Y")
                {
                    filterString = filterString + "ISNULL(Active,'Y')<>'N' and ISNULL(RecordDeleted,'N')<>'Y'";
                    DataRow[] dataRowUsers = _dsUserPreferences.Tables["Staff"].Select(filterString, sortField);
                    for (int i = 0; i < dataRowUsers.Length; i++)
                    {
                        dtTemp.ImportRow(dataRowUsers[i]);
                    }
                    //DataGridUsers.DataSource = dtTemp;
                    //DataGridUsers.DataBind();
                    lvUserList.DataSource = dtTemp;
                    lvUserList.DataBind();
                    Session["DataViewUserManagement"] = _dsUserPreferences.Tables["Staff"].DefaultView;
                }
                else if (prescribersOnly == "Y")
                {
                    filterString = filterString + "ISNULL(Prescriber,'Y')<>'N' and ISNULL(RecordDeleted,'N')<>'Y'";
                    DataRow[] dataRowUsers = _dsUserPreferences.Tables["Staff"].Select(filterString, sortField);
                    for (int i = 0; i < dataRowUsers.Length; i++)
                    {
                        dtTemp.ImportRow(dataRowUsers[i]);
                    }
                    lvUserList.DataSource = dtTemp;
                    lvUserList.DataBind();
                    Session["DataViewUserManagement"] = _dsUserPreferences.Tables["Staff"].DefaultView;
                }

                else if (epcsprescribers == "Y")
                {
                    filterString = filterString + "EPCS = 'Y' and ISNULL(RecordDeleted,'N')<>'Y'";
                    DataRow[] dataRowUsers = _dsUserPreferences.Tables["Staff"].Select(filterString, sortField);
                    for (int i = 0; i < dataRowUsers.Length; i++)
                    {
                        dtTemp.ImportRow(dataRowUsers[i]);
                    }
                    lvUserList.DataSource = dtTemp;
                    lvUserList.DataBind();
                    Session["DataViewUserManagement"] = _dsUserPreferences.Tables["Staff"].DefaultView;
                }
                else
                {
                    filterString = filterString + "ISNULL(RecordDeleted,'N')<>'Y'";
                    DataRow[] dataRowUsers = _dsUserPreferences.Tables["Staff"].Select(filterString, sortField);
                    for (int i = 0; i < dataRowUsers.Length; i++)
                    {
                        dtTemp.ImportRow(dataRowUsers[i]);
                    }
                    //DataGridUsers.DataSource = dtTemp;
                    //DataGridUsers.DataBind();
                    lvUserList.DataSource = dtTemp;
                    lvUserList.DataBind();
                    Session["DataViewUserManagement"] = dtTemp.DefaultView;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dtTemp = null;
            }
        }