/// <summary> /// prompts the user to save the account and travel log info /// </summary> public bool DisplaySaveAccountInfo(Salesperson salesperson, out bool maxAttemptsExceeded) { string userResponse; maxAttemptsExceeded = false; ConsoleUtil.HeaderText = "Save Account"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage("Current account information:"); DisplayAccountDetail(salesperson); ConsoleUtil.DisplayMessage(""); userResponse = ConsoleValidator.GetYesNoFromUser(MAXIMUM_ATTEMPTS, "Save account info?", out maxAttemptsExceeded); if (maxAttemptsExceeded) { ConsoleUtil.DisplayMessage("Max attempts exceeded! You will now be returned to the main menu."); return(false); } else if (userResponse.ToUpper() == "YES") { return(true); } { return(false); } }
/// <summary> /// prompts the user to load the account and travel log info /// </summary> public bool DisplayLoadAccountInfo(out bool maxAttemptsExceeded) { string userResponse; maxAttemptsExceeded = false; ConsoleUtil.HeaderText = "Load Account"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage(""); userResponse = ConsoleValidator.GetYesNoFromUser(MAXIMUM_ATTEMPTS, "Load account info?", out maxAttemptsExceeded); if (maxAttemptsExceeded) { ConsoleUtil.DisplayMessage("Max attempts exceeded! You will now be returned to the main menu."); return(false); } else if (userResponse.ToUpper() == "YES") { return(true); } else { return(false); } }
/// <summary> /// allows the user to update their account information /// </summary> public Salesperson DisplayUpdateAcountInfo(Salesperson salesperson, out bool maxAttemptsExceeded) { string userResponse; bool editingAccount = true; maxAttemptsExceeded = false; ConsoleUtil.HeaderText = "Update Account"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage(" NOTE: You cannot change the number units here. Use the Buy/Sell options \nfrom the main menu to do that."); DisplayContinuePrompt(); while (editingAccount) { ConsoleUtil.HeaderText = "Update Account"; ConsoleUtil.DisplayReset(); // // displays current account info wihtout cities and number of units // #region Current Account Info ConsoleUtil.DisplayMessage("Current account info:"); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("First Name: " + salesperson.FirstName); ConsoleUtil.DisplayMessage("Last Name: " + salesperson.LastName); ConsoleUtil.DisplayMessage("Account ID: " + salesperson.AccountID); ConsoleUtil.DisplayMessage("Starting City: " + salesperson.StartingCity); ConsoleUtil.DisplayMessage("Product Type: " + salesperson.CurrentStock.Type); #endregion ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Please select a corresonding number to change that part of your account."); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayPromptMessage("1)First Name | 2)Last Name | 3)Account ID | 4)Starting City | 5)Product"); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayPromptMessage("Enter your choice here: "); userResponse = Console.ReadLine(); ConsoleUtil.DisplayMessage(""); // // get a valid answer form user // while (userResponse != "1" && userResponse != "2" && userResponse != "3" && userResponse != "4" && userResponse != "5") { ConsoleUtil.HeaderText = "Invalid Input"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayPromptMessage("1)First Name | 2)Last Name | 3)Account ID | 4)Starting City | 5)Product"); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayPromptMessage("Please enter a correct corresponding number: "); userResponse = Console.ReadLine(); if (userResponse == "1" && userResponse == "2" && userResponse == "3" && userResponse == "4" && userResponse == "5") { break; } } // // edit account info // switch (userResponse) { case "1": ConsoleUtil.HeaderText = "Update First Name"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayPromptMessage("Enter your new first name: "); salesperson.FirstName = Console.ReadLine(); ConsoleUtil.DisplayMessage(""); break; case "2": ConsoleUtil.HeaderText = "Update Last Name"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayPromptMessage("Enter your new last name: "); salesperson.LastName = Console.ReadLine(); ConsoleUtil.DisplayMessage(""); break; case "3": ConsoleUtil.HeaderText = "Update Account ID"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayPromptMessage("Enter your new Account ID: "); salesperson.AccountID = Console.ReadLine(); ConsoleUtil.DisplayMessage(""); break; case "4": ConsoleUtil.HeaderText = "Update Starting City"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayPromptMessage("Enter your new starting city: "); salesperson.StartingCity = Console.ReadLine(); ConsoleUtil.DisplayMessage(""); break; case "5": ConsoleUtil.HeaderText = "Update Product Type"; ConsoleUtil.DisplayReset(); Product.ProductType productType; ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayPromptMessage("Enter you new product selection: "); // // get new product type from user // if (Enum.TryParse <Product.ProductType>(UppercaseFirst(Console.ReadLine()), out productType)) { salesperson.CurrentStock.Type = productType; } else { ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage("Seems like you entered an invalid product type."); ConsoleUtil.DisplayMessage("By default, your product type has been set to None."); salesperson.CurrentStock.Type = Product.ProductType.None; DisplayContinuePrompt(); } break; default: break; } ConsoleUtil.HeaderText = "Update Account"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage("Your account has been updated!"); ConsoleUtil.DisplayMessage(""); userResponse = ConsoleValidator.GetYesNoFromUser(MAXIMUM_ATTEMPTS, "\tWould you like to make more changes or continue on?", out maxAttemptsExceeded); if (maxAttemptsExceeded) { ConsoleUtil.DisplayMessage("Max attempts exceeded! You will now be returned to the main menu."); return(salesperson); } else if (userResponse.ToUpper() == "YES") { editingAccount = true; } else { editingAccount = false; return(salesperson); } } return(salesperson); }