public void FilterProductGroupByParent(List <MasterGroupMapping> listOfProductGroups) { listOfProductGroups.ForEach(productGroup => { List <Product> productsInProductGroup = productRepo.GetListOfMappedProductsByMasterGroupMapping(productGroup.MasterGroupMappingID); List <Product> productsInParentProductGroup = productRepo.GetListOfMappedProductsByMasterGroupMapping(productGroup.ParentMasterGroupMappingID.Value); List <Product> productsToDelete = ( from p in productsInProductGroup join pp in productsInParentProductGroup on p.ProductID equals pp.ProductID into notExistProducts from nep in notExistProducts.DefaultIfEmpty() where nep == null select p ) .ToList(); productsToDelete.ForEach(product => { MasterGroupMappingProduct newMasterGroupMappingProduct = new MasterGroupMappingProduct() { MasterGroupMappingID = productGroup.MasterGroupMappingID, ProductID = product.ProductID }; masterGroupMappingRepo.DeleteMasterGroupMappingProduct(newMasterGroupMappingProduct); }); log.DebugFormat("{0} Products Deleted From Product Group {1}", productsToDelete.Count, productGroup.MasterGroupMappingID); }); }
private void DeleteMappedProducts(List <MasterGroupMappingProduct> listOfMappedProducts) { listOfMappedProducts.ForEach(product => { masterGroupMappingRepo.DeleteMasterGroupMappingProduct(product); }); }
private void DeleteProducts(int productGroupID, List <MasterGroupMappingProduct> listOfProductsToDelete) { listOfProductsToDelete.ForEach(product => { masterGroupMappingRepo.DeleteMasterGroupMappingProduct(product); }); log.DebugFormat("{1} Products are deleted from product group {0}", productGroupID, listOfProductsToDelete.Count); }