Пример #1
0
        public async Task <IActionResult> AddContributorRequest([FromBody] ContributorRequest item)
        {
            if (item == null)
            {
                return(HttpBadRequest());
            }
            if (!ModelState.IsValid)
            {
                return(HttpBadRequest(ModelState));
            }

            var survey = await _surveyStore.GetSurveyAsync(item.SurveyId);

            if (survey == null)
            {
                return(HttpBadRequest());
            }

            // Validate that the current user has Update permissions to this survey.
            if (!await _authorizationService.AuthorizeAsync(User, survey, Operations.Update))
            {
                return(new HttpStatusCodeResult((int)HttpStatusCode.Forbidden));
            }

            await _contributorRequestStore.AddRequestAsync(item);

            return(new NoContentResult());
        }
Пример #2
0
 public async Task RemoveRequestAsync(ContributorRequest contributorRequest)
 {
     _dbContext.ContributorRequests.Remove(contributorRequest);
     await _dbContext
     .SaveChangesAsync()
     .ConfigureAwait(false);
 }
Пример #3
0
        public async Task <ApiResult> AddContributorRequestAsync(ContributorRequest contributorRequest)
        {
            var path     = $"/surveys/{contributorRequest.SurveyId}/contributorrequests";
            var response = await _httpClient.SendRequestWithBearerTokenAsync(HttpMethod.Post, path, contributorRequest,
                                                                             await _surveysTokenService.GetTokenForWebApiAsync(_httpContextAccessor.HttpContext.User)
                                                                             .ConfigureAwait(false), _cancellationToken);

            return(new ApiResult {
                Response = response
            });
        }
        public async Task ShouldReturnErrorWhenCityNameContainsNumbers()
        {
            // Arrange
            var request = new ContributorRequest
            {
                CityName = "london123",
                Take     = 50,
            };

            // Act
            var actual = await sut.Get(request);

            // Assert
        }
        public async Task ShouldReturnErrorWhenTakeIsNot50Nor100Nor150()
        {
            // Arrange
            var request = new ContributorRequest
            {
                CityName = "london",
                Take     = 10,
            };

            // Act
            var actual = await sut.Get(request);

            // Assert
        }
        public async Task <IActionResult> Get(ContributorRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var contributorsFilter = ContributorMapper.ToFilter(request);

            var contributors = await appService.GetContributorsByCityAsync(contributorsFilter);

            var response = ContributorMapper.ToResponse(contributors);

            return(new ObjectResult(response));
        }
Пример #7
0
        public static ContributorFilterDto ToFilter(ContributorRequest request)
        {
            if (request == null)
            {
                return(null);
            }

            var result = new ContributorFilterDto
            {
                CityName = request.CityName,
                Take     = request.Take,
            };

            return(result);
        }