Пример #1
0
        public ICalculoPreco CrieMaquinaDeCalculoPreco(Veiculo veiculo, EnumTipoDeCalculo enumTipoCalculo)
        {
            switch (enumTipoCalculo)
            {
            case EnumTipoDeCalculo.Carro:
                return(new CalculoPrecoCarro(veiculo));

            case EnumTipoDeCalculo.Moto:
                return(new CalculoPrecoMoto(veiculo));

            case EnumTipoDeCalculo.Camionete:
                return(new CalculoPrecoCamionete(veiculo));

            default:
                throw new ArgumentException("Por favor, prestar atenção no calculo");
            }
        }
        public IEnumerable <IGrouping <string, ValorCalculado> > SelecPorPlaca(EnumTipoDeCalculo enumTipoDeCalculo)
        {
            var GrupoPorTipoOrdenadoPorPlaca = ValoresCalculados.OrderBy(x => x.veiculo.Placa);

            return(GrupoPorTipoOrdenadoPorPlaca.GroupBy(x => x.veiculo.GetType().Name));
        }