private void BindUserRoleRightsData()
        {
            try
            {
                DataTable dt = new DataTable();
                dt = DBAccess.getUserRoleRightsDetails(ddlCompany_ForUserRoleRights.SelectedValue == null?"":ddlCompany_ForUserRoleRights.SelectedValue.ToString(), ddlRole_ForUserRoleRights.SelectedValue == null?"":ddlRole_ForUserRoleRights.SelectedValue.ToString());
                List <UserRoleData> list = new List <UserRoleData>();
                UserRoleData        data = new UserRoleData();


                if (dt.Columns.Count > 3)
                {
                    data           = new UserRoleData();
                    data.CompanyID = "Company ID";
                    data.Module    = "Module";
                    data.Screen    = "Screen";
                    List <UserRoleRightsData> listRights = new List <UserRoleRightsData>();
                    UserRoleRightsData        rights     = null;
                    for (int col = 3; col < dt.Columns.Count; col++)
                    {
                        rights        = new UserRoleRightsData();
                        rights.RoleID = dt.Columns[col].ColumnName;
                        rights.HeaderTemplateVisibility = "block";
                        rights.DataTemplateVisibility   = "none";

                        int readCount   = dt.AsEnumerable().Where(k => k.Field <string>(rights.RoleID) == "Read").Count();
                        int modifyCount = dt.AsEnumerable().Where(k => k.Field <string>(rights.RoleID) == "Modify").Count();
                        int noneCount   = dt.AsEnumerable().Where(k => k.Field <string>(rights.RoleID) == "None").Count();
                        int tableCount  = dt.Rows.Count;
                        rights.IsModifyChcked = false;
                        rights.IsReadChecked  = false;
                        rights.IsNoneChacked  = false;
                        if (readCount == tableCount)
                        {
                            rights.IsReadChecked = true;
                        }
                        else if (modifyCount == tableCount)
                        {
                            rights.IsModifyChcked = true;
                        }
                        else if (noneCount == tableCount)
                        {
                            rights.IsNoneChacked = true;
                        }

                        listRights.Add(rights);
                    }
                    data.UserRightValue = listRights;
                    list.Add(data);
                }
                for (int row = 0; row < dt.Rows.Count; row++)
                {
                    data           = new UserRoleData();
                    data.CompanyID = dt.Rows[row]["CompanyID"].ToString();
                    data.Module    = dt.Rows[row]["Module"].ToString();
                    data.Screen    = dt.Rows[row]["Screen"].ToString();
                    List <UserRoleRightsData> listRights = new List <UserRoleRightsData>();
                    UserRoleRightsData        rights     = null;
                    for (int col = 3; col < dt.Columns.Count; col++)
                    {
                        rights        = new UserRoleRightsData();
                        rights.RoleID = dt.Columns[col].ColumnName;
                        rights.HeaderTemplateVisibility = "none";
                        rights.DataTemplateVisibility   = "block";
                        if (dt.Rows[row][col].ToString() == "Read")
                        {
                            rights.IsModifyChcked = false;
                            rights.IsReadChecked  = true;
                            rights.IsNoneChacked  = false;
                        }
                        else if (dt.Rows[row][col].ToString() == "Modify")
                        {
                            rights.IsModifyChcked = true;
                            rights.IsReadChecked  = false;
                            rights.IsNoneChacked  = false;
                        }
                        else
                        {
                            rights.IsModifyChcked = false;
                            rights.IsReadChecked  = false;
                            rights.IsNoneChacked  = true;
                        }

                        listRights.Add(rights);
                    }
                    data.UserRightValue = listRights;
                    list.Add(data);
                }
                lvUserRoleRightsDetails.DataSource = list;
                lvUserRoleRightsDetails.DataBind();
            }
            catch (Exception ex)
            { }
        }
        private void BindUserRightsExceptionData()
        {
            try
            {
                string selectedUserIdList = "";
                for (int i = 0; i < gvUserIDList.Rows.Count; i++)
                {
                    if ((gvUserIDList.Rows[i].FindControl("chkUserIDChecked") as CheckBox).Checked)
                    {
                        if (selectedUserIdList == "")
                        {
                            selectedUserIdList += "'" + (gvUserIDList.Rows[i].FindControl("lblUserID") as Label).Text + "'";
                        }
                        else
                        {
                            selectedUserIdList += ",'" + (gvUserIDList.Rows[i].FindControl("lblUserID") as Label).Text + "'";
                        }
                    }
                }
                List <UserRoleData> list = new List <UserRoleData>();
                if (selectedUserIdList != "")
                {
                    DataTable userRightsDt = DBAccess.getUserRightsExceptionDetails(ddlUserRightExptnCompany.SelectedValue, ddlUserRightExptnRole.SelectedValue, selectedUserIdList);

                    UserRoleData data            = new UserRoleData();
                    bool         firstRowEntered = true; // For first list item insert header related vaulues
                    for (int i = 0; i < userRightsDt.Rows.Count; i++)
                    {
                        data = new UserRoleData();
                        if (firstRowEntered)
                        {
                            data.CompanyID = "Company";
                            data.Module    = "Module";
                            data.Screen    = "Screen";
                        }
                        else
                        {
                            data.CompanyID = userRightsDt.Rows[i]["CompanyID"].ToString();
                            data.Module    = userRightsDt.Rows[i]["Module"].ToString();
                            data.Screen    = userRightsDt.Rows[i]["Screen"].ToString();
                        }


                        List <UserRoleRightsData> listRights = new List <UserRoleRightsData>();
                        UserRoleRightsData        rights     = null;
                        for (int col = 3; col < userRightsDt.Columns.Count; col++)
                        {
                            rights = new UserRoleRightsData();
                            if (firstRowEntered)
                            {
                                rights.HeaderTemplateVisibility = "block";
                                rights.DataTemplateVisibility   = "none";
                            }
                            else
                            {
                                rights.HeaderTemplateVisibility = "none";
                                rights.DataTemplateVisibility   = "block";
                            }


                            rights.UserID = userRightsDt.Columns[col].ColumnName;
                            if (firstRowEntered)
                            {
                                int readCount   = userRightsDt.AsEnumerable().Where(k => k.Field <string>(rights.UserID) == "Read").Count();
                                int modifyCount = userRightsDt.AsEnumerable().Where(k => k.Field <string>(rights.UserID) == "Modify").Count();
                                int noneCount   = userRightsDt.AsEnumerable().Where(k => k.Field <string>(rights.UserID) == "None").Count();
                                int tableCount  = userRightsDt.Rows.Count;
                                rights.IsModifyChcked = false;
                                rights.IsReadChecked  = false;
                                rights.IsNoneChacked  = false;
                                if (readCount == tableCount)
                                {
                                    rights.IsReadChecked = true;
                                }
                                else if (modifyCount == tableCount)
                                {
                                    rights.IsModifyChcked = true;
                                }
                                else if (noneCount == tableCount)
                                {
                                    rights.IsNoneChacked = true;
                                }
                            }
                            else
                            {
                                if (string.Equals(userRightsDt.Rows[i][col].ToString(), "Read", StringComparison.OrdinalIgnoreCase))
                                {
                                    rights.IsModifyChcked = false;
                                    rights.IsReadChecked  = true;
                                    rights.IsNoneChacked  = false;
                                }
                                else if (string.Equals(userRightsDt.Rows[i][col].ToString(), "Modify", StringComparison.OrdinalIgnoreCase))
                                {
                                    rights.IsModifyChcked = true;
                                    rights.IsReadChecked  = false;
                                    rights.IsNoneChacked  = false;
                                }
                                else if (string.Equals(userRightsDt.Rows[i][col].ToString(), "None", StringComparison.OrdinalIgnoreCase))
                                {
                                    rights.IsModifyChcked = false;
                                    rights.IsReadChecked  = false;
                                    rights.IsNoneChacked  = true;
                                }
                                else
                                {
                                    rights.IsModifyChcked = false;
                                    rights.IsReadChecked  = false;
                                    rights.IsNoneChacked  = false;
                                }
                            }
                            listRights.Add(rights);
                        }
                        data.UserRightValue = listRights;
                        list.Add(data);
                        if (firstRowEntered)
                        {
                            i = -1;
                            firstRowEntered = false;
                        }
                    }
                }
                lvUserAssignedToRole.DataSource = list;
                lvUserAssignedToRole.DataBind();
            }
            catch (Exception ex)
            { }
        }