public async Task <IActionResult> GetShelfLocation(ShelfLocationParametersModel parameters)
        {
            if (parameters.Limit < Configurations.MinLimit || parameters.Limit > Configurations.MaxLimit)
            {
                return(await Error(HttpStatusCode.BadRequest, "limit", "Invalid limit parameter"));
            }

            if (parameters.Page < Configurations.DefaultPageValue)
            {
                return(await Error(HttpStatusCode.BadRequest, "page", "Invalid request parameters"));
            }

            var shelfLocationDto = _shelfLocationApiService.GetShelfLocation(
                parameters.Ids,
                parameters.Limit,
                parameters.Page,
                parameters.SinceId,
                parameters.CreatedAtMin,
                parameters.CreatedAtMax)
                                   .Select(trans => trans.ToDto()).ToList();

            var rootObject = new ShelfLocationRootObject {
                ShelfLocation = shelfLocationDto
            };

            var json = JsonFieldsSerializer.Serialize(rootObject, parameters.Fields);

            return(new RawJsonActionResult(json));
        }
        public async Task <IActionResult> GetShelfLocationCount(ShelfLocationParametersModel parameters)
        {
            var shelfLocationCount = _shelfLocationApiService.GetShelfLocationCount(parameters.CreatedAtMin, parameters.CreatedAtMax);

            var countRootObject = new ShelfLocationCountRootObject()
            {
                Count = shelfLocationCount
            };

            return(await Task.FromResult <IActionResult>(Ok(countRootObject)));
        }