public OrderSaveResponse EditOrderInFile(Order ordertoedit, DateTime orderdate) { var allOrders = GetAllOrders(); var selectedorder = LoadOrder(orderdate, ordertoedit.OrderNumber); var response = new OrderSaveResponse(); if (selectedorder == null) { response.Success = false; return(response); } else { selectedorder.CustomerName = ordertoedit.CustomerName; selectedorder.Area = ordertoedit.Area; selectedorder.State = ordertoedit.State; var newAllOrders = allOrders.TakeWhile(o => o.OrderNumber != ordertoedit.OrderNumber).ToList(); newAllOrders.Add(ordertoedit); newAllOrders.OrderBy(o => o.OrderNumber); response.Success = true; return(response); } }
public OrderSaveResponse EditOrderInFile(Order ordertoedit, DateTime orderdate) { var header = "OrderNumber|CustomerName|State|TaxRate|ProductType|Area|CostPerSquareFoot|LaborCostPerSquareFoot|MaterialCost|LaborCost|Tax|Total"; var allCurrentOrders = GetAllOrders(orderdate); var newOrderList = allCurrentOrders.Where(o => o.OrderNumber != ordertoedit.OrderNumber).ToList(); newOrderList.Add(ordertoedit); newOrderList = newOrderList.OrderBy(o => o.OrderNumber).ToList(); var path = CreateFilePathFromDate(orderdate); List <string> newFileData = new List <string>(); newFileData.Add(header); foreach (var order in newOrderList.OrderBy(o => o.OrderNumber)) { var orderLine = $"{order.OrderNumber},{order.CustomerName},{order.State},{order.TaxRate},{order.ProductType},{order.Area},{order.CostPerSquareFoot},{order.LaborCostPerSquareFoot},{order.MaterialCost},{order.LaborCost},{order.Tax},{order.Total}."; newFileData.Add(orderLine); } File.Delete(path); File.WriteAllLines(path, newFileData); var response = new OrderSaveResponse(); response.Success = true; response.Message = "Order edited in file."; return(response); }
public OrderSaveResponse SaveOrderToFile(Order order, DateTime orderdate) { _testrepo.Add(order); var response = new OrderSaveResponse(); response.Success = true; return(response); }
public OrderSaveResponse SaveOrderToFile(Order order, DateTime orderdate) { var response = OrderFileExistsInDirectory(orderdate); var ordersaveresponse = new OrderSaveResponse(); if (response == true) { var path = CreateFilePathFromDate(orderdate); var allLinesFromFile = File.ReadAllLines(path); var orderLine = $"{order.OrderNumber},{order.CustomerName},{order.State},{order.TaxRate},{order.ProductType},{order.Area},{order.CostPerSquareFoot},{order.LaborCostPerSquareFoot},{order.MaterialCost},{order.LaborCost},{order.Tax},{order.Total}"; List <string> allLinesToSave = new List <string>(); allLinesToSave.Add(orderLine); File.AppendAllLines(path, allLinesToSave); ordersaveresponse.Success = true; ordersaveresponse.Message = $"New order added to {orderdate}."; return(ordersaveresponse); } else if (response == false) { var path = CreateFilePathFromDate(orderdate); var orderLine = $"{order.OrderNumber},{order.CustomerName},{order.State},{order.TaxRate},{order.ProductType},{order.Area},{order.CostPerSquareFoot},{order.LaborCostPerSquareFoot},{order.MaterialCost},{order.LaborCost},{order.Tax},{order.Total}"; List <string> allLinesToSave = new List <string>(); allLinesToSave.Add(headerLine); allLinesToSave.Add(orderLine); File.AppendAllLines(path, allLinesToSave); ordersaveresponse.Success = true; ordersaveresponse.Message = "New order and file created."; return(ordersaveresponse); } else { ordersaveresponse.Success = false; ordersaveresponse.Message = "An error occured, unable to save order to file. Contact IT!"; return(ordersaveresponse); } }