public static OrdersResponse MapToResponseModel(this OrdersResult ordersResult) { return(new OrdersResponse { Orders = ordersResult.Orders, Count = ordersResult.Orders.Count }); }
public OrdersResult RetrieveOrdersFor(DateTime date) { OrdersResult result = new OrdersResult(); if (!repository.FileExistsFor(date)) { result.Success = false; result.Message = "Order file does not exist for that date!"; } else { result.Success = true; result.Orders = repository.GetOrders(date); } return(result); }
public async Task <OrdersResult> ListAsync(Proxy proxy, string api, string status, int offset, int limit) { return(await Task.Factory.StartNew(() => { HttpWebRequest webRequest = WebRequest.Create("https://api.printful.com/orders") as HttpWebRequest; if (proxy != null) { webRequest.Proxy = proxy.Get(); webRequest.Credentials = proxy.GetCredential(); } webRequest.Method = "GET"; webRequest.ContentType = "application/json; charset=utf-8"; webRequest.Headers.Add("Authorization", "Basic " + Manager.API.Encode(api)); string data = $"status={status}&offset={offset}&limit={limit}"; //replace <value> byte[] data_form = Encoding.UTF8.GetBytes(data); webRequest.ContentLength = data_form.Length; Stream newStream = webRequest.GetRequestStream(); // Send the data. newStream.Write(data_form, 0, data_form.Length); newStream.Close(); WebResponse response = webRequest.GetResponse(); if (((HttpWebResponse)response).StatusCode == HttpStatusCode.OK) { // Get the stream containing content returned by the server. Stream dataStream = response.GetResponseStream(); if (dataStream != null) { // Open the stream using a StreamReader for easy access. StreamReader reader = new StreamReader(dataStream); // Read the content. string responseFromServer = reader.ReadToEnd(); // Display the content. OrdersResult result = JsonConvert.DeserializeObject <OrdersResult>(responseFromServer, Converter.Settings); return result; } } return null; })); }
public void DisplayOrders() { Console.Clear(); Console.WriteLine("Display Orders"); Console.WriteLine("***************************\n"); bool validDate = false; DateTime orderDate = new DateTime(); while (!validDate) { Console.Write("Enter a date (MM/DD/YYYY): "); validDate = DateTime.TryParse(Console.ReadLine(), out orderDate); if (!validDate) { Console.WriteLine("\nInvalid Date"); } } // Give operations class the orderDate and let it return items OrderOperations orderOperations = new OrderOperations(); OrdersResult result = orderOperations.RetrieveOrdersFor(orderDate); if (result.Success) { foreach (var order in result.Orders) { Console.WriteLine("\n{0} {1} {2} {3} {4} {5} {6:c} {7:c} {8:c} {9:c} {10:c} {11:c}", order.OrderNumber, order.CustomerName, order.State, order.TaxRate, order.ProductType, order.Area, order.CostPerSquareFoot, order.LaborCostPerSquareFoot, order.MaterialCost, order.LaborCost, order.Tax, order.Total); } } else { Console.WriteLine("\nUnable to display orders: {0}", result.Message); } Console.WriteLine("\nPress enter to continue"); Console.ReadLine(); }
public void DeleteOrder() { Console.Clear(); Console.WriteLine("Delete Order"); Console.WriteLine("***************************\n"); bool validDate = false; DateTime orderDate = new DateTime(); int orderNumber = 0; while (!validDate) { Console.Write("Enter a date (MM/DD/YYYY): "); validDate = DateTime.TryParse(Console.ReadLine(), out orderDate); if (!validDate) { Console.WriteLine("\nInvalid Date"); } } OrderOperations orderOperations = new OrderOperations(); OrdersResult result = orderOperations.RetrieveOrdersFor(orderDate); bool validEntry = false; if (result.Success) { while (!validEntry) { bool validNumber = false; while (!validNumber) { Console.Write("\nPlease enter an order number: "); validNumber = int.TryParse(Console.ReadLine(), out orderNumber); if (!validNumber) { Console.WriteLine("\nInvalid order number"); } else { bool reply = orderOperations.CheckIfExistingOrder(orderNumber, orderDate); if (reply) { validEntry = true; } else { Console.WriteLine("\nThere is no order for that number on that date!"); } } } } Order fullOrder = orderOperations.RetrieveOrderByNumber(orderNumber, orderDate); Console.WriteLine("\n{0} {1} {2} {3} {4} {5} {6:c} {7:c} {8:c} {9:c} {10:c} {11:c}", fullOrder.OrderNumber, fullOrder.CustomerName, fullOrder.State, fullOrder.TaxRate, fullOrder.ProductType, fullOrder.Area, fullOrder.CostPerSquareFoot, fullOrder.LaborCostPerSquareFoot, fullOrder.MaterialCost, fullOrder.LaborCost, fullOrder.Tax, fullOrder.Total); Console.Write("\nAre you sure you want to delete this file? Y/N "); if (Console.ReadLine().ToUpper() == "Y") { if (orderOperations.CallDelete(fullOrder, orderDate)) { Console.WriteLine("\nThe order has been deleted."); Console.WriteLine("\nPress Enter to return to Main Menu"); Console.ReadLine(); } else { Console.WriteLine("\nFor some reason the order failed to delete..."); Console.WriteLine("\nPress Enter to return to Main Menu"); Console.ReadLine(); } } else { MenuDisplay(); } } else { Console.WriteLine("\nUnable to display orders: {0}", result.Message); } }
public void EditOrder() { Console.Clear(); Console.WriteLine("Edit Order"); Console.WriteLine("***************************\n"); bool validDate = false; DateTime orderDate = new DateTime(); int orderNumber = 0; while (!validDate) { Console.Write("Enter a date (MM/DD/YYYY): "); validDate = DateTime.TryParse(Console.ReadLine(), out orderDate); if (!validDate) { Console.WriteLine("\nInvalid Date"); } } OrderOperations orderOperations = new OrderOperations(); OrdersResult result = orderOperations.RetrieveOrdersFor(orderDate); bool validEntry = false; if (result.Success) { while (!validEntry) { bool validNumber = false; while (!validNumber) { Console.Write("\nPlease enter an order number: "); validNumber = int.TryParse(Console.ReadLine(), out orderNumber); if (!validNumber) { Console.WriteLine("\nInvalid order number"); } else { bool reply = orderOperations.CheckIfExistingOrder(orderNumber, orderDate); if (reply) { validEntry = true; } else { Console.WriteLine("\nThere is no order for that number on that date!"); } } } } Order fullOrder = orderOperations.RetrieveOrderByNumber(orderNumber, orderDate); TaxRateOperations taxOps = new TaxRateOperations(); ProductOperations prodOps = new ProductOperations(); CustomerInput editedOrder = new CustomerInput() { CustName = fullOrder.CustomerName, Area = fullOrder.Area, ProductType = fullOrder.ProductType, State = fullOrder.State, OrderNumber = fullOrder.OrderNumber }; Console.WriteLine("\n{0} {1} {2} {3}", editedOrder.CustName, editedOrder.State, editedOrder.ProductType, editedOrder.Area); bool validName = false; string input; while (!validName) { Console.Write("\nPlease enter new Customer Name, or press enter key to skip: "); input = Console.ReadLine(); if (input != "") { editedOrder.CustName = input; validName = true; } else { validName = true; } } bool validState = false; while (!validState) { Console.Write("\nPlease enter new State, or press enter key to skip: "); input = Console.ReadLine().ToUpper(); if (input != "") { if (taxOps.IsAllowedState(input)) { editedOrder.State = input; validState = true; } else { Console.Write("\nThat is not a valid state"); } } else { validState = true; } } bool validProduct = false; while (!validProduct) { Console.Write("\nPlease enter new Product Type, or press enter key to skip: "); input = Console.ReadLine().ToUpper(); if (input != "") { if (prodOps.IsExistingProduct(input)) { editedOrder.ProductType = input; validProduct = true; } else { Console.Write("\nThat is not one of our products"); } } else { validProduct = true; } } bool validArea = false; while (!validArea) { Console.Write("\nPlease enter new Area in square feet, or press enter key to skip: "); input = Console.ReadLine(); if (input != "") { decimal userChoice; bool isDecimal = decimal.TryParse(input, out userChoice); if (isDecimal) { editedOrder.Area = userChoice; validArea = true; } else { Console.WriteLine("\nThat is not a valid number"); } } else { validArea = true; } } Console.Write("\nAre you ready to save edited order details? Y/N "); if (Console.ReadLine().ToUpper() == "N") { MenuDisplay(); } else { orderOperations.CreateNewOrder(editedOrder, orderDate); Order newEditedOrder = orderOperations.RetrieveOrderByNumber(orderNumber, orderDate); Console.Clear(); Console.Write("\nYour order has been edited:\n"); Console.WriteLine("\n{0} {1} {2} {3} {4} {5} {6:c} {7:c} {8:c} {9:c} {10:c} {11:c}", newEditedOrder.OrderNumber, newEditedOrder.CustomerName, newEditedOrder.State, newEditedOrder.TaxRate, newEditedOrder.ProductType, newEditedOrder.Area, newEditedOrder.CostPerSquareFoot, newEditedOrder.LaborCostPerSquareFoot, newEditedOrder.MaterialCost, newEditedOrder.LaborCost, newEditedOrder.Tax, newEditedOrder.Total); Console.Write("\nPress Enter to return to the Main Menu"); Console.ReadLine(); } } else { Console.WriteLine("\nUnable to display orders: {0}", result.Message); } }