protected async override void OnAppearing()
        {
            base.OnAppearing();

            string result;

            try
            {
                HttpClient client = new HttpClient
                {
                    BaseAddress = new Uri(VarGlobal.Link)
                };
                string url      = string.Format("api/DetallePedidoes");
                var    response = await client.GetAsync(url);

                result = response.Content.ReadAsStringAsync().Result;
            }
            catch (Exception ea)
            {
                var oi = ea.Message;
                await DisplayAlert("Error", $"Problemas de conexión \n {oi}", "Ok");

                return;
            }

            Model.ListaBebida ListaBebida = JsonConvert.DeserializeObject <Model.ListaBebida>(result);
            var resultado = ListaBebida;
            var pedido    = resultado.pedidos;
            var menus     = resultado.menus;
            var detalle   = resultado.detalle;
            var tipomenu  = resultado.tipomenu;

            var query = (from deta in detalle
                         where deta.Estado == 1 || deta.Estado == 2
                         join pedi in pedido
                         on deta.IdPedido equals pedi.IdPedido
                         where pedi.IdUser == Convert.ToInt32(VarGlobal.Global) && pedi.IdMesa == idmesa.IdMesa
                         join men in menus
                         on deta.IdMenu equals men.IdMenu
                         select new
            {
                men.Nombre,
                men.Precio,
                men.PrecioUnitario,
                deta.IdDetalle,
                deta.IdMenu,
                deta.IdPedido,
                deta.cantidad,
                deta.Estado,
                deta.Termino,
                deta.Comentarios,
                deta.Orden,
                deta.Canti
            }).ToList();



            Detalle.ItemsSource = query;
        }
Example #2
0
        protected async override void OnAppearing()
        {
            base.OnAppearing();
            PedidoDescargado = new Pedido();
            string Orden = string.Format("Orden {0}", ((MesasD)BindingContext).NumMesa);

            lblOrdenes.Text = Orden;
            string result;

            try
            {
                HttpClient client = new HttpClient
                {
                    BaseAddress = new Uri(VarGlobal.Link)
                };
                string url      = string.Format("api/TipoMenus");
                var    response = await client.GetAsync(url);

                result = response.Content.ReadAsStringAsync().Result;
            }
            catch (Exception ea)
            {
                var oi = ea.Message;
                await DisplayAlert("Error", $"Problemas de conexión \n {oi}", "Ok");

                return;
            }

            List <Model.TipoMenu> TipoMenu = JsonConvert.DeserializeObject <List <Model.TipoMenu> >(result);

            listMesas.ItemsSource = TipoMenu;

            if (TipoMenu.Count > 0)
            {
                string Ocupada;
                try
                {
                    HttpClient client = new HttpClient
                    {
                        BaseAddress = new Uri(VarGlobal.Link)
                    };
                    string url      = string.Format("api/Pedidoes");
                    var    response = await client.GetAsync(url);

                    Ocupada = response.Content.ReadAsStringAsync().Result;
                }
                catch (Exception)
                {
                    await DisplayAlert("Error", $"Problemas de conexión", "Ok");

                    return;
                }

                IEnumerable <Model.Pedido> VarPedido = new List <Model.Pedido>();
                VarPedido = JsonConvert.DeserializeObject <List <Model.Pedido> >(Ocupada);


                if (VarPedido.Count <Pedido>() > 0)
                {
                    VarPedido = from p in VarPedido
                                where p.IdMesa == ((MesasD)BindingContext).IdMesa && p.Estado == 1 || p.Estado == 2
                                select p;

                    PedidoDescargado = VarPedido.FirstOrDefault();
                    if (PedidoDescargado != null)
                    {
                        txtCliente.Text  = PedidoDescargado.Cliente.ToString();
                        txtPersonas.Text = PedidoDescargado.Cantidad.ToString();
                        if (PedidoDescargado.IdUser != Convert.ToInt32(VarGlobal.Global))
                        {
                            await DisplayAlert("Aviso", "Mesa ocupada por otro usuario", "Ok");

                            await Navigation.PopAsync();
                        }
                        IDPedido = PedidoDescargado.IdPedido.ToString();
                    }
                    if (PedidoDescargado != null)
                    {
                        OcuparMesa.IsEnabled = false;
                    }
                }
            }
            //foreach (var M in Pedido)
            //{
            //    if (M.Estado == 1 && ((MesasD)BindingContext).Estado == "Red")
            //    {

            //    }
            //}
            string obtener;

            try
            {
                HttpClient client = new HttpClient
                {
                    BaseAddress = new Uri(VarGlobal.Link)
                };
                string url      = string.Format("api/DetallePedidoes");
                var    response = await client.GetAsync(url);

                obtener = response.Content.ReadAsStringAsync().Result;
            }
            catch (Exception ea)
            {
                var oi = ea.Message;
                await DisplayAlert("Error", $"Problemas de conexión \n {oi}", "Ok");

                return;
            }

            Model.ListaBebida ListaBebida = JsonConvert.DeserializeObject <Model.ListaBebida>(obtener);
            var resultado = ListaBebida;
            var pedido    = resultado.pedidos;
            var menus     = resultado.menus;
            var detalle   = resultado.detalle;
            var tipomenu  = resultado.tipomenu;

            var query = (from deta in detalle where deta.Estado == 1 || deta.Estado == 2
                         join pedi in pedido
                         on deta.IdPedido equals pedi.IdPedido
                         where pedi.IdUser == Convert.ToInt32(VarGlobal.Global) && pedi.IdMesa == ((MesasD)BindingContext).IdMesa
                         join men in menus
                         on deta.IdMenu equals men.IdMenu
                         select new
            {
                deta.cantidad,
                men.Precio
            }).ToList();
            double total = 0;

            foreach (var sum in query)
            {
                total = total + (sum.cantidad * sum.Precio);
            }

            TotalPagar.Text = string.Format("$ {0}", Convert.ToString(total * 1.10));
        }