public void PostUrl()
        {
            DeliverOrderRequest Req;

            // Sandbox.
            Req = new DeliverOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Sandbox", ORDER_NUMBER, false);
            Assert.AreEqual("https://sandbox.google.com/checkout/api/checkout/v2/request/Merchant/" + MERCHANT_ID, Req.GetPostUrl());
            Req = new DeliverOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Production", ORDER_NUMBER, false);
            Assert.AreEqual("https://checkout.google.com/api/checkout/v2/request/Merchant/" + MERCHANT_ID, Req.GetPostUrl());
        }
        public async Task <IActionResult> DeliverOrder(DeliverOrderRequest request)
        {
            var order = await _context.Orders.FindAsync(request.Id);

            if (order == null || order.Customer != request.Customer)
            {
                return(BadRequest());
            }

            order.Delivered             = true;
            _context.Entry(order).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            await _notificationService.SendDeliveredNotification(order);

            return(Ok());
        }
示例#3
0
        public static void DeliverOrder(GoogleCheckout instance, string googleOrderNumber, string carrier, string trackingNo, bool sendEmail)
        {
            string env         = instance.UseTestMode ? "Sandbox" : "Production";
            string merchantId  = instance.MerchantID;
            string merchantKey = instance.MerchantKey;

            DeliverOrderRequest request = new DeliverOrderRequest(merchantId, merchantKey, env, googleOrderNumber, carrier, trackingNo, sendEmail);

            Util.GCheckoutResponse response = request.Send();

            if (response.IsGood)
            {
                Utility.Logger.Debug("Deliver Order Request initiated successfuly. GoogleOrderNumber=" + googleOrderNumber);
            }
            else
            {
                Utility.Logger.Debug("Deliver Order Request could not be initiated. ErrorMessage=" + response.ErrorMessage);
            }
        }
        public void DeliverOrderRequest()
        {
            DeliverOrderRequest Req;
            DeliverOrderRequest Req2;

            AutoGen.DeliverOrderRequest D;

            // Test the first constructor.
            Req = new DeliverOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Sandbox", ORDER_NUMBER);
            D   = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(false, D.sendemailSpecified);
            Assert.AreEqual(null, D.trackingdata);

            Req2 = new DeliverOrderRequest(ORDER_NUMBER);
            D    = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(false, D.sendemailSpecified);
            Assert.AreEqual(null, D.trackingdata);

            // Test the second constructor.
            Req = new DeliverOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Sandbox", ORDER_NUMBER, "UPS",
                                          "1234", false);
            D = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(true, D.sendemailSpecified);
            Assert.AreEqual(false, D.sendemail);
            Assert.AreEqual("UPS", D.trackingdata.carrier);
            Assert.AreEqual("1234", D.trackingdata.trackingnumber);

            Req2 = new DeliverOrderRequest(ORDER_NUMBER, "UPS", "1234", false);
            D    = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(true, D.sendemailSpecified);
            Assert.AreEqual(false, D.sendemail);
            Assert.AreEqual("UPS", D.trackingdata.carrier);
            Assert.AreEqual("1234", D.trackingdata.trackingnumber);

            // Test the third constructor.
            Req = new DeliverOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Sandbox", ORDER_NUMBER, "UPS",
                                          "1234");
            D = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(false, D.sendemailSpecified);
            Assert.AreEqual("UPS", D.trackingdata.carrier);
            Assert.AreEqual("1234", D.trackingdata.trackingnumber);

            Req2 = new DeliverOrderRequest(ORDER_NUMBER, "UPS", "1234");
            D    = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(false, D.sendemailSpecified);
            Assert.AreEqual("UPS", D.trackingdata.carrier);
            Assert.AreEqual("1234", D.trackingdata.trackingnumber);

            // Test the fourth constructor.
            Req = new DeliverOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Sandbox", ORDER_NUMBER, false);
            D   = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(ORDER_NUMBER, D.googleordernumber);
            Assert.AreEqual(true, D.sendemailSpecified);
            Assert.AreEqual(false, D.sendemail);
            Assert.AreEqual(null, D.trackingdata);

            // Test the 8th constructor.
            Req2 = new DeliverOrderRequest(ORDER_NUMBER, false);
            D    = ParseDeliverOrderRequest(Req.GetXml());
            Assert.AreEqual(Req2.GoogleOrderNumber, D.googleordernumber);
            Assert.AreEqual(true, D.sendemailSpecified);
            Assert.AreEqual(false, D.sendemail);
            Assert.AreEqual(null, D.trackingdata);
        }