Пример #1
0
    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);
    }
Пример #2
0
    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;
        }
    }
Пример #3
0
    public void Fechar_Conta()
    {
        Listar_Reservas();
        Console.WriteLine("\nEscreva o número do quarto que deseja fechar a reserva: ");
        int      room_number = int.Parse(Console.ReadLine());
        Reservas reserva     = Get_Reserva(room_number);

        if (reserva == null)
        {
            return;
        }

        Console.WriteLine("\nObrigado por usar os nossos serviçoes, iremos dá o valor total da estádia: ");
        Servico_de_controle_gastos serv  = new Servico_de_controle_gastos();
        Proxy_Serviço_De_Controle  proxy = new Proxy_Serviço_De_Controle(serv);
        Controle_financeiro        cf    = new Controle_financeiro();

        double total = proxy.Calcular_Gasto(reserva);

        Console.WriteLine("\nO gasto total da reserva com 5% incluso do nosso serviço é de: R${0:0.00}", total);
        cf.Pagamento(total, total);
        Gerenciamento_de_Quartos.GetInstancia().Desocupar_Quarto(reserva.Get_Quarto());
        lista_de_reservas.Remove(reserva);
    }