public bool PossuiQuartoDisponivel(QuartoTipo tipo) { foreach (var q in _quartos) { if ((q.Tipo() == tipo) && (q.Disponibilidade == QuartoDisponibilidade.Disponivel)) { return(true); } } return(false); }
public double CustoGasto(QuartoTipo tipoQuarto, QuartoGasto gasto) { switch (gasto) { case QuartoGasto.Alimentacao: return(12.0); case QuartoGasto.Telefone: return(3.0); case QuartoGasto.Diaria: return(CustoDaDiaria(tipoQuarto)); default: return(0.0); } }
/* -- GASTOS -- */ public double CustoDaDiaria(QuartoTipo tipo) { switch (tipo) { case QuartoTipo.Simples: return(35.00); case QuartoTipo.Dupla: return(70.00); case QuartoTipo.Tripla: return(120.00); default: return(0.0); } }
/* -- ADMINISTRACAO -- */ public int ReservarQuarto(string nomeCliente, Data nascimentoCliente, Data diaEntrada, Data diaSaida, QuartoTipo tipo) { var clienteRegistrado = PegarCliente(nomeCliente, nascimentoCliente); if (clienteRegistrado is null) { return(-1); // cliente nao registrado } return(ReservarQuarto(clienteRegistrado, diaEntrada, diaSaida, tipo)); }
public double EstimarValor(QuartoTipo quarto, Data entrada, Data saida) { var qntdDias = (new DateTime(saida.Ano, saida.Mes, saida.Dia) - new DateTime(entrada.Ano, entrada.Mes, entrada.Dia)).TotalDays; return(qntdDias * CustoDaDiaria(quarto)); }
public int ReservarQuarto(ClienteInfo cliente, Data diaEntrada, Data diaSaida, QuartoTipo tipo) { foreach (var q in _quartos) { if ((q.Tipo() == tipo) && (q.Disponibilidade == QuartoDisponibilidade.Disponivel)) { q.Disponibilidade = QuartoDisponibilidade.Reservado; q.Hospede = cliente; q.Entrada = diaEntrada; q.Saida = diaSaida; q.ConsumirGasto(QuartoGasto.Diaria); return(q.Identificacao); } } return(-1); }