public WarehouseModule(IItemSearchRepository items) : base("/warehouse") { Get["/{warehouseId}"] = p => { Guid warehouseId = p.warehouseId; var warehouse = WarehouseListViewModel.Instance.SingleOrDefault(vm => vm.WarehouseId == warehouseId); if (warehouse == null) return 404; return Negotiate.WithModel(new WarehouseOverviewViewModel(warehouse.WarehouseId, warehouse.Name)); }; Get["/{warehouseId}/search-items"] = p => { Guid warehouseId = p.warehouseId; string term = Request.Query.q; return items.Search(term, warehouseId); }; }
internal ItemSearchController(IItemSearchRepository itemSearchRepo, ISearchConfiguration configuration, IServiceLogRepository serviceLogRepository) : base(serviceLogRepository) { _itemSearchRepository = itemSearchRepo; _searchConfigurationProvider = new SearchConfigurationProvider(configuration); _criteriaValidator = new CriteriaValidator(); }