public void ShowOrder(OrderData orderData, decimal totalPrice, Buyer buyer, bool isCreate) { if (!isCreate) { var delivery = new DeliveryUI(); totalPrice += delivery.GetDeliveryPrice(orderData, buyer); } Console.WriteLine("Your order: "); foreach (var item in orderData.Orders) { if ((item.Buyer.Name == buyer.Name) && (item.Buyer.Address == buyer.Address) && (item.Buyer.Telephone == buyer.Telephone)) { var discount = item.Discount * 100; Console.WriteLine(item.Product.Name + " " + item.ProductValue + " items, costs " + item.Product.Price + "$ for one item.\nDiscount = " + discount + "%. Total price = " + item.TotalPrice + "$" + " Order status - " + item.Status); totalPrice += item.TotalPrice; } } Console.WriteLine("Total price of the whole order with delivery = " + totalPrice + "$"); }
public void CreateOrder(DeliveryData deliveryData, OrderData orderData, ProductData productData, Buyer buyer) { bool isContinue = true; var buyerClient = new BuyerInterface(); var orderService = new OrderService(); var delivery = new DeliveryUI(); int id = GetId(orderData); while (isContinue) { orderData.Orders.Add(orderService.AddOrderItem(productData, buyer, id)); isContinue = buyerClient.Continue(); } decimal totalPrice = delivery.GetDeliveryPrice(orderData, buyer); decimal deliveryPrice = delivery.GetDelivery(deliveryData); delivery.SetDeliveryPrice(orderData, buyer, deliveryPrice); totalPrice += deliveryPrice; buyerClient.ShowOrder(orderData, totalPrice, buyer, true); var logger = new Logger(); logger.SaveIntoFile("The total order`s price was calculated"); }