public HtmlGrid <RoleLists> GetRoleLists(GridParam roleDetails)
        {
            List <RoleLists> roleLists = new List <RoleLists>();
            var details = _roleManagementRepository.GetRoleLists(roleDetails, StoredProcedureName);

            foreach (RoleLists role in details)
            {
                var detail = new RoleLists()
                {
                    Name        = role.Name,
                    FilterCount = role.FilterCount
                };
                var           roleId        = _encryptionService.EncryptString(role.Id);
                StringBuilder actionDetails = new StringBuilder();
                if (_roleExtension.HasPermission(PermissionValueLists.EditRole))
                {
                    actionDetails.Append("<a href='" + _configuration["ApplicationData:RootUrl"] + "/CoreSetup/Role/EditRole/" + roleId + "' class='btn btn-sm btn-link btn-round' title='Edit Role'><i class=\"fas fa-user-edit\"></i></a>");
                }
                detail.Action = actionDetails.ToString();
                roleLists.Add(detail);
            }
            _log.Information("role list get list response as {0}", JsonConvert.SerializeObject(roleLists));
            var roleList = new HtmlGrid <RoleLists>();

            roleList.aaData = roleLists;
            var firstDefault = roleLists.FirstOrDefault();

            if (firstDefault != null)
            {
                roleList.iTotalDisplayRecords = Convert.ToInt32(firstDefault.FilterCount);
                roleList.iTotalRecords        = Convert.ToInt32(firstDefault.FilterCount);
            }
            return(roleList);
        }
        /// <summary>
        /// Operation Related To Grid Manipulation (For Buttons And Other Functions)
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        private UserListDetails UserGridManagement(UserListDetails user)
        {
            var rowId = _encryptionService.EncryptString(Convert.ToString(user.Id));

            if (string.IsNullOrEmpty(user.Status))
            {
                user.Status = "A";
            }
            user.Status = user.Status.Trim() == "A" ? "<i class=\"mdi mdi-account-check mdi-18px text-success\" title='Unlocked'></i>" : "<i class=\"mdi mdi-account-off mdi-18px text-danger\" title='Locked'></i>";
            StringBuilder actionDetails = new StringBuilder();

            if (_roleExtension.HasPermission(PermissionValueLists.EditUser))
            {
                actionDetails.Append("<a href='" + _configuration["ApplicationData:RootUrl"] + "/CoreSetup/User/UpdateUser/" + rowId + "' class='btn btn-sm btn-link btn-round' title='Edit User'><i class='mdi mdi-pencil'></i></a>");
                actionDetails.Append(" <a href='" + _configuration["ApplicationData:RootUrl"] + "/CoreSetup/User/ResetUserPassword/" + rowId + "' class='btn btn-sm btn-warning btn-round confirmation' title='Reset User Password'><i class='mdi mdi-account-key'></i></a>");
            }
            if (_roleExtension.HasPermission(PermissionValueLists.StatusUser))
            {
                actionDetails.Append(" <a href='" + _configuration["ApplicationData:RootUrl"] + "/CoreSetup/User/UpdateUserStatus/" + rowId + "' class='btn btn-sm btn-success btn-round confirmation' title='Change Status'><i class='mdi mdi-lock-reset'></i></a>");
            }
            user.Action = actionDetails.ToString();
            return(user);
        }