public IActionResult Search([FromQuery] YachtTourInformationSearchModel model) { var result = _yachtTourInformationServices.Search(model); if (result.IsSuccessStatusCode) { return(Ok(result)); } return(BadRequest()); }
public BaseResponse <PagedList <YachtTourInformationViewModel> > Search(YachtTourInformationSearchModel model) { try { var sortString = !string.IsNullOrEmpty(model.SortString) ? model.SortString : "ActivatedDate DESC"; bool? isactive = model.IsActivated.ToNullBoolean(); DateTime?activatedDate = null; if (!string.IsNullOrEmpty(model.ActivatedDate)) { activatedDate = model.ActivatedDate.ToNullDateTime(); } var query = (from i in _db.YachtTourInformations .Where(k => !k.Deleted && k.TourFid == model.TourFid && (string.IsNullOrEmpty(model.Title) || k.DefaultTitle.Contains(model.Title)) && (model.TourInformationTypeFid == 0 || k.TourInformationTypeFid.Equals(model.TourInformationTypeFid)) && (model.IsActivated == null || k.IsActivated == isactive) && (activatedDate == null || k.ActivatedDate.Value.Date == activatedDate.Value.Date)) select new YachtTourInformationViewModel() { Id = i.Id, DefaultTitle = i.DefaultTitle, TourInformationTypeResKey = i.TourInformationTypeResKey, IsActivated = i.IsActivated, ActivatedDate = i.ActivatedDate, LanguagesSupported = (from d in _db.YachtTourInformationDetails join l in _languages on d.LanguageFid equals l.Id where !d.Deleted && d.InformationFid == i.Id select l.ResourceKey).ToList() }).OrderBy(sortString); var result = new PagedList <YachtTourInformationViewModel>(query, model.PageIndex, model.PageSize); if (result != null) { return(BaseResponse <PagedList <YachtTourInformationViewModel> > .Success(result)); } return(BaseResponse <PagedList <YachtTourInformationViewModel> > .BadRequest()); } catch (Exception ex) { return(BaseResponse <PagedList <YachtTourInformationViewModel> > .InternalServerError(message : ex.Message, fullMsg : ex.StackTrace)); } }