Пример #1
0
        public ResumoPedidoDto MontarPedido(MontagemPedidoDto montagemPedido)
        {
            var tamanhoPizza = _tamanhosPizzaRepository.GetAll()
                               .FirstOrDefault(x => x.Tamanho.ToUpper() == montagemPedido.TamanhoPizza.ToUpper());

            if (tamanhoPizza == null)
            {
                throw new Exception($"O tamanho de pizza { montagemPedido.TamanhoPizza } informado não esta cadastrado!");
            }

            var saborPizza = _saboresPizzaRepository.GetAll()
                             .FirstOrDefault(x => x.Sabor.ToUpper() == montagemPedido.SaborPizza.ToUpper());

            if (saborPizza == null)
            {
                throw new Exception($"O sabor de pizza { montagemPedido.SaborPizza } informado não esta cadastrado!");
            }

            var pedido = new Pedidos
            {
                TamanhosPizza = tamanhoPizza,
                SaboresPizza  = saborPizza,
                Total         = tamanhoPizza.Valor,
                Tempo         = tamanhoPizza.Tempo + saborPizza.TempoAdicional ?? 0,
                Finalizado    = false
            };

            _pedidoRepository.Add(pedido);

            var resumoPedido = _mapper.Map <ResumoPedidoDto>(pedido);

            return(resumoPedido);
        }
Пример #2
0
        public void SetUp()
        {
            pedidoRepository        = Substitute.For <IPedidoRepository>();
            saboresPizzaRepository  = Substitute.For <ISaboresPizzaRepository>();
            tamanhosPizzaRepository = Substitute.For <ITamanhosPizzaRepository>();

            mapper = Substitute.For <IMapper>();

            montagemPedidoDto = Substitute.For <MontagemPedidoDto>();
            montagemPedidoDto.TamanhoPizza = TAMANHOGRANDE;
            montagemPedidoDto.SaborPizza   = PORTUGUESA;

            tamanhoPizza         = Substitute.For <TamanhosPizza>();
            tamanhoPizza.Tamanho = TAMANHOGRANDE;
            saborPizza           = Substitute.For <SaboresPizza>();
            saborPizza.Sabor     = PORTUGUESA;
        }