public void Execute() { OrderManager manager = OrderManagerFactory.Create(); Console.Clear(); string userInput = SystemIO.OrderDateRequest(); DateTime order = Convert.ToDateTime(userInput); int orderNumber = SystemIO.OrderNumberRequest(); LookupOrderResponse response = manager.AccountByDateAndNumber(order, orderNumber); if (response.Success) { SystemIO.DisplaySingleOrderDetails(response.Order); Console.ReadKey(); SystemIO.EditOrderMenu(response.Order); } else { Console.WriteLine(response.Message); Console.WriteLine("An error has occured: "); } Console.ReadKey(); }
public void Execute() { OrderManager manager = OrderManagerFactory.Create(); Console.Clear(); Console.WriteLine("Lookup an Order"); Console.WriteLine("------------------------"); Console.WriteLine(); DateTime OrderDate = ConsoleIO.GetRequiredDateFromUser("Enter a date (MMDDYYYY): "); int OrderNumber = ConsoleIO.GetRequiredIntFromUser("Enter an order number: "); LookupOrderResponse response = manager.LookupOrder(OrderNumber, OrderDate); if (response.Order.Area == -1) { Console.WriteLine("The ordernumber entered does not exist "); Console.WriteLine("Press any key to continue... "); } else if (response.Order.Area == -2) { Console.WriteLine("We do not have a file for that date, try making one "); Console.WriteLine("Press any key to continue... "); } else { ConsoleIO.DisplayOrderDetails(response.Order); } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); }
public LookupOrderResponse LookupOrder(string stringOrderDate, string orderNumber) { LookupOrderResponse response = new LookupOrderResponse(); 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); } var orders = _orderRepository.LoadOrders(stringOrderDate); response.Order = orders.Where(o => o.OrderNumber.Equals(orderNumber)).FirstOrDefault(); if (response.Order is null) { response.Success = false; response.Message = $"There is no {orderNumber} order number on {stringOrderDate}"; } else { response.Success = true; } return(response); }
public LookupOrderResponse SaveNewOrder(Order order) { LookupOrderResponse response = new LookupOrderResponse(); response.Order = order; response.Success = _orderRepo.SaveNewOrder(order); return(response); }
public LookupOrderResponse LookupOrder(int OrderNumber, DateTime OrderDate) { LookupOrderResponse response = new LookupOrderResponse(); response.Order = _orderRepository.LoadOrder(OrderNumber, OrderDate); if (response.Order == null) { response.Sucess = true; } return(response); }
public void Execute() { OrderManager manager = OrderManagerFactory.Create(); Console.Clear(); Console.WriteLine("Remove Order"); Console.WriteLine("================================="); Console.WriteLine(); DateTime OrderDate = ConsoleIO.GetRequiredDateFromUser("Enter a date (MMDDYYYY):"); int OrderNumber = ConsoleIO.GetRequiredIntFromUser("OrderNumber: "); LookupOrderResponse responseData = manager.LookupOrder(OrderNumber, OrderDate); RemoveOrderResponse RemoveData = manager.RemoveOrder(OrderNumber, OrderDate); if (RemoveData.Order.Area == 1) { ConsoleIO.DisplayOrderDetails(responseData.Order); Console.WriteLine(); if (ConsoleIO.GetYesNoAnswerFromUser("Remove the following information") == "Y") { RemoveOrderResponse response = manager.RemoveOrder(OrderNumber, OrderDate); Console.WriteLine("Order Removed!"); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } else { Console.WriteLine("Remove Cancelled"); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } } if (RemoveData.Order.Area == -1) { Console.WriteLine("The ordernumber entered does not exist "); Console.WriteLine("Press any key to continue... "); Console.ReadKey(); } if (RemoveData.Order.Area == -2) { Console.WriteLine("We do not have a file for that date, try making one "); Console.WriteLine("Press any key to continue... "); Console.ReadKey(); } }
public void Execute() { OrderManager manager = OrderManagerFactory.Create(); Console.Clear(); Console.WriteLine("Edit order"); Console.WriteLine("--------------------------"); Console.Write("Enter the order date (DDMMYYYY):"); string orderDate = Console.ReadLine(); Console.Write("Enter the order number: "); string orderNumber = Console.ReadLine(); LookupOrderResponse response = manager.LookupOrder(orderDate, orderNumber); if (response.Success) { Console.Write("Customer Name: "); SendKeys.SendWait(Convert.ToString(response.Order.CustomerName)); string newCustomerName = Console.ReadLine(); Console.Write("State: "); SendKeys.SendWait(Convert.ToString(response.Order.State)); string newState = Console.ReadLine(); Console.Write("Product Type: "); SendKeys.SendWait(Convert.ToString(response.Order.ProductType)); string newProductType = Console.ReadLine(); Console.Write("Area: "); SendKeys.SendWait(Convert.ToString(response.Order.Area)); string newArea = Console.ReadLine(); Console.Write("Save changes? (Y/N):"); string saveInput = Console.ReadLine(); if (saveInput == "Y") { EditOrderResponse editResponse = manager.EditOrder(orderDate, orderNumber, newCustomerName, newState, newProductType, newArea); } } else { Console.WriteLine("An error occurred: "); Console.WriteLine(response.Message); } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); }
public LookupOrderResponse LookupOrder(DateTime orderDate) { LookupOrderResponse response = new LookupOrderResponse(); response.Orders = _orderRepository.LoadAllOrders(orderDate); if (response.Orders == null) { response.Success = false; response.Message = ($"{orderDate} does not exist!"); } else { response.Success = true; } return(response); }
public LookupOrderResponse AccountByDateAndNumber(DateTime date, int orderNumber) { LookupOrderResponse response = new LookupOrderResponse(); response.Order = _orderRepo.LookupOrder(date, orderNumber); if (response.Order == null) { response.Success = false; response.Message = $"{date} is not a valid order"; } else { response.Success = true; } return(response); }
internal void Execute() { OrderManager manager = OrderManagerFactory.Create(); Console.Clear(); Console.WriteLine("Lookup an order"); Console.WriteLine("--------------------"); DateTime orderDate = ConsoleIO.GetDate(); LookupOrderResponse response = manager.LookupOrder(orderDate); if (response.Success) { ConsoleIO.DisplayOrderDetails(response.Orders); } else { Console.WriteLine("An error occurred: "); Console.WriteLine(response.Message); } Console.ReadKey(); }
public void Execute() { OrderManager manager = OrderManagerFactory.Create(); string dateInput = SystemIO.OrderDateRequest(); DateTime orderDate = Convert.ToDateTime(dateInput); int orderNumber = SystemIO.OrderNumberRequest(); LookupOrderResponse response = manager.AccountByDateAndNumber(orderDate, orderNumber); if (response.Success) { manager.DeleteOrder(response.Order); Console.WriteLine("Order has been deleted."); } else { Console.WriteLine("An error has occured: "); Console.WriteLine(response.Message); } Console.ReadKey(); }
public EditOrderResponse EditOrder( string stringOrderDate, string stringOrderNumber, string newCustomerName, string newState, string newProductType, string newArea) { EditOrderResponse response = new EditOrderResponse(); 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); } else { LookupOrderResponse luResponse = LookupOrder(stringOrderDate, stringOrderNumber); Order origOrder = luResponse.Order; if (origOrder == null) { response.Success = false; response.Message = $"There is no {stringOrderNumber} order number on {stringOrderDate}"; return(response); } else { response.Success = true; Tax tax = taxRep.LoadTax(newState); Product product = productRep.LoadProduct(newProductType); decimal taxRate = Convert.ToDecimal(tax.TaxRate); decimal areaDecimal = Convert.ToDecimal(newArea); decimal material = areaDecimal * product.CostPerSquareFoot; decimal labor = areaDecimal * product.LaborCostPerSquareFoot; decimal taxTotal = ((material + labor) * (taxRate / 100)); decimal total = material + labor + taxTotal; _orderRepository.AddOrder(response.Order, stringOrderDate); Order order = new Order { OrderNumber = origOrder.OrderNumber, CustomerName = newCustomerName, State = newState, TaxRate = taxRate, ProductType = newProductType, Area = Convert.ToInt16(newArea), CostPerSquareFoot = product.CostPerSquareFoot, LaborCostPerSquareFoot = product.LaborCostPerSquareFoot, MaterialCost = material, LaborCost = labor, Tax = taxTotal, Total = total }; _orderRepository.RemoveOrder(stringOrderDate, stringOrderNumber); _orderRepository.AddOrder(response.Order, stringOrderDate); response.Message = $"Order {stringOrderNumber} has been updated."; } } return(response); }