Beispiel #1
0
        public override void Cancel(CommerceBuilder.Orders.Basket basket)
        {
            WebTrace.Write("Cancel Existing Taxes");
            List <string> uniqueTransactionIds = new List <string>();
            Dictionary <string, string> existingTransactions = ClearExistingTaxes(basket);

            CertiTAX.CertiCalc comm = new CertiTAX.CertiCalc();
            foreach (string transactionId in existingTransactions.Values)
            {
                if (uniqueTransactionIds.IndexOf(transactionId) < 0)
                {
                    uniqueTransactionIds.Add(transactionId);
                    comm.Cancel(transactionId, CT_SERIAL_NUMBER, this.ReferredID);
                }
            }
        }
Beispiel #2
0
        public override void Commit(CommerceBuilder.Orders.Order order)
        {
            WebTrace.Write("Commit Existing Taxes");
            List <string> uniqueTransactionIds = new List <string>();

            CertiTAX.CertiCalc comm = new CertiTAX.CertiCalc();
            foreach (OrderItem item in order.Items)
            {
                if ((item.OrderItemType == OrderItemType.Tax) && (item.Sku.StartsWith("CT:") && (!item.LineMessage.Equals("Committed"))))
                {
                    string transactionId = item.Sku.Substring(3);
                    if (uniqueTransactionIds.IndexOf(transactionId) < 0)
                    {
                        CommerceBuilder.Taxes.Providers.CCH.CertiTAX.TaxTransaction tx = new CommerceBuilder.Taxes.Providers.CCH.CertiTAX.TaxTransaction();
                        uniqueTransactionIds.Add(transactionId);
                        comm.Commit(transactionId, CT_SERIAL_NUMBER, this.ReferredID);
                        item.LineMessage = "Committed";
                    }
                }
            }
        }