/// <summary> /// Fyller listan med redan existerande placeringar /// </summary> private void LoadExistingPlacements() { foreach (Employee e in EmployeeList) { foreach (ProductPlacement pp in ProductManagement.Instance.GetProductPlacementsByEmployeeAndDepartment(e, DepartmentID)) { foreach (DataItemProduct DIP in MyList) { if (DIP.EmployeeID.Equals(e.EmployeeID)) { DIP.DataList.Add(pp); //Create column if it doesn't exist if (!ColumnExists(pp.Product.ProductName)) { DataGridTextColumn productColumn = new DataGridTextColumn { Header = pp.Product.ProductName }; productColumn.Binding = new Binding("DataList[" + dgProductPlacements.Columns.Count + "].ProductAllocate"); dgProductPlacements.Columns.Add(productColumn); SelectedProducts.Add(pp.Product); } } } } } foreach (DataItemProduct DIP in MyList) { foreach (DataGridTextColumn DGTC in dgProductPlacements.Columns) { ProductPlacement tempPP = DIP.DataList.SingleOrDefault(p => p.Product.ProductName.Equals(DGTC.Header.ToString())); if (tempPP == null) { Product tempProd = ProductManagement.Instance.GetProductByName(DGTC.Header.ToString()); ProductPlacement newPlacement = new ProductPlacement { EmployeeID = DIP.EmployeeID, Product = tempProd, ProductID = tempProd.ProductID, ExpenseBudgetID = DateTime.Now.Year, ProductAllocate = 0 }; DIP.DataList.Add(newPlacement); ProductPlacementList.Add(newPlacement); } } } }
private void LoadEmployees() { dgProductPlacements.Columns.Clear(); EmployeeList.Clear(); MyList.Clear(); ProductPlacementList.Clear(); SelectedProducts.Clear(); foreach (Employee e in EmployeeManagement.Instance.GetEmployeeAtributes(DepartmentID)) { m_EmployeeList.Add(e); } CreateRow(); LoadExistingPlacements(); }
private void CreateColumn(Product p) { DataGridTextColumn productColumn = new DataGridTextColumn { Header = p.ProductName }; foreach (DataItemProduct di in MyList) { ProductPlacement pp = new ProductPlacement { EmployeeID = di.EmployeeID, ProductID = p.ProductID, ProductAllocate = 0 }; di.DataList.Add(pp); ProductPlacementList.Add(pp); } productColumn.Binding = new Binding("DataList[" + dgProductPlacements.Columns.Count + "].ProductAllocate"); dgProductPlacements.Columns.Add(productColumn); }