示例#1
0
        public async Task <IActionResult> GetUsers(UsersParametersModel 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 users = _userApiService.GetUserDtos(parameters.CreatedAtMin, parameters.CreatedAtMax, parameters.Limit,
                                                    parameters.Page, parameters.SinceId, parameters.RoleIds, parameters.StoreIds);

            var usersRootObject = new UsersRootObject
            {
                Users = users
            };

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

            return(new RawJsonActionResult(json));
        }