Пример #1
0
        public async Task <DTOTamanhos> ObterPorId(int id)
        {
            if (!_tamanhos.Buscar(p => p.Id == id).Result.Any())
            {
                Notificar("Tamanho não localizado");
                return(null);
            }
            var t = await _tamanhos.ObterPorId(id);

            var obj = new DTOTamanhos
            {
                Ativo        = t.Ativo,
                Id           = t.Id,
                Descricao    = t.Descricao,
                TempoPreparo = t.TempoPreparo,
                Valor        = t.Valor,
                Volume       = t.Volume
            };

            return(obj);
        }
Пример #2
0
        public async Task <DTOPedidosResultado> Adicionar(DTOPedidos pedido)
        {
            //Objeto tamanho
            var tamanho = await _tamanhos.ObterPorId(pedido.Tamanho);

            //Objeto sabores
            var sabor = await _sabores.ObterPorId(pedido.Sabor);

            if (tamanho == null)
            {
                Notificar($"Tamanho {pedido.Tamanho} não localizado.");
            }
            if (sabor == null)
            {
                Notificar($"Sabor {pedido.Sabor} não localizado.");
            }

            if (_notificador.TemNotificacao())
            {
                return(null);
            }
            //Objeto pedido
            var objPedido = new Pedidos
            {
                Cliente      = string.Empty,
                DtPedido     = DateTime.Now,
                SaboresId    = sabor.Id,
                TempoSabor   = sabor.TempoPreparo,
                ValorSabor   = sabor.Valor,
                TamanhosId   = tamanho.Id,
                TempoTamanho = tamanho.TempoPreparo,
                ValorTamanho = tamanho.Valor
            };
            var add = await _pedidos.Adicionar(objPedido);

            pedido.Id = add.Id;

            var personalizacoes = new List <DetalhesPersonalizacao>();

            //Adicionar personalizacao
            if (pedido.Personalizacoes.Count > 0)
            {
                personalizacoes = await AdicionarPersonalizacoes(pedido);
            }

            var tam = new DetalhesTamanho
            {
                Descricao    = tamanho.Descricao,
                Id           = add.Tamanhos.Id,
                TempoPreparo = add.TempoTamanho,
                Valor        = add.ValorTamanho
            };
            var sab = new DetalhesSabor
            {
                Descricao    = sabor.Descricao,
                Id           = add.Sabores.Id,
                TempoPreparo = add.TempoSabor,
                Valor        = add.ValorSabor
            };

            var resultado = GerarResultado(tam, sab, personalizacoes);

            resultado.Id = pedido.Id;
            return(resultado);
        }