예제 #1
0
        public static ReceiptCard GetOrderCard(SalesOrderHeader salesOrder)
        {
            var receiptCard = new ReceiptCard
            {
                Title = "Customer ID: " + salesOrder.CustomerID.ToString(),
                Facts = new List <Fact> {
                    new Fact("Order Number", salesOrder.SalesOrderNumber), new Fact("Order Date", salesOrder.OrderDate.ToString())
                },
                Tax   = string.Format("{0:C}", Convert.ToDecimal(salesOrder.TaxAmt.ToString())),
                Total = string.Format("{0:C}", Convert.ToDecimal(salesOrder.SubTotal.ToString())),
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/traffic-manager.png")),
                },
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "Show Orders",
                        null,
                        value: "http://smarttradewebapp.azurewebsites.net/SalesOrders/GetSalesByCustomerID?customerId=" + salesOrder.CustomerID.ToString()),
                    //value: "http://localhost:62449/SalesOrders/GetSalesByCustomerID?customerId=" + salesOrder.CustomerID.ToString()),
                },
            };

            return(receiptCard);
        }
예제 #2
0
        public void ReceiptCardInits()
        {
            var title = "receiptTitle";
            var facts = new List <Fact>()
            {
                new Fact("key", "value")
            };
            var items = new List <ReceiptItem>()
            {
                new ReceiptItem("title", "subtitle")
            };
            var tap     = new CardAction("type", "title", "http://example.com", "text", "displayText");
            var total   = "100.00";
            var tax     = "10.00";
            var vat     = "0.00";
            var buttons = new List <CardAction>();

            var receiptCard = new ReceiptCard(title, facts, items, tap, total, tax, vat, buttons);

            Assert.NotNull(receiptCard);
            Assert.IsType <ReceiptCard>(receiptCard);
            Assert.Equal(title, receiptCard.Title);
            Assert.Equal(facts, receiptCard.Facts);
            Assert.Equal(items, receiptCard.Items);
            Assert.Equal(tap, receiptCard.Tap);
            Assert.Equal(total, receiptCard.Total);
            Assert.Equal(tax, receiptCard.Tax);
            Assert.Equal(vat, receiptCard.Vat);
            Assert.Equal(buttons, receiptCard.Buttons);
        }
예제 #3
0
        public void ReceiptCardInitsWithNoArgs()
        {
            var receiptCard = new ReceiptCard();

            Assert.NotNull(receiptCard);
            Assert.IsType <ReceiptCard>(receiptCard);
        }
예제 #4
0
        private async Task <Attachment> GetReceiptCard(ReservationData reservation)
        {
            var price = await priceService.GetRidePriceEstimate(reservation.Location);

            var pickupTime  = reservation.Time;
            var receiptCard = new ReceiptCard()
            {
                Title = "Ride Sharing Receipt",
                // steps
                Facts = new List <Fact>
                {
                    new Fact("Booking Number", "000345"),
                    new Fact("Customer", "Lance Olson"),
                    new Fact("Payment Method", "VISA 5555-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(title: reservation.CarType, subtitle: pickupTime, price: price, quantity: "1", image: new CardImage(BotConstants.CarImageUrl))
                },
                Tax     = "$ 5.50",
                Total   = price,
                Buttons = new List <CardAction>
                {
                    new CardAction()
                    {
                        Type  = ActionTypes.OpenUrl,
                        Title = "More information",
                        Image = BotConstants.CompanyLogoUrl,
                        Value = "https://azure.microsoft.com/en-us/pricing/"
                    }
                }
            };

            return(receiptCard.ToAttachment());
        }
예제 #5
0
        public Task StartAsync(IDialogContext context)
        {
            var receiptCard = new ReceiptCard()
            {
                Title = "訂房費用",
                Total = "NT$ 120",
                Tax   = "NT$ 20",
                Items = new List <ReceiptItem>()
                {
                    new ReceiptItem()
                    {
                        Title    = "1大房",
                        Price    = "90",
                        Quantity = "1",
                        Image    = new CardImage("https://cdn.pixabay.com/photo/2014/08/11/21/40/wall-416062__180.jpg")
                    },
                    new ReceiptItem()
                    {
                        Title    = "飲料",
                        Price    = "10",
                        Quantity = "1",
                        Image    = new CardImage("https://cdn.pixabay.com/photo/2014/09/26/19/51/coca-cola-462776_1280.jpg")
                    }
                }
            };

            context.Done(receiptCard.ToAttachment());

            return(Task.CompletedTask);
        }
예제 #6
0
        private async static Task FormCompleted(IDialogContext context, PriceCalculationForm state)
        {
            var priceCalculator = new StubPriceCalculator();
            var price           = priceCalculator.GetPrice(state.RouteFrom, state.RouteTo, state.LoadingDate, state.CargoTypeCode, state.ContainerCount);

            var receipt = new ReceiptCard(title: "Title",
                                          facts: new List <Fact>
            {
                new Fact("Место отправки", state.RouteFrom),
                new Fact("Место доставки", state.RouteTo),
                new Fact("Дата отправки", state.LoadingDate.ToString("dd MMM yyyy") + "г."),
                new Fact("Контейнеры", state.ContainerCount + " x 20 футов (30 тонн)")
            },
                                          total: price.ToString() + " р.",
                                          buttons: new List <CardAction>
            {
                new CardAction(ActionTypes.OpenUrl, title: "Перейти к оформлению", value: "https://isales.trcont.ru/"),
                new CardAction(ActionTypes.PostBack, title: "Сохранить расчет", value: "Save")
            }
                                          );

            var message = context.MakeMessage();

            message.Attachments.Add(receipt.ToAttachment());
            await context.PostAsync(message);

            context.Done(state);
        }
예제 #7
0
        private static Attachment GetReceiptCard(HomeQuoteWebServiceResult homeQuoteWebServiceResult)
        {
            try
            {
                var receiptCard = new ReceiptCard
                {
                    Title = $"{homeQuoteWebServiceResult.InsurerName}",
                    Facts = new List <Fact> {
                        new Fact("Scheme", homeQuoteWebServiceResult.SchemeName)
                    },
                    Tax     = $"€{homeQuoteWebServiceResult.GovernmentLevyPremium}",
                    Total   = $"€{homeQuoteWebServiceResult.NetPremium}",
                    Buttons = new List <CardAction>
                    {
                        new CardAction
                        (
                            ActionTypes.PostBack,
                            "Request a Callback"
                        )
                    }
                };

                return(receiptCard.ToAttachment());
            }
            catch (Exception exception)
            {
                ErrorRepository.LogError(DateTime.Now.ToString(new CultureInfo("en-GB")), exception.ToString());
                throw;
            }
        }
예제 #8
0
        private static Attachment BuildReceiptCard(IrishMQResultsBreakdown breakdown)
        {
            try
            {
                var receiptCard = new ReceiptCard
                {
                    Title = $"Insurer: {breakdown.Premium.SchemeName}",
                    Facts = new List <Fact> {
                        new Fact("Scheme", breakdown.Premium.Scheme.SchemeNumber)
                    },
                    Tax     = $"€{breakdown.Premium.PremiumAfterLevy - breakdown.Premium.PremiumBeforeLevy}",
                    Total   = $"€{breakdown.Premium.TotalPremium}",
                    Buttons = new List <CardAction>
                    {
                        new CardAction
                        (
                            ActionTypes.PostBack,
                            "Request a Callback"
                        )
                    }
                };

                return(receiptCard.ToAttachment());
            }
            catch (Exception exception)
            {
                ErrorRepository.LogError(DateTime.Now.ToString(new CultureInfo("en-GB")), exception.ToString());
                throw;
            }
        }
예제 #9
0
        //since currently global variables are used to store entities and active account, there is no need for parameters in this method
        //however, future refactoring is planned for the project.
        private Attachment GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "Funds Transferred",
                Facts = new List <Fact> {
                    new Fact("From", _sourceAccount.Name), new Fact("To", _targetAccount.Name)
                },
                //Items = new List<ReceiptItem>
                //{
                //    new ReceiptItem("Fund Transfer", price: $"{_amount:C}", , image: new CardImage(url: "https://d30y9cdsu7xlg0.cloudfront.net/png/3050-200.png")),
                //},
                Tax     = "You wish",
                Total   = $"{_amount:C}",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "View online",
                        "http://example.com/")
                }
            };

            return(receiptCard.ToAttachment());
        }
예제 #10
0
        private Attachment RecipeCard(IDialogContext context, Basket basket)
        {
            var checkoutButton = new CardAction()
            {
                Type  = ActionTypes.PostBack,
                Value = $@"{{ 'ActionType': '{BotActionTypes.BasketCheckout}'}}",
                Title = "Checkout"
            };

            var continueShoppingButton = new CardAction()
            {
                Type  = ActionTypes.PostBack,
                Value = $@"{{ 'ActionType': '{BotActionTypes.ContinueShopping}'}}",
                Title = "Continue shopping"
            };
            var cardButtons = new List <CardAction>
            {
                checkoutButton,
                continueShoppingButton
            };

            decimal total = basket.Items.Sum(i => i.UnitPrice * i.Quantity);

            var basketCard = new ReceiptCard()
            {
                Title   = "eShopAI receipt",
                Buttons = cardButtons,
                Items   = UIHelper.CreateOrderBasketItemListReceipt(basket.Items),
                Total   = $"{total} $"
            };

            return(basketCard.ToAttachment());
        }
예제 #11
0
        public static ReceiptCard GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "John Doe",
                Facts = new List <Fact> {
                    new Fact("Order Number", "1234"), new Fact("Payment Method", "VISA 5555-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        "Data Transfer",
                        price: "$ 38.45",
                        quantity: "368",
                        image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/traffic-manager.png")),
                    new ReceiptItem(
                        "App Service",
                        price: "$ 45.00",
                        quantity: "720",
                        image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/cloud-service.png")),
                },
                Tax     = "$ 7.50",
                Total   = "$ 90.95",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "More information",
                        "https://account.windowsazure.com/content/6.10.1.38-.8225.160809-1618/aux-pre/images/offer-icon-freetrial.png",
                        value: "https://azure.microsoft.com/en-us/pricing/"),
                },
            };

            return(receiptCard);
        }
예제 #12
0
        private Attachment GetReceiptCard()
        {
            HabitatHomeService obj = new HabitatHomeService();
            var listtopProduct     = obj.MiniCart();
            var receiptItems       = new List <ReceiptItem>();

            foreach (Line topProduct in listtopProduct.Result.Lines)
            {
                var receiptItem = new ReceiptItem(
                    title: Truncate(topProduct.DisplayName, 15),
                    quantity: topProduct.Quantity,
                    price: topProduct.LinePrice,
                    image: new CardImage(StringConstants.HostUrl + topProduct.Image));

                receiptItems.Add(receiptItem);
            }
            var receiptCard = new ReceiptCard()
            {
                Title = Resources.ShowCartDialog_MiniCart_Title,
                Items = receiptItems,
                Tax   = listtopProduct.Result.TaxTotal,
                Total = listtopProduct.Result.Total
            };

            return(receiptCard.ToAttachment());
        }
예제 #13
0
        //3
        private static Attachment GetReceiptCard()
        {
            var heroCard = new ReceiptCard()
            {
                Title = "Receipt Card",
                Facts = new List <Fact> {
                    new Fact("Номер заказа", "34221543"), new Fact("Метод оплаты", "VISA 1234-****-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem("Обмен данными", price: "$ 10.50", quantity: "388", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/blob/master/icons/Azure%20Active%20Directory%20(AAD).svg")),
                    new ReceiptItem("Sluzhba prilozheniy", price: "$ 100.00", quantity: "1000", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/blob/master/icons/Azure%20Active%20Directory%20Access%20Control%20Services%20(ACS).svg"))
                },
                Tax     = "$ 5.50",
                Total   = "$ 116.00",
                Buttons = new List <CardAction>
                {
                    new CardAction(ActionTypes.OpenUrl, "More info",
                                   "http://geek-nose.com/wp-content/uploads/2016/01/kak-ustanovit-prilozhenie-na-android-s-kompjutera-№12.jpg",
                                   "https://dev.botframework.com")
                }
            };

            return(heroCard.ToAttachment());
        }
        private Activity DisplayAccount(List <Account> accounts, Activity activity)
        {
            Activity replyToConversation = activity.CreateReply("");

            replyToConversation.Recipient   = activity.From;
            replyToConversation.Type        = "message";
            replyToConversation.Attachments = new List <Attachment>();
            List <ReceiptItem> items = new List <ReceiptItem>();

            decimal total = 0;

            foreach (Account acc in accounts)
            {
                total += acc.Value;
                ReceiptItem item = new ReceiptItem()
                {
                    Title    = acc.Name,
                    Subtitle = acc.Type,
                    Price    = acc.Value.ToString()
                };
                items.Add(item);
            }

            ReceiptCard Card = new ReceiptCard()
            {
                Title = "Accounts",
                Items = items,
                Total = total.ToString()
            };

            Attachment plAttachment = Card.ToAttachment();

            replyToConversation.Attachments.Add(plAttachment);
            return(replyToConversation);
        }
예제 #15
0
        private Attachment GetReceiptCard()
        {
            var order = this.ordersService.RetrieveOrder(this.order.OrderID);
            var creditCardOffuscated = order.PaymentDetails.CreditCardNumber.Substring(0, 4) + "-****";
            var receiptCard          = new ReceiptCard
            {
                Title = Resources.RootDialog_Receipt_Title,
                Facts = new List <Fact>
                {
                    new Fact(Resources.RootDialog_Receipt_OrderID, order.OrderID),
                    new Fact(Resources.RootDialog_Receipt_PaymentMethod, creditCardOffuscated)
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        title: order.FlowerCategoryName,
                        subtitle: order.Bouquet.Name,
                        price: order.Bouquet.Price.ToString("C"),
                        image: new CardImage(order.Bouquet.ImageUrl)),
                },
                Total = order.Bouquet.Price.ToString("C")
            };

            return(receiptCard.ToAttachment());
        }
예제 #16
0
        public static ReceiptCard GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "John Doe",
                Facts = new List <Fact> {
                    new Fact("Order Number", "1234"), new Fact("Payment Method", "VISA 5555-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        "Data Transfer",
                        price: "$ 38.45",
                        quantity: "368"),
                    new ReceiptItem(
                        "App Service",
                        price: "$ 45.00",
                        quantity: "720"),
                },
                Tax   = "$ 7.50",
                Total = "$ 90.95",
            };

            return(receiptCard);
        }
예제 #17
0
        private List <Attachment> ReceiptOrders(IMessageActivity reply, List <Order> orders)
        {
            var attachements = new List <Attachment>();

            foreach (var order in orders)
            {
                var orderDetailsButtons = new List <CardAction>
                {
                    new CardAction()
                    {
                        Type  = ActionTypes.PostBack,
                        Value = $@"{{ 'ActionType': '{BotActionTypes.OrderDetail}', 'OrderNumber': '{order.OrderNumber}' }}",
                        Title = "Detail"
                    }
                };

                var orderDetailsCard = new ReceiptCard()
                {
                    Title   = $"Order Details",
                    Facts   = BuildOrderFacts(order),
                    Buttons = orderDetailsButtons,
                    Total   = $"{order.Total} $"
                };

                attachements.Add(orderDetailsCard.ToAttachment());
            }
            return(attachements);
        }
예제 #18
0
        private static Attachment GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "Заголовок Receipt Card",
                Facts = new List <Fact> {
                    new Fact("Номер заказа", "1234"), new Fact("Метод оплаты", "VISA 5555-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem("Обмен данными", price: "$ 38.45", quantity: "368", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/traffic-manager.png")),
                    new ReceiptItem("Служба приложений", price: "$ 45.00", quantity: "720", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/cloud-service.png")),
                },
                Tax     = "$ 7.50",
                Total   = "$ 90.95",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "Больше информации",
                        "https://account.windowsazure.com/content/6.10.1.38-.8225.160809-1618/aux-pre/images/offer-icon-freetrial.png",
                        "https://azure.microsoft.com/en-us/pricing/")
                }
            };

            return(receiptCard.ToAttachment());
        }
예제 #19
0
파일: BotDialogs.cs 프로젝트: wmeints/betty
        /// <summary>
        /// Creates the extended security check dialog.
        /// </summary>
        /// <returns>Returns the dialog structure.</returns>
        private Dialog CreateExtendedSecurityCheckDialog()
        {
            var steps = new WaterfallStep[]
            {
                async(stepContext, cancellationToken) =>
                {
                    var card = new ReceiptCard
                    {
                        Title = "Extended security check",
                        Items = new List <ReceiptItem>
                        {
                            new ReceiptItem(title: "Luggage check", quantity: "1"),
                            new ReceiptItem(title: "Extended personal security check", quantity: "1"),
                        },
                        Tax   = "12 credits",
                        Total = "75 credits",
                    };

                    var receiptMessage = MessageFactory.Attachment(
                        card.ToAttachment(),
                        "Okay, well, here's a receipt, please follow Al for an additional security check.");

                    await stepContext.Context.SendActivityAsync(receiptMessage);

                    await stepContext.Context.SendActivityAsync("Have a pleasant security check!");

                    return(await stepContext.EndDialogAsync());
                },
            };

            return(new WaterfallDialog(DialogNames.ExtendedSecurityCheckDialog, steps));
        }
예제 #20
0
        private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <object> result)
        {
            var activity = await result;

            if (activity.ToString() == "Yes, Send a mail")
            {
                var OutputMessage = context.MakeMessage();
                var receiptCard   = new ReceiptCard
                {
                    Title = "Message Sent Sucessfully",
                    Facts = new List <Fact> {
                        new Fact("Sender", fromid), new Fact("Receiver", helpdesk), new Fact("Subject", subject)
                    },
                    Buttons = new List <CardAction>
                    {
                        new CardAction(
                            ActionTypes.OpenUrl,
                            "Open Account",
                            "https://www.outlook.com")
                    }
                };

                var attachment = receiptCard.ToAttachment();
                OutputMessage.Attachments.Add(attachment);
                await context.PostAsync(OutputMessage);
            }
            else
            {
                await context.PostAsync("MAIL NOT SENT ");
            }
            context.Done <object>(new object());
        }
예제 #21
0
        protected virtual void AddFooter(ReceiptCard reciept)
        {
            if (!string.IsNullOrWhiteSpace(reciept.Tax))
            {
                Children.Add(new Label {
                    HorizontalTextAlignment = TextAlignment.End,
                    Text = $"Tax :{reciept.Tax}",
                });
            }

            if (!string.IsNullOrWhiteSpace(reciept.Vat))
            {
                Children.Add(new Label {
                    HorizontalTextAlignment = TextAlignment.End,
                    Text = $"Vat :{reciept.Vat}",
                });
            }

            if (!string.IsNullOrWhiteSpace(reciept.Total))
            {
                Children.Add(new Label {
                    HorizontalTextAlignment = TextAlignment.End,
                    Text = $"Total :{reciept.Total}",
                });
            }
        }
예제 #22
0
        public static ReceiptCard GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "Webcreek",
                Facts = new List <Fact> {
                    new Fact("Número Orden", "1234"), new Fact("Payment Method", "VISA 5555 - ****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        "Pizza",
                        price: "$ 15.00",
                        quantity: "2",
                        image: new CardImage(url: "https://www.lavanguardia.com/r/GODO/LV/p6/WebSite/2019/04/03/Recortada/img_rocarceller_20190204-120844_imagenes_lv_getty_istock-938742222-kuKF-U4614441024200t-992x558@LaVanguardia-Web.jpg")),
                    new ReceiptItem(
                        "Hot Wings x 6",
                        price: "$ 10.00",
                        quantity: "3",
                        image: new CardImage(url: "https://www.lakegenevacountrymeats.com/wp-content/uploads/ChickenWings.jpg")),
                },
                Tax     = "$ 9.00",
                Total   = "$ 69.00",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "Mas información",
                        "https://account.windowsazure.com/content/6.10.1.38-.8225.160809-1618/aux-pre/images/offer-icon-freetrial.png",
                        value: "https://azure.microsoft.com/en-us/pricing/"),
                },
            };

            return(receiptCard);
        }
예제 #23
0
        private static ReceiptCard GetReceiptCard(SwgohChar theChar)
        {
            var receiptCard = new ReceiptCard
            {
                Title = theChar.Name,
                Facts = new List <Fact> {
                    new Fact("Description", theChar.Description), new Fact("Alignment", theChar.Alignment)
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        image: new CardImage(url: "https:" + theChar.Image)),
                },

                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "More information on SWGOH.gg",
                        "https:" + theChar.Image,
                        value: theChar.Url),
                },
            };

            return(receiptCard);
        }
예제 #24
0
        public static ReceiptCard GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "John Doe",
                Facts = new List <Fact> {
                    new Fact("Order Number", "1234"), new Fact("Payment Method", "VISA 5555-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(
                        "Data Transfer",
                        price: "$ 38.45",
                        quantity: "368",
                        image: new CardImage(url: "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQzX4EE5eYZ625C03SfumsuK13kIcpm5nNzJMVyYbVByByuHq--cA")),
                    new ReceiptItem(
                        "App Service",
                        price: "$ 45.00",
                        quantity: "720",
                        image: new CardImage(url: "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQzX4EE5eYZ625C03SfumsuK13kIcpm5nNzJMVyYbVByByuHq--cA")),
                },
                Tax     = "$ 7.50",
                Total   = "$ 90.95",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "More information",
                        "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQzX4EE5eYZ625C03SfumsuK13kIcpm5nNzJMVyYbVByByuHq--cA",
                        value: "https://azure.microsoft.com/en-us/pricing/"),
                },
            };

            return(receiptCard);
        }
예제 #25
0
        //create order receipt card
        public static ReceiptCard CreateOrder(Order order)
        {
            List <ReceiptItem> productList = new List <ReceiptItem>();
            int total = 0;

            foreach (var product in order.Cart)
            {
                total += product.Price * product.Quantity;
                productList.Add(
                    new ReceiptItem(
                        title: product.Name,
                        subtitle: "$ " + product.Price,
                        price: "x" + product.Quantity.ToString(),
                        quantity: product.Quantity.ToString(),
                        image: new CardImage(url: product.Image))
                    );
            }

            var receiptCard = new ReceiptCard
            {
                Title = "YOUR ORDER",
                Facts = new List <Fact> {
                    new Fact("Name", order.Name), new Fact("Phone Number", order.Phone)
                },
                Items = productList,
                Tax   = "$0",
                Total = "$" + total,
            };

            return(receiptCard);
        }
예제 #26
0
        public static Attachment GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = "Mumbai Journey",

                Items = new List <ReceiptItem>
                {
                    new ReceiptItem("Air Plane", price: "Upto 8000 Rs: ", quantity: "1", image: new CardImage(url: "https://www.google.co.in/search?q=airplane+images&source=lnms&tbm=isch&sa=X&ved=0ahUKEwi65JXqtubZAhUMlJQKHcyBA64Q_AUICigB&biw=1407&bih=655#imgrc=VjENmwnfXxIMZM:")),
                    new ReceiptItem("Train", price: "$ 45.00", quantity: "1", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/cloud-service.png")),
                },
                Tax     = "$ 7.50",
                Total   = "$ 90.95",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        "More information",
                        "https://account.windowsazure.com/content/6.10.1.38-.8225.160809-1618/aux-pre/images/offer-icon-freetrial.png",
                        "https://azure.microsoft.com/en-us/pricing/")
                }
            };

            return(receiptCard.ToAttachment());
        }
예제 #27
0
        private static Attachment GetReceiptCard()
        {
            var receiptCard = new ReceiptCard
            {
                Title = StringResources.Receipt_Card_Title,
                Facts = new List <Fact> {
                    new Fact(StringResources.Order_Number, "1234"), new Fact(StringResources.Payment_Method, "VISA 5555-****")
                },
                Items = new List <ReceiptItem>
                {
                    new ReceiptItem(StringResources.Data_Exchange, price: "$ 38.45", quantity: "368", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/traffic-manager.png")),
                    new ReceiptItem(StringResources.Application_Service, price: "$ 45.00", quantity: "720", image: new CardImage(url: "https://github.com/amido/azure-vector-icons/raw/master/renders/cloud-service.png")),
                },
                Tax     = "$ 7.50",
                Total   = "$ 90.95",
                Buttons = new List <CardAction>
                {
                    new CardAction(
                        ActionTypes.OpenUrl,
                        StringResources.More_Information,
                        "https://account.windowsazure.com/content/6.10.1.38-.8225.160809-1618/aux-pre/images/offer-icon-freetrial.png",
                        "https://azure.microsoft.com/en-us/pricing/")
                }
            };

            return(receiptCard.ToAttachment());
        }
예제 #28
0
        internal static IEnumerable <ReceiptCard> CreateReceiptCardSetWithOneCardThatHasSetProperties(string title = default(string), IList <ReceiptItem> items = default(IList <ReceiptItem>), IList <Fact> facts = default(IList <Fact>), CardAction tap = default(CardAction), string total = default(string), string tax = default(string), string vat = default(string), IList <CardAction> buttons = default(IList <CardAction>))
        {
            var matchingCard = new ReceiptCard(title, items, facts, tap, total, tax, vat, buttons);
            var cards        = CreateRandomReceiptCards();

            cards.Add(matchingCard);
            return(cards);
        }
        private Attachment GetReceiptCard()
        {
            var receiptCard = new ReceiptCard()
            {
                Title = "購物清單",
                Total = "256.0",
                Tax   = "1.0",
                Vat   = "5.0",
                Items = new List <ReceiptItem>()
                {
                    new ReceiptItem()
                    {
                        Title    = "美式咖啡",
                        Subtitle = "1杯",
                        Price    = "120.0",
                        Quantity = "1",
                        Image    = new CardImage("https://via.placeholder.com/150/e65100/FFFFFF/?text=C")
                    },
                    new ReceiptItem()
                    {
                        Title    = "全麥土司",
                        Subtitle = "2條",
                        Price    = "65.0",
                        Quantity = "2",
                        Image    = new CardImage("https://via.placeholder.com/150/fbc02d/FFFFFF/?text=T")
                    }
                },
                Facts = new List <Fact>()
                {
                    new Fact()
                    {
                        Key   = "日期",
                        Value = DateTime.Now.ToShortDateString()
                    },
                    new Fact()
                    {
                        Key   = "編號",
                        Value = "AB01234567"
                    },
                    new Fact()
                    {
                        Key   = "購買人",
                        Value = "Puck"
                    }
                },
                Buttons = new List <CardAction>()
                {
                    new CardAction()
                    {
                        Type  = ActionTypes.ImBack,
                        Title = "確認",
                        Value = "OK"
                    }
                }
            };

            return(receiptCard.ToAttachment());
        }
예제 #30
0
        public void WithReceiptItem_should_return_ReceiptItemSetAssertions()
        {
            var receiptItems = ReceiptItemTestData.CreateRandomReceiptItems();
            var receiptCard  = new ReceiptCard(items: receiptItems);

            var sut = new ReceiptCardAssertions(receiptCard);

            sut.WithReceiptItem().Should().BeAssignableTo <ReceiptItemSetAssertions>().And.NotBeNull();
        }