Ejemplo n.º 1
0
        /// <summary>
        /// Based on CPF input deletes a client.
        /// </summary>
        /// <param name="clientsArray"></param>
        /// <returns></returns>
        public static string[,] RemoveClient(string[,] clientsArray)
        {
            MenuLib.PrintSubmenu("REMOVER CLIENTE");
            int clientPosition = Verifications.ReadCPF(clientsArray, "Qual o CPF do cliente que deseja remover?");

            if (clientPosition != -1)
            {
                Console.Clear();
                PrintClient(clientsArray, clientPosition, "Cliente que será removido:");
                if (MenuLib.ConfirmationMenu("\nTem certeza que deseja deletar o cliente?"))
                {
                    if (clientsArray.GetLength(0) - 1 != clientPosition)
                    {
                        clientsArray = ArrayLib.SwapLines(clientsArray, clientPosition, clientsArray.GetLength(0) - 1);
                    }
                    clientsArray = ArrayLib.RemoveLast(clientsArray);
                    MenuLib.PrintMessage("\nO cliente foi deletado. Pressione ENTER para retornar ao menu principal:");
                    Console.ReadKey();
                    return(clientsArray);
                }
                MenuLib.PrintMessage("\nOperação cancelada.\n\n" +
                                     "Pressione ENTER para retornar ao menu principal:");
                Console.ReadKey();
            }
            return(clientsArray);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Adds a new account for the CPF input. Sets it's number to previous + 1 and balance to 50.
 /// </summary>
 /// <param name="accountsArray"></param>
 /// <param name="cpf"></param>
 /// <returns></returns>
 public static decimal[,] AddNewAccount(decimal[,] accountsArray, decimal cpf)
 {
     MenuLib.PrintSubmenu("CRIANDO NOVA CONTA");
     if (MenuLib.ConfirmationMenu("Tem certeza que deseja criar uma nova conta?", "Criar nova conta", "Cancelar"))
     {
         int newAccountPosition = accountsArray.GetLength(0);
         accountsArray = ArrayLib.AddOneLength(accountsArray);
         accountsArray[newAccountPosition, 0] = cpf;
         accountsArray[newAccountPosition, 1] = accountsArray[newAccountPosition - 1, 1] + 1;
         accountsArray[newAccountPosition, 2] = 50;
         PrintAccount(accountsArray, newAccountPosition, "\nA conta foi criada com sucesso! Confira:");
         MenuLib.PrintMessage("\nPressione qualquer tecla para retornar ao menu de contas.");
         Console.ReadKey();
     }
     return(accountsArray);
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Removes account from input cpf.
        /// </summary>
        /// <param name="accountsArray"></param>
        /// <param name="cpf"></param>
        /// <returns></returns>
        public static decimal[,] RemoveAccount(decimal[,] accountsArray, decimal cpf)
        {
            MenuLib.PrintSubmenu("REMOVER CONTA");
            int accountPosition = Verifications.ReadAccount(accountsArray, "Qual o número da conta a ser removida?");

            if (accountPosition != -1)
            {
                if (Verifications.IsAccountFromCPF(accountsArray, accountPosition, cpf))
                {
                    Console.Clear();
                    PrintAccount(accountsArray, accountPosition, "Conta que será removida:");
                    if (Verifications.IsAccountZeroed(accountsArray, accountPosition))
                    {
                        if (MenuLib.ConfirmationMenu("Tem certeza que deseja deletar a conta?"))
                        {
                            if (accountsArray.GetLength(0) - 1 != accountPosition)
                            {
                                accountsArray = ArrayLib.SwapLines(accountsArray, accountPosition, accountsArray.GetLength(0) - 1);
                            }
                            accountsArray = ArrayLib.RemoveLast(accountsArray);
                            MenuLib.PrintMessage("\nA conta foi deletada. Pressione ENTER para retornar ao menu de contas:");
                            Console.ReadKey();
                            return(accountsArray);
                        }
                        MenuLib.PrintMessage("\nOperação cancelada pelo usuário.\n\n" +
                                             "Pressione ENTER para retornar ao menu de contas:");
                        Console.ReadKey();
                    }
                    else
                    {
                        MenuLib.PrintMessage("\nA operação não pôde ser concluída pois há saldo na conta.\n" +
                                             "Primeiramente deve ser feito o saque de todo o saldo da conta.\n\n" +
                                             "Pressione ENTER para retornar ao menu de contas:");
                        Console.ReadKey();
                    }
                }
                else
                {
                    MenuLib.PrintMessage("A operação não pôde ser concluída pois a conta não pertence a este CPF.\n" +
                                         "Verifique o número da conta e do CPF digitados e tente novamente.\n\n" +
                                         "Pressione ENTER para retornar ao de contas:");
                    Console.ReadKey();
                }
            }
            return(accountsArray);
        }