public OrderRemoveResponse RemoveOrder(string orderDate, int OrderNumber) { OrderRemoveResponse response = new OrderRemoveResponse(); response.OrderList = _orderRepository.List(orderDate); Order order = response.OrderList.Orders.SingleOrDefault(p => p.OrderNumber == OrderNumber); if (order != null) { response.OrderList.Orders.Remove(order); } //Call in the current list with the orderDate //If orderDate doens't exsit errror //var order = list.Single or dault x = x.OrderNumber == orderNumber //if order is not null List.Remove(item); if (response.OrderList.Orders.Contains(order) == true) { response.Success = false; response.Message = "Order could not be Deleted"; } else { _orderRepository.SaveOrder(response.OrderList, response.OrderList.OrderDate); response.Success = true; } return(response); }
public void CanRemoveOrder() { OrderManager manager = OrderManagerFactory.Create(); OrderAddResponse response = new OrderAddResponse(); string orderDate = "12202021"; Order addOrder = new Order { CustomerName = "Bob", State = "OH", ProductType = "Wood", Area = 150.00M }; response = manager.AddOrder(orderDate, addOrder); Assert.AreEqual("Bob", response.OrderList.Orders[2].CustomerName); Assert.AreEqual("OH", response.OrderList.Orders[2].State); Assert.AreEqual("Wood", response.OrderList.Orders[2].ProductType); Assert.AreEqual(150.00M, response.OrderList.Orders[2].Area); OrderRemoveResponse removeResponse = new OrderRemoveResponse(); removeResponse = manager.RemoveOrder(orderDate, 2); Assert.IsTrue(removeResponse.Success); }
public OrderRemoveResponse Remove(Orders passOrderRemove, string orderDate, int orderNumber) { OrderRemoveResponse response = new OrderRemoveResponse(); //response.Orders = _orderRepository.LoadOrder(orderDate); if (passOrderRemove == null) { response.Success = false; response.Message = $"{orderDate} or {orderDate} is not a valid date."; return(response); } else { response.Success = true; } IRemoveOrderRepo removeRule = RemoveOrderRulesFactory.Create(); response = removeRule.OrderRemove(response.Orders, orderDate, orderNumber); if (response.Success) { _orderRepository.OrdersRemove(passOrderRemove, orderDate, orderNumber); } return(response); }
public void Execute() { string orderDate; int orderNumber; bool isOrderNumberValid; OrderManager manager = OrderManagerFactory.Create(); Console.Clear(); Console.WriteLine("Remove Order"); Console.WriteLine("-------------------------------"); orderDate = ConsoleIO.validateDateOrder(); while (true) { orderNumber = Convert.ToInt32(ConsoleIO.GetRequiredNumberString("Enter Order Number: ")); isOrderNumberValid = manager.OrderNumberCount(orderDate, orderNumber); if (isOrderNumberValid == false) { Console.WriteLine("Not a Valid Order Number"); Console.ReadKey(); } else { break; } } //Use display single order OrderLookUpResponse lookUpOrder = new OrderLookUpResponse(); lookUpOrder = manager.LookUpOrder(orderDate); Order deleteOrder = lookUpOrder.OrderList.Orders[orderNumber]; ConsoleIO.DisplaySingleOrder(deleteOrder, orderDate); //Display Order Condition //Query user to delete the order information string userInput = ConsoleIO.GetRequiredStringFormuser("Are you sure you want to delete this order?(y/n)"); if (userInput != "y") { return; } //Figure out how to show error if not y or n //Turn order Date into a int OrderRemoveResponse response = manager.RemoveOrder(orderDate, orderNumber); if (response.Success) { Console.WriteLine("Order was Successfully Deleted"); } else { Console.WriteLine("An Error Occured"); Console.WriteLine(response.Message); } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); }
public OrderRemoveResponse OrderRemove(Orders orders, string orderDate, int orderNumber) { OrderRemoveResponse response = new OrderRemoveResponse(); response.Orders = orders; response.orderDate = orderDate; response.orderNumber = orderNumber; response.Success = true; return(response); }
[TestCase("10/16/2016", 2, true)] //Both date and number correct. Pass. public void DeleteOrderTest(string orderDateString, int orderNumber, bool expectedResult) { OrderManager deleteTester = OrderManagerFactory.Create(); DateTime orderDate; DateTime.TryParse(orderDateString, out orderDate); OrderRemoveResponse response = deleteTester.RemoveOrder(orderDate, orderNumber); Assert.AreEqual(expectedResult, response.Success); }
public void Execute() { string workflow = "Remove"; OrderManager orderManager = OrderManagerFactory.Create(); Headers.DisplayHeader(workflow); //get date DateTime date = ConsoleIO.GetExistingOrderDate("Enter the date of the order you would like to remove (MM/DD/YYYY): "); Headers.DisplayHeader(workflow); //get order number int orderNumber = ConsoleIO.GetOrderNumberFromUser("Enter the order number: "); OrderGetSingleResponse getOrderResponse = orderManager.GetSingleOrder(date, orderNumber); if (getOrderResponse.Success) { Headers.DisplayHeader(workflow); ShowDetails.DisplayOrderDetails(getOrderResponse.Order); if (ConsoleIO.GetYesOrNo("Would you like to remove this order?") == "Y") { OrderRemoveResponse removeOrderResponse = orderManager.RemoveOrder(getOrderResponse.Order); if (!removeOrderResponse.Success) { Console.WriteLine("There was an error removing the order."); Console.WriteLine(removeOrderResponse.Message); } else { Console.WriteLine("Order removed! Press any key to return to main menu..."); Console.ReadKey(); } } else { Console.WriteLine("Remove cancelled. Press any key to return to Main Menu..."); Console.ReadKey(); } } else { Console.WriteLine("An error occured:"); Console.WriteLine(getOrderResponse.Message); Console.WriteLine("Press any key to return to main menu..."); Console.ReadKey(); return; } }
public OrderRemoveResponse RemoveOrder(Order order) { OrderRemoveResponse response = new OrderRemoveResponse(); response.Success = _orderRepository.Remove(order); if (!response.Success) { response.Message = "Remove unsuccessful"; } return(response); }
public OrderRemoveResponse RemoveOrder(DateTime orderDate, int orderNumber) { OrderRemoveResponse response = new OrderRemoveResponse(); List <Order> orders = _orderRepository.List(orderDate); if (orderDate < new DateTime(2016, 1, 1)) { response.Success = false; response.Message = "No orders before the current year may be deleted."; return(response); } if (orders == null || orders.Count == 0) { response.Success = false; return(response); } else { foreach (var order in orders) { if (orderNumber != order.OrderNumber) { continue; } else { _orderRepository.Delete(orderDate, orderNumber); response.Success = true; response.Message = "Order deleted"; return(response); } } response.Success = false; return(response); } }
public void Execute() { bool removed; int orderNumber; ConsoleIO.Header(); Console.WriteLine("Remove an Order"); Console.WriteLine(); do { DateTime removeDate = ConsoleIO.GetOrderDateFromUser("Please enter a date for the order you wish you remove: "); ConsoleIO.Header(); Console.WriteLine("Remove an Order"); Console.WriteLine(); List <Order> orders = ConsoleIO.PrintOrderList(removeDate); Console.WriteLine(ConsoleIO.Separator); Console.WriteLine(); if (orders == null) { Console.WriteLine("Press any key to continue."); Console.ReadKey(); return; } Console.WriteLine("Please enter the order number you wish to remove: "); int.TryParse(Console.ReadLine(), out orderNumber); if (orderNumber <= 0) { Console.WriteLine("Order Number is not valid."); Console.WriteLine("Press any key to continue"); Console.ReadKey(); return; } for (int i = 0; i < orders.Count; i++) { if (orderNumber == orders[i].OrderNumber) { break; } else if ((i == orders.Count - 1) && (orders[i].OrderNumber != orderNumber)) { Console.WriteLine("Order Number {0} does not exist on {1}", orderNumber, removeDate); Console.WriteLine("Press any key to continue"); Console.ReadKey(); return; } } string removeOrder = ConsoleIO.GetYesNoAnswerFromUser($"Are you sure you want to remove order number {orderNumber} on {removeDate:d}? "); if ((removeOrder.ToUpper() == "Y") || (removeOrder.ToUpper() == "YES")) { OrderManager orderManager = OrderManagerFactory.Create(); OrderRemoveResponse response = orderManager.RemoveOrder(removeDate, orderNumber); ConsoleIO.Header(); Console.WriteLine("Order removed."); Console.WriteLine("Press any key to continue."); Console.ReadKey(); removed = false; break; } else if ((removeOrder.ToUpper() == "N") || (removeOrder.ToUpper() == "NO")) { ConsoleIO.Header(); Console.WriteLine("Remove cancelled."); Console.WriteLine("Press any key to continue."); Console.ReadKey(); removed = false; return; } else { removed = true; ConsoleIO.Header(); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Please enter Y/N only."); Console.ResetColor(); Console.WriteLine(); } }while (removed); }
public void Execute() { Console.Clear(); OrderManager orderManager = OrderManagerFactory.Create(); Console.Clear(); Console.WriteLine("Remove an Order"); Console.WriteLine("-------------------------"); bool goodDate = false; string orderDate; do { //must be in the future Console.Write("Enter the date you are interested in (use MMDDYYYY format):\n"); orderDate = Console.ReadLine(); if (orderDate != null && orderDate.Count() == 8) { goodDate = true; continue; } else { Console.WriteLine("Please enter a date in correct format."); goodDate = false; } } while (goodDate == false); bool goodNumber = false; int orderNumber; do { //must be in the future Console.Write("Enter Order Number you wish to edit:\n"); orderNumber = int.Parse(Console.ReadLine()); if (orderNumber <= 0 || orderNumber > 0) { goodNumber = true; continue; } else { Console.WriteLine("Please enter a good order number."); goodNumber = false; } } while (goodNumber == false); Orders passOrderRemove = new Orders(); List <Orders> lastOrders = new List <Orders>(); lastOrders = orderManager._orderRepository.FindOrder(orderDate); if (lastOrders == null) { Console.WriteLine("There are no orders for order number provided. "); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); Menu.Start(); } else { foreach (var order in lastOrders) { if (order.OrderNumber == orderNumber) { passOrderRemove.OrderNumber = order.OrderNumber; passOrderRemove.CustomerName = order.CustomerName; passOrderRemove.State = order.State; passOrderRemove.TaxRate = order.TaxRate; passOrderRemove.ProductType = order.ProductType; passOrderRemove.Area = order.Area; passOrderRemove.CostPerSquareFoot = order.CostPerSquareFoot; passOrderRemove.LaborCostPerSquareFoot = order.LaborCostPerSquareFoot; passOrderRemove.MaterialCost = order.MaterialCost; passOrderRemove.LaborCost = order.LaborCost; passOrderRemove.Tax = order.Tax; passOrderRemove.Total = order.Total; break; } else { continue; } } } Console.Write($"\nOrderNumber is {passOrderRemove.OrderNumber}"); Console.Write($"\nCustomerName is {passOrderRemove.CustomerName}"); Console.Write($"\nStateName is {passOrderRemove.State}"); Console.Write($"\nTaxRate is {passOrderRemove.TaxRate}"); Console.Write($"\nProductType is {passOrderRemove.ProductType}"); Console.Write($"\nArea is {passOrderRemove.Area }"); Console.Write($"\nCostPerSquareFoot is {passOrderRemove.CostPerSquareFoot }"); Console.Write($"\nLaborCostPerSquareFoot is {passOrderRemove.LaborCostPerSquareFoot}"); Console.Write($"\nMaterialCost: {passOrderRemove.MaterialCost}"); Console.Write($"\nLaborCost: {passOrderRemove.LaborCost}"); Console.Write($"\nTax: {passOrderRemove.Tax}"); Console.Write($"\nTotal: {passOrderRemove.Total}"); Console.Write("\n Please review changes above. \n If you are sure you want to delete, please type: Delete \n"); string resp = Console.ReadLine(); if (resp == "Delete") { OrderRemoveResponse response = orderManager.Remove(passOrderRemove, orderDate, orderNumber); if (response.Success) { Console.WriteLine("Your order has been successfully removed!"); } else { Console.WriteLine("An error occurred: "); Console.WriteLine(response.Message); } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } else { Menu.Start(); } }