コード例 #1
0
    public void Execute()
    {
        OrderManager manager = OrderManagerFactory.Create();

        Console.Clear();
        Console.WriteLine("Lookup orders");
        Console.WriteLine("--------------------------");
        Console.Write("Enter the order date (DDMMYYYY):");
        string orderDate = Console.ReadLine();

        LookupOrdersResponse response = manager.LookupOrdersbyDate(orderDate);

        if (response.Success)
        {
            foreach (Order order in response.Order)
            {
                ConsoleIO.DisplayOrder(order, orderDate);
            }
        }
        else
        {
            Console.WriteLine("An error occurred: ");
            Console.WriteLine(response.Message);
        }

        Console.WriteLine("Press any key to continue...");
        Console.ReadKey();
    }
コード例 #2
0
        public void Exicute()
        {
            Console.Clear();
            OrderManager orderManager = OrderManagerFactory.Create();

            Console.WriteLine("Lookup orders for a specified date");
            Console.WriteLine("===============================");
            Console.Write("Enter a date: ");
            string orderDate = Console.ReadLine();
            LookupOrdersResponse lookupOrderResponse = orderManager.LookupOder(orderDate);

            Console.Clear();
            if (lookupOrderResponse.Success)
            {
                foreach (var order in lookupOrderResponse.Orders)
                {
                    ConsoleIO.DisplayOrderDetails(order);
                }
            }
            else
            {
                Console.WriteLine(lookupOrderResponse.Message);
            }
            Console.WriteLine("Press any key to continue.");
            Console.ReadLine();
        }
コード例 #3
0
        public LookupOrdersResponse LookupOrdersbyDate(string stringOrderDate)
        {
            LookupOrdersResponse response = new LookupOrdersResponse();
            DateTime             orderDate;

            if (!DateTime.TryParseExact(stringOrderDate, "ddMMyyyy", CultureInfo.InvariantCulture,
                                        DateTimeStyles.None, out orderDate))
            {
                response.Success = false;
                response.Message = ($"{stringOrderDate} is not a valid date.");
                return(response);
            }

            response.Order = _orderRepository.LoadOrders(stringOrderDate);

            if (response.Order.Count == 0)
            {
                response.Success = false;
                response.Message = $"There are no orders for {orderDate}";
            }
            else
            {
                response.Success = true;
            }

            return(response);
        }
コード例 #4
0
ファイル: OrderTests.cs プロジェクト: RobertSheran/GuildWork
        public void CanLoadOrdersTest()
        {
            OrderManager         orderManager        = new OrderManager(new OrderTestRepository());
            LookupOrdersResponse orderLookupResponse = orderManager.LookupOder("01/01/2020");

            Assert.IsTrue(orderLookupResponse.Success);
            orderLookupResponse = orderManager.LookupOder("01/02/2020");
            Assert.IsFalse(orderLookupResponse.Success);
        }
コード例 #5
0
        public void LoadOrderTest()
        {
            OrderManager manager = OrderManagerFactory.Create();

            LookupOrdersResponse response = manager.LookupOrdersbyDate("01012019");

            Assert.IsNotNull(response.Order);
            Assert.IsTrue(response.Success);
            Assert.AreEqual(2, response.Order.Count);
        }
コード例 #6
0
        public void RemoveOrderTest()
        {
            OrderManager         manager   = OrderManagerFactory.Create();
            string               orderDate = "01012019";
            LookupOrdersResponse response  = manager.LookupOrdersbyDate(orderDate);
            Order order = response.Order.First();


            Response resp = manager.RemoveOrder(orderDate, Convert.ToString(order.OrderNumber));

            Assert.AreEqual(resp.Success, true);
        }
コード例 #7
0
        public LookupOrdersResponse LookupOder(string orderDate)
        {
            LookupOrdersResponse orderLookupResponse = new LookupOrdersResponse();
            var _orders = _orderRepository.LoadOrders(orderDate);

            if (_orders == null || _orders.FirstOrDefault() == null)
            {
                orderLookupResponse.Message = (orderDate + " has no orders. \nFormat: MM/dd/yyyy");
                orderLookupResponse.Orders  = null;
                orderLookupResponse.Success = false;
            }
            else
            {
                orderLookupResponse.Message = "Success";
                orderLookupResponse.Orders  = _orders;
                orderLookupResponse.Success = true;
            }

            return(orderLookupResponse);
        }