public double Calcula(Veiculo veiculo, BancoDeDadosEstacionamento bancoDeDados) { double valorPago = 0; if (bancoDeDados.ListaDeOcorrencias(veiculo).Count % 3 == 0) { valorPago = 0; } else if ((veiculo.GetDataSaida() - veiculo.GetDataEntrada()).TotalMinutes < 15) { valorPago = ValorBaseHora; } else { valorPago = (ValorBaseHora + ValorPorHora * (veiculo.GetDataSaida() - veiculo.GetDataEntrada()).TotalHours - 1); } //arredonda para cima valorPago = Math.Ceiling(valorPago); return(valorPago); }
private static double GetTotalHours(Veiculo veiculo) { //Ceiling arredonda horas para cima return(Math.Ceiling((veiculo.GetDataSaida() - veiculo.GetDataEntrada()).TotalHours)); }
private static bool VeiculoFicouMenosDe15Minutos(Veiculo veiculo) { return((veiculo.GetDataSaida() - veiculo.GetDataEntrada()).TotalMinutes < _minutosMaximosParaValorPagoReceberValorBase); }