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