public ActionResult Search(SearchUserDetailParametersVM model) { try { object sortColumn = ""; object sortDirection = ""; if (model.order.Count == 0) { sortColumn = "CreatedOn"; sortDirection = "desc"; } else { sortColumn = model.columns[Convert.ToInt32(model.order[0].column)].data ?? (object)DBNull.Value; sortDirection = model.order[0].dir ?? (object)DBNull.Value; } model.PageSize = Constants.PAGESIZE; var users = userRepository.SearchUserDetail(model, Convert.ToString(sortColumn), Convert.ToString(sortDirection)); int totalRecords = 0; var dbRecords = users.Select(m => m.TotalCount).FirstOrDefault(); if (dbRecords != 0) { totalRecords = Convert.ToInt32(dbRecords); } if (users != null && users.Count > 0) { foreach (var user in users) { if (!string.IsNullOrWhiteSpace(user.Password)) { user.Password = Utility.Utility.Decrypt(user.Password, Utility.Utility.EncryptionKey); } } } return(Json(new { IsSuccess = true, CurrentPage = model.PageNum, PageSize = Constants.PAGESIZE, TotalRecords = totalRecords, data = users }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { Utility.Utility.LogError(e, "Search"); return(Json(new { IsSuccess = false, errorMessage = e.Message })); } }
public List <SearchUserDetailResultVM> SearchUserDetail(SearchUserDetailParametersVM model, string sortColumn, string sortDirection) { SqlParameter[] parameters = { new SqlParameter { ParameterName = "@CollegeGroupId", Value = model.CollegeGroupId }, new SqlParameter { ParameterName = "@TutorId", Value = model.TutorId }, new SqlParameter { ParameterName = "@Name", Value = model.Name }, new SqlParameter { ParameterName = "@Email", Value = model.Email }, new SqlParameter { ParameterName = "@IsFromRegistrationPage", Value = model.IsFromRegistrationPage }, new SqlParameter { ParameterName = "@IsLoginCredentialSent", Value = model.IsLoginCredentialSent }, new SqlParameter { ParameterName = "@IsViewAll", Value = model.IsViewAll }, new SqlParameter { ParameterName = "@PageNum", Value = model.PageNum }, new SqlParameter { ParameterName = "@PageSize", Value = model.PageSize }, new SqlParameter { ParameterName = "@SortColumn", Value = sortColumn }, new SqlParameter { ParameterName = "@SortDirection", Value = sortDirection } }; var dt = DALHelper.GetDataTableWithExtendedTimeOut("SearchUserDetail", parameters); var users = new List <SearchUserDetailResultVM>(); users = DALHelper.CreateListFromTable <SearchUserDetailResultVM>(dt); return(users); }