private void AsyncSearch() { try { Task.Run(async() => { var _list = Details; var result = await countServices.GetByPlanAndProduct(IdPlan, BCode); // _list.FirstOrDefault(a => a.BarCode == BCode); if (result.Any()) { Device.BeginInvokeOnMainThread(() => { Xamarin.Forms.Application.Current.MainPage.Navigation.PushAsync(new PlanDetails(result, User, PlanDescription, BCode)); }); } else { MessageResult = "Producto no Registrado"; } }); } catch (Exception ex) { App.Current.MainPage.DisplayAlert("TSHIRT", "Error: " + BCode + " : " + ex.Message, "OK"); } }
private async void LoadDetails(int id, string plan, string user) { var result = await countServices.GetByPlanAndProduct(id, plan); if (result.Count > 0) { var data = new List <CountPlanDetailItem>(); data = result.Where(a => a.UserCode == user).ToList(); Details = new ObservableCollection <CountPlanDetailItem>(result.Where(a => a.UserCode == user).ToList()); LastRowCount = Details.LastOrDefault().Count; CountProduct = int.Parse(result.Sum(a => a.Quantity).ToString()); //var groupedData = // data.OrderBy(p => p.Id) // .GroupBy(p => p.Count.ToString()) // .Select(p => new ObservableGroupCollection<string, CountPlanDetailItem>(p)) // .ToList(); //var groupedData = // data.OrderBy(p => p.Id) // .GroupBy(p => p.Count.ToString()) // .Select(p => new ObservableCollection<< IGrouping < string, CountPlanDetailItem >> (p)) // .ToList(); //var grouped = from Model in data // group Model by Model.Count into Group // select new ObservableCollection<IGrouping<string, CountPlanDetailItem>>(Group.Key); //GroupedList = new ObservableCollection<IGrouping<string, CountPlanDetailItem>>(groupedData); //GroupedList = new ObservableCollection<ObservableGroupCollection<string, CountPlanDetailItem>>(groupedData); //ObservableGroupCollection =IGrouping<string, CountPlanDetailItem> } else { Details = new ObservableCollection <CountPlanDetailItem>(result); LastRowCount = 0; } }