Exemplo n.º 1
0
        public static XmlDocument CreateReceivePaymentAddRq(QBEntity entity)
        {
            Order order = entity.NopEnity as Order;

            if (order == null)
            {
                return(null);
            }

            XmlDocument xml = new XmlDocument();

            XmlElement elRoot = InitializeDocument(xml);

            XmlElement elReceivePaymentAddRq = xml.CreateElement("ReceivePaymentAddRq");

            elRoot.AppendChild(elReceivePaymentAddRq);

            XmlElement elReceivePaymentAdd = xml.CreateElement("ReceivePaymentAdd");

            elReceivePaymentAddRq.AppendChild(elReceivePaymentAdd);

            elReceivePaymentAdd.AppendChild(CreateCustomerRefNode(xml, order.Customer));
            elReceivePaymentAdd.AppendChild(CreateDateTypeNode(xml, "TxnDate", order.CreatedOn));
            elReceivePaymentAdd.AppendChild(CreateStrTypeNode(xml, "RefNumber", order.OrderId.ToString()));
            elReceivePaymentAdd.AppendChild(CreateAmtTypeNode(xml, "TotalAmount", order.OrderTotal));

            XmlElement elAppliedToTxnAdd = xml.CreateElement("AppliedToTxnAdd");

            elReceivePaymentAdd.AppendChild(elAppliedToTxnAdd);

            elAppliedToTxnAdd.AppendChild(CreateIDTypeNode(xml, "TxnID", QBManager.GetQBEntityByNopId(EntityTypeEnum.Invoice, order.OrderId)));
            elAppliedToTxnAdd.AppendChild(CreateAmtTypeNode(xml, "PaymentAmount", order.OrderTotal));

            decimal discTotal = order.OrderDiscount;

            if (order.RedeemedRewardPoints != null)
            {
                discTotal += order.RedeemedRewardPoints.UsedAmount;
            }
            foreach (var gc in OrderManager.GetAllGiftCardUsageHistoryEntries(null, null, order.OrderId))
            {
                discTotal += gc.UsedValue;
            }
            if (discTotal != Decimal.Zero)
            {
                elAppliedToTxnAdd.AppendChild(CreateAmtTypeNode(xml, "DiscountAmount", discTotal));
                elAppliedToTxnAdd.AppendChild(CreateRefNode(xml, "DiscountAccountRef", QBManager.QBDiscountAccountRef));
            }

            return(xml);
        }
Exemplo n.º 2
0
        public static XmlDocument CreateTxnDelRq(QBEntity entity)
        {
            Order order = entity.NopEnity as Order;

            if (order == null)
            {
                return(null);
            }

            XmlDocument xml = new XmlDocument();

            XmlElement elRoot = InitializeDocument(xml);

            XmlElement elTxnVoidRq = xml.CreateElement("TxnDelRq");

            elRoot.AppendChild(elTxnVoidRq);

            elTxnVoidRq.AppendChild(CreateStrTypeNode(xml, "TxnDelType", "Invoice"));
            elTxnVoidRq.AppendChild(CreateIDTypeNode(xml, "TxnID", QBManager.GetQBEntityByNopId(EntityTypeEnum.Invoice, order.OrderId)));

            return(xml);
        }