public static List <DetailsContract> GetDetailsContracts(List <Order> listOrder) { List <DetailsContract> detailsList = new List <DetailsContract>(); DetailsContract dc; foreach (Order item in listOrder) { dc = new DetailsContract(); dc.id_order = item.id_order; Product pr = new CustomManager.Product(); if (MyGlobalClass.DBManager.LoadProductbyID(item.product_id, ref pr).Equals(KEY_VALUES.OK)) { dc.Product = pr.Product_Name_RU; } Region region_sending = new Region(); if (MyGlobalClass.DBManager.LoadRegionbyID(item.region_sending_id, ref region_sending).Equals(KEY_VALUES.OK)) { dc.Region_sending = region_sending.Region_Name; } Region region_origin = new Region(); if (MyGlobalClass.DBManager.LoadRegionbyID(item.region_origin_id, ref region_origin).Equals(KEY_VALUES.OK)) { dc.Region_sending = region_origin.Region_Name; } dc.Order_count = item.Order_Count; dc.Price = CalculatePrice(item); detailsList.Add(dc); } return(detailsList); }
private async void LoadOrdersAsync() { metroProgressBar1.Visible = true; detailsContractBindingSource.DataSource = null; dataGridView1.Refresh(); Task <bool> task = Task.Run(() => LoadOrders()); bool answer = await task; if (answer) { detailsContractBindingSource.DataSource = DetailsContract.GetDetailsContracts(orderList); dataGridView1.Refresh(); } metroProgressBar1.Visible = false; }