/// <summary>
        /// Handle order voided event
        /// </summary>
        /// <param name="eventMessage">Event message</param>
        public void HandleEvent(OrderVoidedEvent eventMessage)
        {
            if (eventMessage.Order == null)
            {
                return;
            }

            //ensure that Avalara tax provider is active
            if (_taxService.LoadActiveTaxProvider(eventMessage.Order.Customer) is AvalaraTaxProvider taxProvider)
            {
                //void tax transaction
                taxProvider.VoidTaxTransaction(eventMessage.Order);
            }
        }
示例#2
0
        /// <summary>
        /// Handle order async Tasked event
        /// </summary>
        /// <param name="eventMessage">Event message</param>
        /// <returns>A task that represents the asynchronous operation</returns>
        public async Task HandleEventAsync(OrderVoidedEvent eventMessage)
        {
            if (eventMessage.Order == null)
            {
                return;
            }

            //ensure that Avalara tax provider is active
            if (!await _taxPluginManager.IsPluginActiveAsync(AvalaraTaxDefaults.SystemName))
            {
                return;
            }

            //async Task tax transaction
            await _avalaraTaxManager.VoidTaxTransactionAsync(eventMessage.Order);
        }
        /// <summary>
        /// Handle order voided event
        /// </summary>
        /// <param name="eventMessage">Event message</param>
        public void HandleEvent(OrderVoidedEvent eventMessage)
        {
            if (eventMessage.Order == null)
            {
                return;
            }

            //ensure that Avalara tax provider is active
            if (!_taxPluginManager.IsPluginActive(AvalaraTaxDefaults.SystemName))
            {
                return;
            }

            //void tax transaction
            _avalaraTaxManager.VoidTaxTransaction(eventMessage.Order);
        }