public FmrEmprestimo() { InitializeComponent(); emprestimoController = new EmprestimoController(); pessoaController = new PessoaController(); categoriaController = new CategoriaController(); midiaController = new MidiaController(); pessoas = pessoaController.ConsultaTodosAtivos(); categorias = categoriaController.ConsultaTodosAtivos(); midias = midiaController.ConsultaTodosAtivos(); foreach (var pessoa in pessoas) { PessoaComboBox.Items.Add(pessoa); } foreach (var categoria in categorias) { CategoriaComboBox.Items.Add(categoria); } foreach (var midia in midias.Where(m => m.DisponivelEmprestimo)) { MidiaComboBox.Items.Add(midia); } }
public void Metodo_Create_Retorna_View_Quando_Model_Is_Invalid() { // Arrange var controller = new EmprestimoController(); controller.ModelState.AddModelError("", "Erro de validação."); // Act var actionResult = controller.Create(new EmprestimoViewModel()); // Assert actionResult.Should().BeOfType <ViewResult>(); }
public FmrDevolucao(int idEmprestimo) { InitializeComponent(); emprestimoController = new EmprestimoController(); emprestimo = emprestimoController.ConsultaPorId(idEmprestimo); IdTxt.Text = emprestimo.IdEmprestimo.ToString(); PessoaTxt.Text = emprestimo.NomePessoa; MidiaTxt.Text = emprestimo.NomeMidia; QuantidadeTxt.Text = emprestimo.QtdEmprestada.ToString(); DataSaidaTxt.Text = emprestimo.DataSaida.ToString(); OperadorTxt.Text = emprestimo.NomeOperadorEmprestimo; ObsEmprestimo.Text = emprestimo.Observacao; QuantidadeDevolvidaNumeric.Value = emprestimo.QtdEmprestada; QuantidadeDevolvidaNumeric.Maximum = emprestimo.QtdEmprestada; }
static void LerDevolucao(List <Emprestimo> listaEmprestimo) { // VARIAVEIS string numeroTombo; Emprestimo emprestimo; const double multa = 0.10; int diaAtraso; double valorAtraso; // LOCALIZAÇÃO Console.WriteLine("\n>>>CADASTRO DEVOLUÇÃO<<<\n"); do { // LAÇO TRATA NUMERO TOMBO VAZIO Console.Write("Número do Tombo do Livro: "); numeroTombo = Console.ReadLine(); } while (numeroTombo == ""); // RETORNA OBJETO EMPRESTIMO COM STATUS EMPRESTADO O LIVRO INFORMADO PELO NUMERO TOMBO emprestimo = EmprestimoController.NumeroTomboEmprestado(listaEmprestimo, long.Parse(numeroTombo)); // CASO NÃO ENCONTRAR LIVRO OU O LIVRO ESTA COMO "DEVOLVIDO" if (emprestimo == null) { Console.WriteLine("Livro não encontrado para devolução.\nPrecione qualquer tecla para voltar ao Menu Principal..."); Console.ReadLine(); Console.Clear(); return; } // CALCULA DIAS DE ATRASO diaAtraso = (int)DateTime.Now.Subtract(emprestimo.DataDevolucao).TotalDays; if (diaAtraso <= 0) { Console.WriteLine("Entregue no Prazo."); } else { valorAtraso = diaAtraso * multa; // CALCULA MULTA 0,10 POR DIA Console.WriteLine("Multa de R$ " + valorAtraso); } Console.WriteLine("Precione qualquer tecla para continuar..."); Console.ReadLine(); // ATUALIZA SITUAÇÃO DO EMRPESTIMO emprestimo.StatusEmprestimo = 2; emprestimo.DataDevolucao = DateTime.Now; // ATUALIZA A LISTA ArquivoController.Escrita(listaEmprestimo); // LIMPA TELA Console.Clear(); Console.WriteLine("\n>>>DEVOLUÇÃO CADASTRADA<<<\nPrecione qualquer tecla para continuar..."); Console.ReadLine(); Console.Clear(); }
static void LerEmprestimo(List <Cliente> listaCliente, List <Livro> listaLivro, List <Emprestimo> listaEmprestimo) { // VARIAIVES string cpf, numeroTombo, op; long idCliente; bool err; DateTime dataDevolucao = DateTime.Now; Emprestimo emprestimo; CultureInfo CultureBr = new CultureInfo(name: "pt-BR"); // LOCALIZAÇÃO Console.WriteLine("\n>>>CADASTRO EMPRESTIMO<<<\n"); do { // LAÇO TRATA NÚMERO TOMBO DE LIVRO err = false; Console.Write("Informe o Número Tombo do Livro: "); numeroTombo = Console.ReadLine(); // SE EXISTIR LIVRO NA LISTA DE EMPRESTADO E ESTAR COM STATUS EMPRESTADO RETORNA O OBJETO emprestimo = EmprestimoController.NumeroTomboEmprestado(listaEmprestimo, long.Parse(numeroTombo)); // CASO NÃO EXISTIR NÚMERO TOMBO DE LIVRO OU ELE ESTAR EMPRESTADO if (!LivroController.NumeroTomboExiste(listaLivro, long.Parse(numeroTombo)) || emprestimo != null) { // CAMINHOS PARA USUARIO ESCOLHER Console.WriteLine("Livro indisponível para empréstimo.\n1 - Digitar Número Tombo novamente" + "\n2 - Cadastrar Livro\n3 - Voltar ao Menu Principal "); op = Console.ReadLine(); switch (op) // SWITCH DE OPÇÕES PARA SABER QUAL CAMINHO USUARIO ESCOLHEU { case "2": // CADASTRO CLIENTE Console.Clear(); // LIMPA TELA LerLivro(listaLivro); err = true; // INFORMAR O CPF NOVAMENTE POREM COM CPF JÁ CADASTRADO Console.WriteLine("\n>>>CADASTRO EMPRESTIMO<<<\n"); // LOCALIZAÇÃO break; case "3": // VOLTAR MENU PRINCIPAL Console.Clear(); // LIMPA TELA return; default: // DIGITAR CPF NOVAMENTE OU OUTRO NÚMERO/LETRA NÃO INFORMADO NO MENU err = true; break; } } } while (err); do { err = false; // INFORMA CPF Console.Write("Informe o CPF do Cliente: "); cpf = Console.ReadLine(); // RETORNA ID DE CLIENTE QUE TEM ESSE CPF idCliente = ClienteController.RetornaCLienteCpf(listaCliente, cpf); // CASO CPF NÃO EXISTA if (idCliente == -1) { // CAMINHOS CASO CPF NÃO RECONHECIDO Console.WriteLine("Cliente não cadastrado.\n1 - Digitar CPF novamente" + "\n2 - Cadastrar Cliente\n3 - Voltar ao Menu Principal "); op = Console.ReadLine(); switch (op) // SWITCH DE OPÇÕES PARA SABER QUAL CAMINHO USUARIO ESCOLHEU { case "2": // CADASTRO CLIENTE Console.Clear(); // LIMPA TELA LerCliente(listaCliente); err = true; // INFORMAR O CPF NOVAMENTE POREM COM CPF JÁ CADASTRADO Console.WriteLine("\n>>>CADASTRO EMPRESTIMO<<<\n"); // LOCALIZAÇÃO Console.WriteLine("Informe o Número Tombo do Livro: " + numeroTombo); // LOCALIZAÇÃO break; case "3": // VOLTAR MENU PRINCIPAL Console.Clear(); // LIMPA TELA return; default: // DIGITAR CPF NOVAMENTE OU OUTRO NÚMERO/LETRA NÃO INFORMADO NO MENU err = true; break; } } } while (err); // ARMAZENA DATA DE DEVOLUÇÃO do { err = false; try { Console.Write("Data de Devolução (dd/mm/yyyy): "); dataDevolucao = DateTime.ParseExact(Console.ReadLine(), "d", CultureBr); if ((Convert.ToDateTime(dataDevolucao)) < (Convert.ToDateTime(DateTime.Now))) { Console.WriteLine("Informe uma data posterior a data atual"); err = true; } } catch (Exception) { Console.WriteLine("Informe a data (dd/mm/yyyy)"); err = true; } } while (err); // ESTANCIA EMPRESTIMO ESTANCIADO emprestimo = new Emprestimo() { IdCliente = idCliente, NumeroTombo = long.Parse(numeroTombo), DataEmprestimo = DateTime.Now, DataDevolucao = dataDevolucao, StatusEmprestimo = 1 }; // ADICIONA O EMPRESTIMO NA LISTA EMPRESTIMO listaEmprestimo.Add(emprestimo); // ADICIONA LISTA NO ARQUIVO ArquivoController.Escrita(listaEmprestimo); Console.Clear(); // LIMPA TELA Console.WriteLine("\n>>>EMPRESTIMO CADASTRADO<<<\nPrecione qualquer tecla para continuar..."); Console.ReadLine(); Console.Clear(); }