public async Task UpdateAdvertisement(AdvertisementRequest request, Guid userId) { if (request is null) { throw new ArgumentNullException(nameof(request)); } using var transaction = _dataProvider.CreateTransaction(IsolationLevel.RepeatableRead); var currentAd = _dataProvider.Get <AdDb>(i => i.Id == request.Id).SingleOrDefault(); if (currentAd.UserId != userId) { throw new UnauthorizedAccessException(); } if (request.Image != null) { currentAd.ImagePath = _imageHelper.UploadImageAndGetName(request.Image).Result; } currentAd.Text = request.Text; currentAd.Title = request.Title; await _dataProvider.Update(currentAd); transaction.Commit(); }
public void CanQueryProperly() { using (var store = NewDocumentStore()) { new ClassificationSummary().Execute(store); using (var session = store.OpenSession()) { for (var i = 0; i < 10; i++) { var request = new AdvertisementRequest { Id = Guid.NewGuid().ToString(), Impressions = new List <Ads> { new Ads { AdId = Guid.NewGuid().ToString(), ClassificationId = "9000", Click = new AdvertisementClick { ClickDate = DateTime.Now } }, new Ads { AdId = Guid.NewGuid().ToString(), ClassificationId = "9000", Click = new AdvertisementClick { ClickDate = DateTime.Now } }, new Ads { AdId = Guid.NewGuid().ToString(), ClassificationId = "9000" } } }; session.Store(request); } session.SaveChanges(); } using (var session = store.OpenSession()) { var results = session.Query <dynamic, ClassificationSummary>() .Customize(x => x.WaitForNonStaleResults()) .ToArray(); Assert.Equal(1, results.Length); Assert.Equal("9000", results[0].ClassificationId); Assert.Equal("30", results[0].Count); Assert.Equal("20", results[0].ClickCount); } } }
public IActionResult AddAdvertisement(AdvertisementRequest advertisementRequest) { var a = User.Identity; if (User.Identity != null) { var b = User.Identity.Name; } var userEmail = User.Claims.First().Value; var user = _userManager.FindByEmailAsync(userEmail).Result; var category = _categoryRepository.GetCategory(advertisementRequest.CategoryId); if (category == null) { return(NotFound("Category not found")); } var oblast = _oblastRepository.GetOblast(advertisementRequest.OblastId); if (oblast == null) { return(NotFound("Oblast not found")); } var city = _cityRepository.GetCity(advertisementRequest.CityId); if (city == null) { return(NotFound("City not found")); } var advertisement = new Advertisement { Name = advertisementRequest.Name, Image = advertisementRequest.Image, Description = advertisementRequest.Description, Category = category, CategoryId = category.Id, Oblast = oblast, OblastId = oblast.Id, City = city, CityId = city.Id, User = user, UserId = user.Id }; var results = new List <ValidationResult>(); var context = new ValidationContext(advertisement); if (!Validator.TryValidateObject(advertisement, context, results, true)) { return(BadRequest(results)); } _advertisementRepository.Add(advertisement); return(Ok("Created successfully")); }
public Opportunity Request(AdvertisementRequest request) { var cloudEvent = new CloudEvent("com.example.myevent", new Uri("urn:example-com:mysource")) { DataContentType = new ContentType(MediaTypeNames.Application.Json), Data = JsonConvert.SerializeObject("hey there!") }; var content = new CloudEventContent(cloudEvent, ContentMode.Structured, new JsonEventFormatter()); var httpClient = new HttpClient(); var result = httpClient.PostAsync("", content); return(null); }
public async Task <IActionResult> UpdateAdvertisement(AdvertisementRequest request) { if (request is null) { throw new ArgumentNullException(nameof(request)); } var ad = _adService.GetAd(request.Id); if (!ModelState.IsValid) { ad = new AdDto() { Id = request.Id, Title = request.Title, Text = request.Text, CreatedDate = ad.CreatedDate, ImagePath = ad.ImagePath, Number = ad.Number, Ratings = ad.Ratings, UserId = ad.UserId, UserName = ad.UserName }; return(View(ad)); } try { await _adService.UpdateAdvertisement(request, User.Claims.GetUserId()); } catch (UnauthorizedAccessException) { return(RedirectToAction("Index")); } return(RedirectToAction("Index")); }
public void CanQueryProperly() { using (var store = NewDocumentStore()) { new ClassificationSummary().Execute(store); using (var session = store.OpenSession()) { for (var i = 0; i < 10; i++) { var request = new AdvertisementRequest { Id = Guid.NewGuid().ToString(), Impressions = new List<Ads> { new Ads { AdId = Guid.NewGuid().ToString(), ClassificationId = "9000", Click = new AdvertisementClick { ClickDate = SystemTime.Now } }, new Ads { AdId = Guid.NewGuid().ToString(), ClassificationId = "9000", Click = new AdvertisementClick { ClickDate = SystemTime.Now } }, new Ads { AdId = Guid.NewGuid().ToString(), ClassificationId = "9000" } } }; session.Store(request); } session.SaveChanges(); } using (var session = store.OpenSession()) { var results = session.Query<dynamic, ClassificationSummary>() .Customize(x => x.WaitForNonStaleResults()) .ToArray(); Assert.Equal(1, results.Length); Assert.Equal("9000", results[0].ClassificationId); Assert.Equal("30", results[0].Count); Assert.Equal("20", results[0].ClickCount); } } }
public ActionResult <Opportunity> AddProduct(AdvertisementRequest request) { Opportunity opportunity = new Opportunity(); return(opportunity); }
// POST api/values public void Post([FromBody] AdvertisementRequest request) { }