private void Adicionar_quartos_a_lista() { for (int i = 0; i < 20; i++) { /*Tipo de quarto: 1 - Simples, 2 - Dupla, 3 - Tripla*/ int type = 1; IQuarto quarto = Registrar_Quarto(type); _quartos_disponiveis.Add(quarto); } for (int i = 0; i < 20; i++) { /*Tipo de quarto: 1 - Simples, 2 - Dupla, 3 - Tripla*/ int type = 2; IQuarto quarto = Registrar_Quarto(type); _quartos_disponiveis.Add(quarto); } for (int i = 0; i < 20; i++) { /*Tipo de quarto: 1 - Simples, 2 - Dupla, 3 - Tripla*/ int type = 3; IQuarto quarto = Registrar_Quarto(type); _quartos_disponiveis.Add(quarto); } }
private IQuarto Registrar_Quarto(int type) { IQuarto quarto = null; switch (type) { case 1: { quarto = new Quartos_simples(); break; } case 2: { quarto = new Quartos_dupla(); break; } case 3: { quarto = new Quartos_tripla(); break; } default: Console.WriteLine("Ocorreu um erro no gerenciamento de quartos(Registro de quartos)"); break; } bool check = true; while (check) { if (_quartos_disponiveis.Count == 0) { check = false; } foreach (var item in _quartos_disponiveis) { if (quarto.Num_quarto == item.Num_quarto) { check = true; quarto.Reroll_Number(); } else { check = false; } } } return(quarto); }
public IQuarto Ocupar_Quarto(int i) { Listar_Quartos_Disponiveis((int)i); Console.WriteLine("Digite o quarto que deseja: "); int number = int.Parse(Console.ReadLine()); IQuarto quarto = Verificiar_Quarto(number); if (quarto == null) { Console.WriteLine("\nNúmero do quarto inválido.\n"); return(null); } _quartos_disponiveis.Remove(quarto); _quartos_ocupados.Add(quarto); return(quarto); }
public double Calcular_Gasto(Reservas reservas) { Clientes cli = reservas.cliente; IQuarto quarto = reservas.Get_Quarto(); float diaria = quarto.Diaria; int quant_tel = quarto.pegar_serviço_telefone_usado(); int quant_comida = quarto.pegar_serviço_comida_usado(); int dias_total = (reservas.dia_saida - reservas.dia_entrada).Days; float preco_total_comida = preco_comida * quant_comida; float preco_total_tel = preco_tel * quant_tel; float diaria_total = diaria * dias_total; float soma = (preco_total_comida + preco_total_tel + diaria_total); double total = soma + (soma * 0.5); Demonstrar_Gastos(diaria_total, preco_total_comida, preco_total_tel); return(total); }
public void Registrar_Reserva() { try { Console.WriteLine("\nQual tipo de acomodação quer?"); Console.WriteLine("1 - Simples\n2 - Dupla\n3 - Tripla"); int tipo_quarto = int.Parse(Console.ReadLine()); tipo_quarto = Checar_Opcao(tipo_quarto); _quarto = Pegar_Tipo(tipo_quarto); if (_quarto == null) { Console.WriteLine("\nOcorreu uma falha no registro do quarto, por favor refaça.\n"); return; } Console.WriteLine("\nQuantos dias irá ficar?"); int dias = int.Parse(Console.ReadLine()); dia_entrada = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); dia_saida = Checar_Data(dias); Console.WriteLine("\nQual seu nome?"); String nome = Console.ReadLine(); Console.WriteLine("\nDia que nasceu?"); int dia = int.Parse(Console.ReadLine()); Console.WriteLine("\nMês que nasceu?"); int mes = int.Parse(Console.ReadLine()); Console.WriteLine("\nAno que nasceu?"); int ano = int.Parse(Console.ReadLine()); DateTime Nascimento = new DateTime(ano, mes, dia); cliente = Registro_de_Clientes.GetInstancia().Verificar_Registro(nome, Nascimento); Console.WriteLine("Parabéns {0}, sua reserva foi feita com sucesso\n", cliente.Get_Nome()); return; } catch (Exception e) { Console.WriteLine(e); Gerenciamento_de_Quartos.GetInstancia().Desocupar_Quarto(_quarto); return; } }
public void Pedir_Serviço() { Listar_Reservas(); Console.WriteLine("\nEscreva o número do quarto que deseja o pedido: "); int room_number = int.Parse(Console.ReadLine()); Reservas reserva = Get_Reserva(room_number); IQuarto quarto = reserva.Get_Quarto(); if (reserva == null) { return; } Console.WriteLine("\nGostaria de pedir qual serviço?"); Console.WriteLine("1 - Comida, 2 - Telefone"); int choice = int.Parse(Console.ReadLine()); if (choice < 0 || choice > 2) { Console.WriteLine("Serviço inválido"); return; } switch (choice) { case 1: { quarto.pedir_comida(); break; } case 2: { quarto.usar_telefone(); break; } default: Console.WriteLine("\nOcorreu um problema na decisão do serviço\n"); break; } }
public void Desocupar_Quarto(IQuarto quarto) { quarto.reset_serviço(); _quartos_ocupados.Remove(quarto); _quartos_disponiveis.Add(quarto); }
public QuartoPresenter(IQuarto _view) { view = _view; quarto = _view.QuartoLeito; }
public IQuarto Pegar_Tipo(int tipo) { return(_quarto = Gerenciamento_de_Quartos.GetInstancia().Ocupar_Quarto(tipo)); }