public List <NotificationSetting> SearchNotification(NotificationSC search) { var result = new List <NotificationSetting>(); try { var query = Context.NotificationSetting .Include(r => r.ReservationStatus) .Include(r => r.ActionStepNavigation) .Include(r => r.LnkNotificationJobTitle) .ThenInclude(r => r.JobTitle) .AsQueryable(); if (search != null) { if (search.ReservationStatusId != null && search.ReservationStatusId > 0) { query = query.Where(r => r.ReservationStatus != null && r.ReservationStatus.Id == search.ReservationStatusId); } if (search.ActionStep != null && search.ActionStep > 0) { query = query.Where(r => r.ActionStep != null && r.ActionStep == search.ActionStep); } if (search.JobTitleId != null && search.JobTitleId.Count() > 0) { query = query.Where(r => r.LnkNotificationJobTitle.Any(lnk => search.JobTitleId.Contains(lnk.JobTitleId))); } } result = query.ToList(); } catch { } return(result); }
public PartialViewResult _NotificationList(NotificationSC search) { NotificationVM[] Notification = null; try { var notification = UnitOfWork.NotificationSettingBL.SearchNotification(search); Notification = notification.Select(n => { var jobTitle = UnitOfWork.NotificationSettingBL.GetNotificationJobTitle(n.Id); return(new NotificationVM(n) { JobTitleText = string.Join(", ", jobTitle.Select(r => r.Name).ToArray()), }); }).ToArray(); } catch (Exception e) { Notification = null; } return(PartialView(Notification)); }