Пример #1
0
        /// <summary>
        /// To Insert Role Privilages
        /// </summary>
        /// <param name="RolePrivilegesList"></param>
        /// <returns></returns>
        public int InsertRolePrivilages(RolePrivilegesBO RolePrivilegesList)
        {
            int Result = 0;

            OracleConnection cnn = new OracleConnection(AppConfiguration.ConnectionString);

            cnn.Open();
            OracleCommand dcmd = new OracleCommand("USP_MST_INS_ROLE_PRIV", cnn);

            dcmd.CommandType = CommandType.StoredProcedure;
            int count = Convert.ToInt32(dcmd.CommandType);

            try
            {
                dcmd.Parameters.Add("USERID_", RolePrivilegesList.UserID);
                dcmd.Parameters.Add("MENUID_", RolePrivilegesList.MenuID);
                dcmd.Parameters.Add("VIEWPRIVILEGE_", RolePrivilegesList.CanView);
                dcmd.Parameters.Add("UPDATEPRIVILEGE_", RolePrivilegesList.CanUpdate);
                dcmd.Parameters.Add("CREATEDBY_", RolePrivilegesList.UpdatedBy);

                Result = dcmd.ExecuteNonQuery();
            }

            catch
            {
                throw;
            }
            finally
            {
                dcmd.Dispose();
                cnn.Close();
                cnn.Dispose();
            }
            return(Result);
        }
Пример #2
0
        /// <summary>
        /// To generate child menu based on parentid from database
        /// </summary>

        private void GenerateChildMenu(string parentMenuID)
        {
            DataView menuView = new DataView(subMenuTable);

            menuView.RowFilter = "PARENTMENUID = " + parentMenuID;

            for (int i = 0; i < menuView.Count; i++)
            {
                objPriv        = new RolePrivilegesBO();
                objPriv.MenuID = Convert.ToInt32(menuView[i]["CHILDMENUID"]);

                //sb.Clear();
                //paddingCount = Convert.ToInt32(menuView[i]["CHILDLEVEL"]);
                //for (int j = 1; j < paddingCount; j++)
                //{
                //    if (paddingCount == 2)
                //        sb.Append("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;------");
                //    else if (j < (paddingCount - 1))
                //        sb.Append("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");
                //    else
                //        sb.Append("------");
                //}

                objPriv.ParentMenuID    = Convert.ToInt32(menuView[i]["PARENTMENUID"]);
                objPriv.MenuDescription = menuView[i]["MENUDESCRIPTION"].ToString();
                objPriv.ChildMenuCount  = Convert.ToInt32(menuView[i]["CHILDMENUCOUNT"]);
                objPriv.MenuLevel       = Convert.ToInt32(menuView[i]["CHILDLEVEL"]);
                RolePrivilegesLst.Add(objPriv);

                GenerateChildMenu(menuView[i]["CHILDMENUID"].ToString());
            }
            menuView = null;
        }
Пример #3
0
        /// <summary>
        /// Set Grid Data source
        /// </summary>
        /// <param name="addRow"></param>
        /// <param name="deleteRow"></param>e
        private void GenerateMenuItems()
        {
            RolePrivilegesLst = new RolePrivilegesList();
            RolePrivilegesBLL objRolePrivBLL = new RolePrivilegesBLL();

            DataTable mainMenuTable = objRolePrivBLL.GetRolePrivileges();

            subMenuTable = mainMenuTable.Copy();

            DataView MainMenuView = mainMenuTable.AsDataView();
            DataView SubMenuView  = subMenuTable.AsDataView();

            MainMenuView.RowFilter = "PARENTMENUID=0";

            for (int i = 0; i < MainMenuView.Count; i++)
            {
                objPriv                 = new RolePrivilegesBO();
                objPriv.MenuID          = Convert.ToInt32(MainMenuView[i]["CHILDMENUID"]);
                objPriv.MenuDescription = MainMenuView[i]["MENUDESCRIPTION"].ToString();
                objPriv.ChildMenuCount  = Convert.ToInt32(MainMenuView[i]["CHILDMENUCOUNT"]);
                objPriv.MenuLevel       = Convert.ToInt32(MainMenuView[i]["CHILDLEVEL"]);
                objPriv.ParentMenuID    = Convert.ToInt32(MainMenuView[i]["PARENTMENUID"]);

                RolePrivilegesLst.Add(objPriv);

                GenerateChildMenu(MainMenuView[i]["CHILDMENUID"].ToString());
            }

            mainMenuTable = null;

            rptRolePrivileges.DataSource = RolePrivilegesLst;
            rptRolePrivileges.DataBind();
        }
Пример #4
0
        /// <summary>
        /// Chek User permitions and set his menu controls
        /// </summary>
        private void CheckPrivilege()
        {
            RolePrivilegesBLL privBLL = new RolePrivilegesBLL();

            PrivilegeList = privBLL.GetROLEPRIId(Convert.ToInt32(Session["USER_ID"]));

            MenuItem navMenuItem = null;

            for (int mnuItmIDX = NavigationMenu.Items.Count - 1; mnuItmIDX > 0; mnuItmIDX--)
            {
                navMenuItem = NavigationMenu.Items[mnuItmIDX];
                CheckChildNavigationMenus(navMenuItem);
                if (navMenuItem.Value.ToUpper() != "Help".ToUpper() &&
                    navMenuItem.Value.ToUpper() != "AboutUs".ToUpper() &&
                    navMenuItem.Value.ToUpper() != "onlinehelp".ToUpper())
                {
                    result = HasViewPermission(navMenuItem.Value);

                    if ((result != null && result.CanView == "N" && result.CanUpdate == "N") || navMenuItem.ChildItems.Count == 0)
                    {
                        NavigationMenu.Items.RemoveAt(mnuItmIDX);
                    }
                    else if (result != null && Session["PROJECT_ID"] == null)
                    {
                        if (result.ProjectDependent != null)
                        {
                            if (result.ProjectDependent == "Y")
                            {
                                //navMenuItem.NavigateUrl = ResolveUrl(projectURL + projectParams);
                                navMenuItem.Selectable = false;
                                navMenuItem.ToolTip    = "Select a Project to continue.";
                                //NavigationMenu.Items.RemoveAt(mnuItmIDX);
                            }
                        }
                    }
                    else if (result != null && Session["HH_ID"] == null)
                    {
                        if (result.PAPDependent != null)
                        {
                            if (result.PAPDependent == "Y")
                            {
                                //navMenuItem.NavigateUrl = ResolveUrl("~/UI/Compensation/PAPList.aspx");
                                navMenuItem.Selectable = false;
                                navMenuItem.ToolTip    = "Select a PAP to continue.";
                                //NavigationMenu.Items.RemoveAt(mnuItmIDX);
                            }
                        }
                    }
                }
            }
        }
Пример #5
0
        /// <summary>
        /// To Insert Role Privilages
        /// </summary>
        /// <param name="RolePrivilegesList"></param>
        /// <returns></returns>
        public int InsertRolePrivilages(RolePrivilegesBO RolePrivilegesList)
        {
            RolePrivilegesDAL RolePrivilegesDAL = new RolePrivilegesDAL(); //Data pass -to Database Layer

            try
            {
                return(RolePrivilegesDAL.InsertRolePrivilages(RolePrivilegesList));
            }
            catch
            {
                throw;
            }
            finally
            {
                RolePrivilegesDAL = null;
            }
        }
Пример #6
0
        /// <summary>
        /// Chek User permitions
        /// </summary>
        private RolePrivilegesBO HasViewPermission(string menuValue)
        {
            result = PrivilegeList.Find(
                delegate(RolePrivilegesBO priv)
            {
                return(priv.MenuName.ToUpper() == menuValue.ToUpper());
            }
                );

            return(result);
            //if (result != null && (result.CanView == "Y" || result.CanUpdate == "Y"))
            //{
            //    return true;
            //}
            //else
            //    return false;
        }
Пример #7
0
        /// <summary>
        /// Chek User permitions and set his menu controls
        /// </summary>
        void CheckChildNavigationMenus(MenuItem item)
        {
            for (int childItmIDX = item.ChildItems.Count - 1; childItmIDX >= 0; childItmIDX--)
            {
                // Recursively call the CheckChildNavigationMenus method to
                // traverse the tree and display all child menu items.
                CheckChildNavigationMenus(item.ChildItems[childItmIDX]);
                if (item.ChildItems[childItmIDX].Value.ToUpper() != "Help".ToUpper() &&
                    item.ChildItems[childItmIDX].Value.ToUpper() != "AboutUs".ToUpper() &&
                    item.ChildItems[childItmIDX].Value.ToUpper() != "onlinehelp".ToUpper())
                {
                    result = HasViewPermission(item.ChildItems[childItmIDX].Value);

                    if (result != null && result.CanView == "N" && result.CanUpdate == "N")
                    {
                        item.ChildItems.RemoveAt(childItmIDX);
                    }
                    else if (Session["PROJECT_ID"] == null)
                    {
                        if (result != null && result.ProjectDependent != null)
                        {
                            if (result.ProjectDependent == "Y")
                            {
                                //item.ChildItems[childItmIDX].NavigateUrl = ResolveUrl(projectURL + projectParams);
                                item.ChildItems[childItmIDX].Selectable = false;
                                item.ChildItems[childItmIDX].ToolTip    = "Select a Project to continue.";
                                //item.ChildItems.RemoveAt(childItmIDX);
                            }
                        }
                    }
                    else if (result != null && Session["HH_ID"] == null)
                    {
                        if (result.PAPDependent != null)
                        {
                            if (result.PAPDependent == "Y")
                            {
                                //item.ChildItems[childItmIDX].NavigateUrl = ResolveUrl("~/UI/Compensation/PAPList.aspx");
                                item.ChildItems[childItmIDX].Selectable = false;
                                item.ChildItems[childItmIDX].ToolTip    = "Select a PAP to continue.";
                                //item.ChildItems.RemoveAt(childItmIDX);
                            }
                        }
                    }
                }
            }
        }
Пример #8
0
        /// <summary>
        /// Tofetch role privileges based on userID
        /// </summary
        public void getRolePrivByUserID()
        {
            int userID = Convert.ToInt32(UserIDDropDownList.SelectedItem.Value.ToString());

            if (userID > 0)
            {
                CheckBox chkView   = null;
                CheckBox chkUpdate = null;

                RolePrivilegesBO   objRolePrivileges    = new RolePrivilegesBO();
                RolePrivilegesBLL  RolePrivilegesBLLobj = new RolePrivilegesBLL();
                RolePrivilegesList RolePrivilegesList   = new RolePrivilegesList();
                RolePrivilegesList = RolePrivilegesBLLobj.GetROLEPRIId(userID);
                Literal litMenuID = null;

                // Clear the controls.
                ClearGridSelections();

                // Populate the controls
                foreach (RolePrivilegesBO oRolePrivilegesList in RolePrivilegesList)
                {
                    foreach (RepeaterItem rptRow in rptRolePrivileges.Items)
                    {
                        litMenuID = (Literal)rptRow.FindControl("litMenuID");
                        chkView   = (CheckBox)rptRow.FindControl("chkView");
                        chkUpdate = (CheckBox)rptRow.FindControl("chkUpdate");

                        if (oRolePrivilegesList.MenuID.ToString() == litMenuID.Text)
                        {
                            if (oRolePrivilegesList.CanView == "Y")
                            {
                                chkView.Checked = true;
                            }

                            if (oRolePrivilegesList.CanUpdate == "Y")
                            {
                                chkUpdate.Checked = true;
                            }

                            break;
                        }
                    }
                }
            }
        }
Пример #9
0
        /// <summary>
        /// To bind values to dropdownlist
        /// </summary>
        private void BindUser()
        {
            RolePrivilegesBO  objRolePrivileges    = new RolePrivilegesBO();
            RolePrivilegesBLL RolePrivilegesBLLobj = new RolePrivilegesBLL();

            UserBLL  objUserBLL  = new UserBLL();
            UserList objUserList = new UserList();
            UserBO   oBOUser     = null;

            oBOUser          = new UserBO();
            oBOUser.UserName = string.Empty;
            oBOUser.UserID   = 0;
            oBOUser.RoleID   = 0;

            ddlAssignTo.DataSource     = objUserBLL.GetUsers(oBOUser);
            ddlAssignTo.DataTextField  = "UserName";
            ddlAssignTo.DataValueField = "UserID";
            ddlAssignTo.DataBind();
        }
Пример #10
0
        /// <summary>
        /// Check User Has Update Pemitions For Selected Page
        /// </summary>
        /// <param name="privilegeValue"></param>
        /// <returns></returns>
        public static bool HasUpdatePrivilege(string privilegeValue)
        {
            RolePrivilegesList PrivilegeList = null;
            RolePrivilegesBO   result        = null;
            string             userID        = string.Empty;

            if ((HttpContext.Current.Session["USER_ID"]) != null)
            {
                userID = HttpContext.Current.Session["USER_ID"].ToString();
            }
            else
            {
                HttpContext.Current.Response.Redirect("~\\Login.aspx");
            }
            bool hasUpdatePrivilege = false;

            if (HttpContext.Current.Cache["PRIV_" + userID] != null)
            {
                PrivilegeList = (RolePrivilegesList)HttpContext.Current.Cache["PRIV_" + userID];
            }
            else
            {
                PrivilegeList = (new RolePrivilegesBLL()).GetROLEPRIId(Convert.ToInt32(userID));
                HttpContext.Current.Cache.Insert("PRIV_" + userID, PrivilegeList, null, System.Web.Caching.Cache.NoAbsoluteExpiration, TimeSpan.FromHours(12));
            }

            result = PrivilegeList.Find(
                delegate(RolePrivilegesBO priv)
            {
                return(priv.MenuName.ToUpper() == privilegeValue.ToUpper());
            }
                );

            if (result != null && result.CanUpdate == "Y")
            {
                hasUpdatePrivilege = true;
            }

            return(hasUpdatePrivilege);
        }
Пример #11
0
        /// <summary>
        /// to set values to dropdownlist from database
        /// </summary>

        public void getuserName()
        {
            RolePrivilegesBO  objRolePrivileges    = new RolePrivilegesBO();
            RolePrivilegesBLL RolePrivilegesBLLobj = new RolePrivilegesBLL();

            UserBLL  objUserBLL  = new UserBLL();
            UserList objUserList = new UserList();
            UserBO   oBOUser     = null;

            oBOUser          = new UserBO();
            oBOUser.UserName = string.Empty;
            oBOUser.UserID   = 0;
            oBOUser.RoleID   = 0;
            objUserList      = objUserBLL.GetUsers(oBOUser);

            UserIDDropDownList.DataSource     = objUserBLL.GetUsers(oBOUser);
            UserIDDropDownList.DataTextField  = "UserName";
            UserIDDropDownList.DataValueField = "UserID";
            UserIDDropDownList.DataBind();
            UserIDDropDownList.Items.Insert(0, new ListItem("-- Select --", "0"));
            UserIDDropDownList.SelectedIndex = 0;
        }
Пример #12
0
        /// <summary>
        /// To Get ROLE PRI Id
        /// </summary>
        /// <param name="UserID"></param>
        /// <returns></returns>
        public RolePrivilegesList GetROLEPRIId(int UserID)
        {
            OracleConnection cnn = new OracleConnection(AppConfiguration.ConnectionString);
            OracleCommand    cmd;

            string proc = "USP_MST_GET_ROLEBYUSERID";

            cmd             = new OracleCommand(proc, cnn);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("USERID_", UserID);
            cmd.Parameters.Add("Sp_recordset", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

            cmd.Connection.Open();

            OracleDataReader   dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            RolePrivilegesBO   RolePrivilegesObj  = null;
            RolePrivilegesList RolePrivilegesList = new RolePrivilegesList();

            while (dr.Read())
            {
                RolePrivilegesObj = new RolePrivilegesBO();

                if (!dr.IsDBNull(dr.GetOrdinal("USERID")))
                {
                    RolePrivilegesObj.UserID = dr.GetInt32(dr.GetOrdinal("USERID"));
                }
                if (!dr.IsDBNull(dr.GetOrdinal("MENUID")))
                {
                    RolePrivilegesObj.MenuID = dr.GetInt32(dr.GetOrdinal("MENUID"));
                }
                if (!dr.IsDBNull(dr.GetOrdinal("MENULEVEL")))
                {
                    RolePrivilegesObj.MenuLevel = dr.GetInt32(dr.GetOrdinal("MENULEVEL"));
                }
                if (!dr.IsDBNull(dr.GetOrdinal("MENUNAME")))
                {
                    RolePrivilegesObj.MenuName = dr.GetString(dr.GetOrdinal("MENUNAME"));
                }
                if (!dr.IsDBNull(dr.GetOrdinal("CANVIEW")))
                {
                    RolePrivilegesObj.CanView = dr.GetString(dr.GetOrdinal("CANVIEW"));
                }
                if (!dr.IsDBNull(dr.GetOrdinal("CANUPDATE")))
                {
                    RolePrivilegesObj.CanUpdate = dr.GetString(dr.GetOrdinal("CANUPDATE"));
                }
                if (!dr.IsDBNull(dr.GetOrdinal("CHILDMENUCOUNT")))
                {
                    RolePrivilegesObj.ChildMenuCount = dr.GetInt32(dr.GetOrdinal("CHILDMENUCOUNT"));
                }

                if (!dr.IsDBNull(dr.GetOrdinal("PROJDEPENDENT")))
                {
                    RolePrivilegesObj.ProjectDependent = dr.GetString(dr.GetOrdinal("PROJDEPENDENT"));
                }
                else
                {
                    RolePrivilegesObj.ProjectDependent = "N";
                }

                if (!dr.IsDBNull(dr.GetOrdinal("PAPDEPENDENT")))
                {
                    RolePrivilegesObj.PAPDependent = dr.GetString(dr.GetOrdinal("PAPDEPENDENT"));
                }
                else
                {
                    RolePrivilegesObj.PAPDependent = "N";
                }

                RolePrivilegesList.Add(RolePrivilegesObj);
            }

            dr.Close();
            return(RolePrivilegesList);
        }
Пример #13
0
        /// <summary>
        /// To save details to database
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>

        protected void SaveButton_Click(object sender, EventArgs e)
        {
            string message = string.Empty;
            int    userID  = Convert.ToInt32(UserIDDropDownList.SelectedItem.Value.ToString());

            int      count     = 0;
            string   noneValue = String.Empty;
            CheckBox chkView   = null;
            CheckBox chkUpdate = null;

            RolePrivilegesBLL  RolePrivilegesBLLOBJ = new RolePrivilegesBLL();
            RolePrivilegesBO   objRolePrivileges    = null;
            RolePrivilegesList RolePrivilegesList   = new RolePrivilegesList();

            DeleteRolePrivileges(userID);

            try
            {
                foreach (RepeaterItem rptItem in rptRolePrivileges.Items)
                {
                    if (rptItem.ItemType == ListItemType.Item || rptItem.ItemType == ListItemType.AlternatingItem)
                    {
                        int menuID = Convert.ToInt32(((Literal)rptItem.FindControl("litMenuID")).Text);
                        chkView   = (CheckBox)rptItem.FindControl("chkView");
                        chkUpdate = (CheckBox)rptItem.FindControl("chkUpdate");

                        if (menuID > 0)
                        {
                            objRolePrivileges = new RolePrivilegesBO();

                            objRolePrivileges.MenuID = menuID;

                            if (chkView != null && chkView.Checked)
                            {
                                objRolePrivileges.CanView = "Y";
                            }

                            if (chkUpdate != null && chkUpdate.Checked)
                            {
                                objRolePrivileges.CanUpdate = "Y";
                            }

                            objRolePrivileges.UserID    = Convert.ToInt32(UserIDDropDownList.SelectedItem.Value);
                            objRolePrivileges.UpdatedBy = Convert.ToInt32(Session["USER_ID"]);

                            count = RolePrivilegesBLLOBJ.InsertRolePrivilages(objRolePrivileges);
                        }
                    }
                }

                if (count == -1)
                {
                    message = "Data saved successfully";

                    System.Collections.IDictionaryEnumerator cacheDict = Cache.GetEnumerator();

                    while (cacheDict.MoveNext())
                    {
                        if (cacheDict.Key.ToString().IndexOf("PRIV_") >= 0)
                        {
                            Cache.Remove(cacheDict.Key.ToString());
                        }
                    }
                    ;

                    GenerateMenuItems();
                    getRolePrivByUserID();
                }
                else
                {
                    message = "Data could not be saved";
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            finally
            {
                RolePrivilegesBLLOBJ = null;
            }

            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Added", "alert('" + message + "');", true);
        }