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); }
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); }