Ejemplo n.º 1
0
        //private string _filePath;

        //public OrderManager(string filepath)
        //{
        //_filePath = filepath;
        //}

        //works
        public ViewOrderResponses ViewOrders(DateTime Date)
        {
            IOrderRepository   repo     = RepositoryFactory.CreateOrderRepo();
            ViewOrderResponses response = new ViewOrderResponses();
            var orders = repo.ListOrdersByDate(Date);

            if (orders.Count == 0)
            {
                response.Success = false;
                response.Message = "No orders found.";
            }

            else
            {
                response.Success = true;
                response.orders  = orders;
            }


            return(response);
        }
Ejemplo n.º 2
0
        public void Execute()
        {
            OrderManager manager = new OrderManager();


            Console.Clear();
            DateTime     date = new DateTime();
            int          indexNumber;
            DateTime     DateToCheck;
            bool         validDate     = false;
            bool         validResponse = false;
            List <Order> resultsList   = new List <Order>();

            Console.WriteLine("View Order Details");
            Console.WriteLine(ConsoleIO.HorizontalLine);


            Console.WriteLine("Enter the date of the order: ");
            string prompt = Console.ReadLine();


            date = ConsoleIO.GetRequiredDateTimeFromUser(prompt);



            ViewOrderResponses response = manager.ViewOrders(date);

            //while (!validDate)

            if (response.orders == null)
            {
                Console.WriteLine("No orders found for that date.");
                Console.WriteLine("Press any key to return to the Main Menu.");
                ConsoleIO.ErrorLogging();
                Console.ReadKey();
                Console.Clear();
                MainMenu.Main();
            }



            foreach (var order in
                     response.orders)
            {
                ConsoleIO.DisplayOrderDetails(order);
                Console.ReadLine();
                resultsList.Add(order);
            }



            Console.WriteLine("Please enter the number that corresponds to the order you'd like to see in more detail: ");
            string input = Console.ReadLine();



            while (validResponse == false)
            {
                indexNumber = ConsoleIO.GetRequiredIntFromUser(input);
                if (indexNumber <= resultsList.Count)
                {
                    ConsoleIO.FullOrderDetails(resultsList[indexNumber - 1]);
                    Console.ReadLine();
                    validResponse = true;
                    Console.ReadLine();
                }
                else
                {
                    Console.WriteLine("Number outside of range of results.");
                    ConsoleIO.ErrorLogging();
                    Console.WriteLine("Please enter the number of the order you'd like to see in more detail: ");
                    input = Console.ReadLine();
                }
            }
            Console.Clear();
            MainMenu.Main();
        }
Ejemplo n.º 3
0
        public void Execute()
        {
            DateTime     date        = new DateTime();
            List <Order> resultsList = new List <Order>();
            OrderManager manager     = new OrderManager();
            Order        editedOrder = new Order();

            Console.Clear();
            Console.WriteLine("Edit Order Data");
            Console.WriteLine(ConsoleIO.HorizontalLine);
            Console.WriteLine("Enter the date of the order: ");
            string prompt = Console.ReadLine();


            date = ConsoleIO.GetRequiredDateTimeFromUser(prompt);


            ViewOrderResponses response = manager.ViewOrders(date);



            if (response.orders == null)
            {
                Console.WriteLine("No orders found for that date.");
                Console.WriteLine("Press any key to return to the Main Menu.");
                Console.ReadKey();
                Console.Clear();
                MainMenu.Main();
            }


            foreach (var order in
                     response.orders)
            {
                ConsoleIO.DisplayOrderDetails(order);
                resultsList.Add(order);
                Console.ReadLine();
            }


            int selection     = ConsoleIO.GetRequiredIntFromUser("Please enter the number of the order you'd like to edit: ");
            var selectedOrder = from o in resultsList
                                where o.OrderNumber == selection
                                select o;
            Order editOrder = selectedOrder.FirstOrDefault();

            editedOrder.State   = new State();
            editedOrder.Product = new Product();
            Console.WriteLine("Press enter to keep the existing value.", editOrder);
            editedOrder.OrderDate           = editOrder.OrderDate;
            editedOrder.CustomerName        = ConsoleIO.GetEditStringName($"Enter the new customer name ({editOrder.CustomerName}):", editOrder);
            editedOrder.State.StateName     = ConsoleIO.GetEditState($"Enter the new state ({editOrder.State.StateName}):", editOrder);
            editedOrder.Product.ProductType = ConsoleIO.GetEditProduct($"Enter the new product to be ordered ({editOrder.Product.ProductType}):", editOrder);
            editedOrder.Area        = ConsoleIO.GetEditArea($"Enter the new square footage to be covered ({editOrder.Area}):", editOrder);
            editedOrder.OrderNumber = editOrder.OrderNumber;

            editedOrder.State        = manager.GetStateInfo(editedOrder.State.StateName);
            editedOrder.Product      = manager.GetProductInfo(editedOrder.Product.ProductType);
            editedOrder.Tax          = editedOrder.State.TaxRate * editedOrder.Area * editedOrder.Product.CostPerSquareFoot * .01M;
            editedOrder.MaterialCost = editedOrder.Area * editedOrder.Product.CostPerSquareFoot;
            editedOrder.LaborCost    = editedOrder.Area * editedOrder.Product.LaborPerSquareFoot;
            editedOrder.Total        = editedOrder.Tax + editedOrder.MaterialCost + editedOrder.LaborCost;



            manager.EditOrder(date, editOrder, editedOrder);
            Console.WriteLine("Order edited.");
            Console.ReadLine();
            Console.Clear();
            MainMenu.Main();
        }
Ejemplo n.º 4
0
        public void Execute()
        {
            DateTime     date        = new DateTime();
            OrderManager manager     = new OrderManager();
            List <Order> resultsList = new List <Order>();

            Console.Clear();
            Console.WriteLine("Delete Order Data");
            Console.WriteLine(ConsoleIO.HorizontalLine);
            Console.WriteLine("Enter the date of the order: ");
            string prompt = Console.ReadLine();


            date = ConsoleIO.GetRequiredDateTimeFromUser(prompt);

            ViewOrderResponses response = manager.ViewOrders(date);

            if (response.orders == null)
            {
                Console.WriteLine("No orders found for that date.");
                Console.WriteLine("Press any key to return to the Main Menu.");
                Console.ReadKey();
                Console.Clear();
                MainMenu.Main();
            }


            foreach (var order in
                     response.orders)
            {
                ConsoleIO.DisplayOrderDetails(order);
                resultsList.Add(order);
                Console.ReadLine();
            }



            int selection = ConsoleIO.GetRequiredIntFromUser("Please enter the number of the order you'd like to delete: ");

            var selectedOrder = from o in resultsList
                                where o.OrderNumber == selection
                                select o;
            Order deleteOrder = selectedOrder.FirstOrDefault();



            string answer = ConsoleIO.GetYesNoAnswerFromuser($"Are you sure you want to delete #{deleteOrder.OrderNumber}? Enter Y for Yes or N for No.");

            if (answer == "Y")
            {
                Console.WriteLine("Order deleted. Returning to main menu.");
                Console.ReadLine();
                manager.RemoveOrder(date, deleteOrder);
                Console.Clear();
            }
            else
            {
                {
                    Console.WriteLine("Deletion cancelled.");
                    Console.WriteLine("Press any key to return to the main menu.");
                    Console.ReadKey();
                }
            }

            MainMenu.Main();
        }