Exemplo n.º 1
0
        private async void ListarPedido(string listapedido)
        {
            ProdutoAzureService produto_Service = new ProdutoAzureService();

            IEnumerable <Pedido> pedido = await Pedido_Service.ListarRegistroAsync();

            IEnumerable <PedidoItens> pedidosItens = await PedidoItens_Service.ListarRegistroAsync();

            IEnumerable <Produto> produtos = await produto_Service.ListarRegistroAsync();

            pedido       = pedido.Where(p => p.Id == listapedido);
            pedidosItens = pedidosItens.Where(p => p.PedidoId == listapedido);

            foreach (var pedidoItens in pedidosItens)
            {
                produtos = produtos.Where(p => p.Id == pedidoItens.Id);
            }


            lvItens.ItemsSource = pedidosItens;
        }
Exemplo n.º 2
0
        protected override async void OnAppearing()
        {
            base.OnAppearing();
            if (string.IsNullOrEmpty(CarrinhoView.pedido.FornecedorId))
            {
                PopuleBindings();
            }
            // TODO : ERRO
            eh_distribuidor = usuarioLogado.Tipo == "Distribuidor";

            if (eh_distribuidor)
            {
                AdicionaBotaoNovoProduto();
            }
            else
            {
                AdicionarBarraCarrinho();
            }

            lblTitulo.Text = eh_distribuidor ? "Meus Produtos" : "Lista de Produtos";

            IEnumerable <Pessoa> pessoas = await pessoa_Service.ListarRegistroAsync();

            IEnumerable <Produto> produtos = await produto_Service.ListarRegistroAsync();

            if (eh_distribuidor)
            {
                pessoas  = pessoas.Where(p => p.Id == usuarioLogado.Id).ToList();
                produtos = produtos.Where(p => p.FornecedorId == usuarioLogado.Id).ToList();
            }
            else
            {
                pessoas.Where(p => p.Tipo == "Distribuidor").ToList();
                if (CarrinhoView.itens.Count() > 0)
                {
                    var primeiroItem = CarrinhoView.pedido.FornecedorId;
                    produtos = produtos.Where(p => p.FornecedorId == primeiroItem).ToList();
                }
            }

            var request   = new GeolocationRequest(GeolocationAccuracy.Best);
            var mPosition = await Geolocation.GetLocationAsync(request);

            foreach (Produto produto in produtos)
            {
                var forn = pessoas.Where(p => p.Id == produto.FornecedorId).FirstOrDefault();

                if (forn == null)
                {
                    continue;
                }

                produto.FornecedorNome = forn.RazaoSocial;
                produto.Latitude       = forn.Latitude;
                produto.Longitude      = forn.Longitude;

                Location locForn = new Location(forn.Latitude, forn.Longitude);
                forn.Distancia = mPosition.CalculateDistance(locForn, DistanceUnits.Kilometers);


                produto.Distancia = $"{forn.Distancia.ToString("N4")} KMS";

                produto.FotoSource = produto.FotoByte.ToImagemSource();
            }

            lvProdutos.ItemsSource = produtos;


            #region
            //populando lvProdutos na mão
            //lvProdutos.ItemsSource = new List<Produto>
            //{
            //    new Produto
            //    {
            //        Descricao ="Gás do Bom",
            //        Distancia = "5km",
            //        FornecedorNome = "Zé do Gás",

            //        Preco = 10.00
            //    },

            //    new Produto
            //    {
            //        Descricao ="Gás do Mais ou Menos",
            //        Distancia = "5km",
            //        FornecedorNome = "Zé do Gás",
            //        Preco = 6.50
            //    }
            //};
            #endregion
        }
Exemplo n.º 3
0
 private async void CarregaProdutos(object sender, EventArgs e)
 {
     listaProdutos = await produto_Service.ListarRegistroAsync();
 }