public List <ItemBasicViewModel> Filter(ItemFilterModel model) { var items = m_Context.Items.AsQueryable(); if (model != null) { if (!string.IsNullOrEmpty(model.S_Manufacturer)) { items = items.Where(x => x.Manufacturer.Contains(model.S_Manufacturer)); } if (!string.IsNullOrEmpty(model.S_Model)) { items = items.Where(x => x.ModelName.Contains(model.S_Model)); } if (!string.IsNullOrEmpty(model.S_Avaible)) { items = items.Where(x => x.Avaiable.Contains(model.S_Avaible)); } if (!string.IsNullOrEmpty(model.S_CategoryID)) { int CategoryID = Int32.Parse(model.S_CategoryID); items = items.Where(x => x.CategoryID == CategoryID); } } return(_mapper.Map <List <ItemBasicViewModel> >(items.ToList())); }
public ActionResult <DataPage <ItemInfo> > GetItems( [FromRoute] string database, [FromQuery] ItemFilterModel filter) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } ICadmusRepository repository = _repositoryProvider.CreateRepository(database); DataPage <ItemInfo> page = repository.GetItems(new ItemFilter { PageNumber = filter.PageNumber, PageSize = filter.PageSize, Title = filter.Title, Description = filter.Description, FacetId = filter.FacetId, GroupId = filter.GroupId, Flags = filter.Flags, MinModified = filter.MinModified, MaxModified = filter.MaxModified, UserId = filter.UserId }); return(Ok(page)); }
public ActionResult Index(ItemFilterModel filterModel) { ItemIndexViewModel model = new ItemIndexViewModel() { ItemList = filterModel.IsFiltered ? _itemService.Filter(filterModel).ToPagedList() : _itemService.GetAll().ToPagedList(1, PAGE_SIZE), FilterModel = filterModel, }; return(View(GetIndexViewModel(model))); }
public async Task <ActionResult <IEnumerable <ItemModel> > > Search([FromBody] ItemFilterModel filter) { var filteredItems = filter switch { { TagFilter : { Tags : { Count : > 0 } } } => GetItemsByTagFilter(filter.TagFilter),