/// <summary> /// display a list of characters queried by age /// </summary> private void DisplayQueryByAge() { bool success; string message; int minimumAge, maximumAge; CharactersBLL charactersBLL = new CharactersBLL(); List <Character> characters = charactersBLL.GetCharacters(out success, out message) as List <Character>; DisplayReset(); if (success) { DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Characters Queried by Age", WINDOW_WIDTH)); DisplayMessage(""); DisplayMessage(""); GetInteger("Enter Minimum Age:", 1, 100, out minimumAge); DisplayMessage(""); GetInteger("Enter Maximum Age:", 1, 100, out maximumAge); characters = characters.Where(c => c.Age >= minimumAge && c.Age <= maximumAge).OrderBy(c => c.Id).ToList(); DisplayMessage(""); DisplayCharacterTable(characters); } else { DisplayMessage(message); } DisplayContinuePrompt(); }
/// <summary> /// display a list of character ids and full name /// </summary> private void DisplayListOfCharacters() { bool success; string message; CharactersBLL charactersBLL = new CharactersBLL(); List <Character> characters = charactersBLL.GetCharacters(out success, out message) as List <Character>; characters = characters.OrderBy(c => c.Id).ToList(); DisplayReset(); if (success) { DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Display All Characters", WINDOW_WIDTH)); DisplayMessage(""); DisplayCharacterTable(characters); } else { DisplayMessage(message); } DisplayContinuePrompt(); }
/// <summary> /// add a new character /// </summary> private void DisplayAddCharacter() { bool success; string message; Character character = new Character(); DisplayReset(); DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Add Character", WINDOW_WIDTH)); DisplayMessage(""); DisplayPromptMessage("Last Name:"); character.LastName = Console.ReadLine(); DisplayPromptMessage("First Name:"); character.FirstName = Console.ReadLine(); DisplayPromptMessage("Address:"); character.Address = Console.ReadLine(); DisplayPromptMessage("City:"); character.City = Console.ReadLine(); DisplayPromptMessage("State:"); character.State = Console.ReadLine(); DisplayPromptMessage("Zip:"); character.Zip = Console.ReadLine(); int age; character.Age = GetInteger("Age:", 1, 100, out age) ? age : 0; Character.GenderType gender; DisplayPromptMessage("Gender [MALE, FEMALE, NOTSPECIFIED]:");; while (!Enum.TryParse <Character.GenderType>(Console.ReadLine().ToUpper(), out gender)) { DisplayMessage("Please use one of the following values [MALE, FEMALE, NOTSPECIFIED]"); DisplayPromptMessage("Gender [MALE, FEMALE, NOTSPECIFIED]:");; } character.Gender = gender; CharactersBLL charactersBLL = new CharactersBLL(); charactersBLL.AddCharacter(character, out success, out message); DisplayReset(); DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Add Character", WINDOW_WIDTH)); DisplayMessage(""); DisplayMessage(message); DisplayContinuePrompt(); }
/// <summary> /// get a character id and display the details /// </summary> private void DisplayDetailOfCharacter() { bool success; string message; int characterId; Character character; CharactersBLL charactersBLL = new CharactersBLL(); List <Character> characters = charactersBLL.GetCharacters(out success, out message) as List <Character>; DisplayReset(); if (success) { DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Detail of Character", WINDOW_WIDTH)); DisplayMessage(""); characterId = DisplayChooseCharacter("View Details", characters); character = charactersBLL.GetCharacterById(characterId, out success, out message); if (success) { DisplayReset(); DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Delete Character", WINDOW_WIDTH)); DisplayMessage(""); DisplayCharacter(character); } } else { DisplayMessage(message); } DisplayContinuePrompt(); }
/// <summary> /// update a character /// </summary> private void DisplayUpdateCharacter() { bool success; string message; string userResponse; int characterId; Character character; CharactersBLL charactersBLL = new CharactersBLL(); List <Character> characters = charactersBLL.GetCharacters(out success, out message) as List <Character>; DisplayReset(); if (success) { DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Update Character", WINDOW_WIDTH)); DisplayMessage(""); characterId = DisplayChooseCharacter("Update", characters); character = charactersBLL.GetCharacterById(characterId, out success, out message); if (success) { DisplayReset(); DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Update Character", WINDOW_WIDTH)); DisplayMessage(""); DisplayMessage("Type a new value or press the Enter key to keep the current value."); DisplayMessage(""); DisplayPromptMessage($"Last Name: {character.LastName} > "); character.LastName = GetUpdateCharacterProperty(character.LastName); DisplayPromptMessage($"First Name: {character.FirstName} > "); character.FirstName = GetUpdateCharacterProperty(character.FirstName); DisplayPromptMessage($"Address: {character.Address} >"); character.Address = GetUpdateCharacterProperty(character.Address); DisplayPromptMessage($"City: {character.City} >"); character.City = GetUpdateCharacterProperty(character.City); DisplayPromptMessage($"State: {character.State} >"); character.State = GetUpdateCharacterProperty(character.State); DisplayPromptMessage($"Zip: {character.Zip} >"); character.Zip = GetUpdateCharacterProperty(character.Zip); int age; DisplayPromptMessage($"Age: {character.Age} >"); character.Age = GetInteger($"Age:", 1, 100, out age) ? age : character.Age; Character.GenderType gender; DisplayPromptMessage($"Gender [MALE, FEMALE, NOTSPECIFIED]: {character.Gender} >"); userResponse = Console.ReadLine().ToUpper(); if (!String.IsNullOrEmpty(userResponse)) { while (!Enum.TryParse <Character.GenderType>(userResponse, out gender)) { DisplayMessage("Please use one of the following values [MALE, FEMALE, NOTSPECIFIED]"); DisplayPromptMessage($"Gender [MALE, FEMALE, NOTSPECIFIED]:"); userResponse = Console.ReadLine().ToUpper(); } character.Gender = gender; } charactersBLL.UpdateCharacter(character, out success, out message); } } DisplayReset(); DisplayMessage(""); Console.WriteLine(ConsoleUtil.Center("Update Character", WINDOW_WIDTH)); DisplayMessage(""); DisplayMessage(message); DisplayContinuePrompt(); }