public static void Devolucao(List <EmprestimoLivro> listaEmprestimo)
        {
            CultureInfo     CultureBr       = new CultureInfo(name: "pt-BR");
            EmprestimoLivro emprestimoLivro = null;

            double valorMulta = 0;

            Console.WriteLine("Devolução do Livro\n");

            Console.WriteLine("Informe o Número do Tombo:");
            long numTombo = long.Parse(Console.ReadLine());

            if (EmprestimoLivroController.VerificaNTomboDisponivel(listaEmprestimo, numTombo))
            {
                emprestimoLivro = EmprestimoLivroController.RetornaEmprestimo(listaEmprestimo, numTombo);
                emprestimoLivro.StatusEmprestimo = 2; //update da status para devolvido

                string   dataAtual           = DateTime.Now.ToString("d");
                DateTime dataAtualConvertida = DateTime.ParseExact(dataAtual, "d", CultureBr);
                if (dataAtualConvertida > emprestimoLivro.DataDevolucao)
                {
                    valorMulta = CalculaMulta(emprestimoLivro.DataDevolucao, dataAtualConvertida);
                    Console.WriteLine("O valor da multa é: " + valorMulta.ToString("C"));
                }
                FileManagement.WriteFileCSV(listaEmprestimo);
            }
            else
            {
                Console.WriteLine("Livro não encontrado para devolução");
                return;
            }
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            CultureInfo CultureBr = new CultureInfo(name: "pt-BR");

            List <Cliente> listaCliente = new List <Cliente>();
            Cliente        cliente;

            List <Livro> listaLivro = new List <Livro>();
            Livro        livro;

            List <EmprestimoLivro> listaEmprestimoLivros = new List <EmprestimoLivro>();
            EmprestimoLivro        emprestimoLivro;

            listaCliente          = FileManagement.ConvertFileCSVToListCliente();
            listaLivro            = FileManagement.ConvertFileCSVToListLivro();
            listaEmprestimoLivros = FileManagement.ConvertFileCSVToListEmprestimo();

            int op;

            do
            {
                do
                {
                    op = MenuPrincipal();
                }while (op > 5 || op < 0);

                switch (op)
                {
                case 1:
                    //Cadastro cliente
                    cliente = ClienteController.ReadCliente(listaCliente);
                    if (cliente != null)
                    {
                        listaCliente.Add(cliente);
                        FileManagement.WriteFileCSV(listaCliente);
                        Console.WriteLine("Cliente cadastrado!");
                    }
                    Console.WriteLine("Pressione ENTER para continuar...");
                    Console.ReadKey();
                    break;

                case 2:
                    //Cadastro Livro
                    livro = LivroController.ReadCliente(listaLivro);
                    if (livro != null)
                    {
                        listaLivro.Add(livro);
                        FileManagement.WriteFileCSV(listaLivro);
                        Console.WriteLine("Livro cadastrado!");
                        Console.WriteLine("O Número do Tombo é: " + livro.NumeroTombo);
                    }
                    Console.WriteLine("Pressione ENTER para continuar...");
                    Console.ReadKey();
                    break;

                case 3:
                    //Empréstimo de Livro
                    do
                    {
                        emprestimoLivro = EmprestimoLivroController.ReadEmprestimo(listaEmprestimoLivros, listaLivro, listaCliente);
                        if (emprestimoLivro != null)
                        {
                            listaEmprestimoLivros.Add(emprestimoLivro);
                            FileManagement.WriteFileCSV(listaEmprestimoLivros);
                            Console.WriteLine("Empréstimo realizado com sucesso!");
                        }
                        else
                        {
                            Console.WriteLine("Deseja tentar novamente(s/n):");
                            string continuar = Console.ReadLine();
                            if (continuar.ToUpper() == "N")
                            {
                                break;
                            }
                        }
                    } while (emprestimoLivro == null);
                    Console.WriteLine("Pressione ENTER para continuar...");
                    Console.ReadKey();
                    break;

                case 4:
                    DevolucaoController.Devolucao(listaEmprestimoLivros);
                    Console.WriteLine("Pressione ENTER para continuar...");
                    Console.ReadKey();
                    break;

                case 5:
                    EmprestimoLivroController.Relatorio(listaEmprestimoLivros, listaLivro, listaCliente);
                    Console.WriteLine("Pressione ENTER para continuar...");
                    Console.ReadKey();
                    break;
                }
            } while (op != 0);
        }