public ResponseModel GetNoti(NotificationGetModel model) { var response = new ResponseModel { Success = false, Messages = new List<string>() }; if (model == null || model.AppId==0 || string.IsNullOrEmpty(model.UserId)) { response.Messages.Add("Mandatory data can not be empty"); response.Data = model; } else if (model.CurrentPage <= 0 || model.ItemsPerPage <= 0) { response.Messages.Add("Current page/ItemsPerPage should be greater than 0"); } else { try { var notis = NotificationService.GetAllNotifications(model); response.Data = notis; response.Messages.Add("SUCCESS"); response.Success = true; } catch (Exception excep) { response.Messages.Add("Something bad happened."); } } return response; }
public static GetAllNotificationResponseModel GetAllNotifications(NotificationGetModel requestModel) { requestModel.CurrentPage--; var response = new GetAllNotificationResponseModel(); using (var dbContext = new DeliversEntities()) { var notifs = dbContext.Notifications.Where(no => no.UserId == requestModel.UserId && no.AppId == requestModel.AppId).ToList(); var take = notifs.Skip(requestModel.CurrentPage * requestModel.ItemsPerPage). Take(requestModel.ItemsPerPage).ToList(); response.Notifications = take; response.ItemsPerPage = requestModel.ItemsPerPage; response.CurrentPage++; response.TotalItems = notifs.Count; return(response); } }