/// <summary> /// Inserts a cross-sell product /// </summary> /// <param name="crossSellProduct">Cross-sell product</param> public virtual void InsertCrossSellProduct(CrossSellProduct crossSellProduct) { if (crossSellProduct == null) throw new ArgumentNullException("crossSellProduct"); //_crossSellProductRepository.Insert(crossSellProduct); var updatebuilder = Builders<Product>.Update; var update = updatebuilder.AddToSet(p => p.CrossSellProduct, crossSellProduct.ProductId2); _productRepository.Collection.UpdateOneAsync(new BsonDocument("Id", crossSellProduct.ProductId1), update); //cache _cacheManager.RemoveByPattern(string.Format(PRODUCTS_BY_ID_KEY, crossSellProduct.ProductId1)); //event notification _eventPublisher.EntityInserted(crossSellProduct); }
/// <summary> /// Inserts a cross-sell product /// </summary> /// <param name="crossSellProduct">Cross-sell product</param> public virtual void InsertCrossSellProduct(CrossSellProduct crossSellProduct) { if (crossSellProduct == null) throw new ArgumentNullException("crossSellProduct"); _crossSellProductRepository.Insert(crossSellProduct); //event notification _eventPublisher.EntityInserted(crossSellProduct); }
public ActionResult CrossSellProductDelete(int id, int productId2) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) return AccessDeniedView(); var product = _productService.GetProductById(productId2); var crossSellProduct = product.CrossSellProduct.Where(x => x == id).FirstOrDefault(); //_productService.GetCrossSellProductById(id); if (crossSellProduct == 0) throw new ArgumentException("No cross-sell product found with the specified id"); //var productId = crossSellProduct.ProductId1; //a vendor should have access only to his products if (_workContext.CurrentVendor != null) { if (product != null && product.VendorId != _workContext.CurrentVendor.Id) { return Content("This is not your product"); } } CrossSellProduct crosssell = new CrossSellProduct() { ProductId1 = productId2, ProductId2 = crossSellProduct }; _productService.DeleteCrossSellProduct(crosssell); return new NullJsonResult(); }