Example #1
0
        public IActionResult SearchBookResultCount([FromBody] SearchRequestContract request, [FromQuery] ProjectTypeContract?projectType)
        {
            if (projectType == null)
            {
                return(Error($"Required parameter {nameof(projectType)} is not specified"));
            }

            try
            {
                var advancedRequest = new AdvancedSearchRequestContract
                {
                    ConditionConjunction = request.ConditionConjunction,
                    Start         = request.Start,
                    Count         = request.Count,
                    Sort          = request.Sort,
                    SortDirection = request.SortDirection,
                    FetchTerms    = request.FetchTerms,
                    Parameters    = null,
                };
                var result = m_bookSearchManager.SearchByCriteriaCount(advancedRequest, projectType.Value);
                return(Ok(result));
            }
            catch (ArgumentException exception)
            {
                return(BadRequest(exception.Message));
            }
            catch (HttpErrorCodeException exception)
            {
                return(StatusCode((int)exception.StatusCode, exception.Message));
            }
        }
Example #2
0
        public IActionResult SearchBookResultCount([FromBody] AdvancedSearchRequestContract request,
                                                   [FromQuery] ProjectTypeContract?projectType)
        {
            if (projectType == null)
            {
                return(Error($"Required parameter {nameof(projectType)} is not specified"));
            }

            try
            {
                var result = m_bookSearchManager.SearchByCriteriaCount(request, projectType.Value);
                return(Ok(result));
            }
            catch (ArgumentException exception)
            {
                return(BadRequest(exception.Message));
            }
            catch (HttpErrorCodeException exception)
            {
                return(StatusCode((int)exception.StatusCode, exception.Message));
            }
        }