public HttpResponseMessage CancelCoupon(CancelCouponDto coupon) { //transformar esse processo em um comando para dar opcao de tolerancia a falha Claims claims = new Claims().Values(); CancelCouponCommand command = new CancelCouponCommand() { CouponIntegrationCode = coupon.CouponIntegrationCode, UserSessionTrade = coupon.UserSessionTrade, PersonIntegrationCode = claims.personIntegrationCode, UserId = claims.userSystemId }; this.bus.Send(command); return(Request.CreateResponse(HttpStatusCode.OK, new { })); }
public void Handle(CancelCouponCommand command) { CancelCouponDto coupon = new CancelCouponDto() { CouponIntegrationCode = command.CouponIntegrationCode, UserSessionTrade = command.UserSessionTrade, PersonIntegrationCode = command.PersonIntegrationCode, UserId = command.UserId }; var _clientPromotion = new HttpClient(); _clientPromotion.BaseAddress = new Uri(CustomConfiguration.WebApiPromotion); var resultTask = _clientPromotion.PostAsJsonAsync("api/Coupon/CancelCoupon", coupon).Result; if (!resultTask.IsSuccessStatusCode) { LogManager.Error("Failure canceling a Coupon. Status: " + resultTask.StatusCode); throw new Exception("Failure canceling a Coupon. Status: " + resultTask.StatusCode); } }