public async Task <IActionResult> Create([FromBody] CreateAnnouncementDto announcementDto) { int userId; try { userId = HttpContext.GetUserId(); } catch (ArgumentNullException) { return(Unauthorized()); } var announcement = new Announcement { Name = announcementDto.Name, Type = (AnnouncementType)Enum.Parse(typeof(AnnouncementType), announcementDto.Type), Description = announcementDto.Description, Image = announcementDto.Image, CreatedAt = DateTime.UtcNow, UserId = userId }; await _announcementRepository.CreateAsync(announcement); //https://localhost:5001 in this case var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = baseUrl + ApiRoutes.Announcements.Get.Replace("{id}", announcement.Id.ToString()); var response = new AnnouncementResponse { Id = announcement.Id }; //201 - Created return(Created(locationUri, response)); }
public MerchantOrderStatusResponse RetrieveAnnouncement(AnnouncementResponse announcementResponse) { var announcementDataAsJson = _connector.GetAnnouncementData(announcementResponse); var merchantOrderStatusResponse = JsonHelper.Deserialize <MerchantOrderStatusResponse>(announcementDataAsJson); merchantOrderStatusResponse.ValidateSignature(_signingKey); return(merchantOrderStatusResponse); }
private static string GetTestData(int poiId) { var announcementResponse = new AnnouncementResponse { PoiId = poiId, Authentication = "MyJwt", ExpiryRaw = "1970-01-01T00:00:00.000+02:00", EventName = "merchant.order.status.changed", Signature = "ec0f64d23b91debd1249ee56b1b67540bf1720760cb23a9a286acc222724a8d15c7e33f193710e7e0322ced44d066f8cc6a2fdbd9398f36fb1f0a277431034aa" }; return(JsonHelper.Serialize(announcementResponse)); }
public string GetAnnouncementData(AnnouncementResponse announcement) { //ValidateToken(); _restTemplate.SetToken(announcement.Authentication); return(_restTemplate.Get("order/server/api/events/results/" + announcement.EventName)); }