private void item_Select(object sender, EventArgs e) { if (sbxItem.ItemID > 0) { sales_budget sales_budget = sales_budgetViewSource.View.CurrentItem as sales_budget; item item = SalesBudgetDB.items.Where(x => x.id_item == sbxItem.ItemID).FirstOrDefault(); if (item != null && item.id_item > 0 && sales_budget != null) { Task Thread = Task.Factory.StartNew(() => select_Item(sales_budget, item)); } sales_budget.RaisePropertyChanged("GrandTotal"); } }
private void calculate_vat(object sender, EventArgs e) { sales_budget sales_budget = (sales_budget)sales_budgetDataGrid.SelectedItem; sales_budget.RaisePropertyChanged("GrandTotal"); List <sales_budget_detail> sales_budget_detail = sales_budget.sales_budget_detail.ToList(); dgvvat.ItemsSource = sales_budget_detail .Join(SalesBudgetDB.app_vat_group_details, ad => ad.id_vat_group, cfx => cfx.id_vat_group , (ad, cfx) => new { name = cfx.app_vat.name, value = ad.unit_price * cfx.app_vat.coefficient, id_vat = cfx.app_vat.id_vat, ad }) .GroupBy(a => new { a.name, a.id_vat, a.ad }) .Select(g => new { id_vat = g.Key.id_vat, name = g.Key.name, value = g.Sum(a => a.value * a.ad.quantity) }).ToList(); }