public ActionResult AddStockPrice(ProductStockPriceModel model) { if (ModelState.IsValid) { using (_dbContext = new karrykartEntities()) { var productSizeMapping = new ProductSizeMapping() { ProductID = model.ProductID, SizeID = model.SizeID, UnitID = model.UnitID, Stock = model.Stock }; _dbContext.ProductSizeMappings.Add(productSizeMapping); var productprice = new ProductPrice() { UnitID = model.UnitID, CurrencyID = model.CurrencyID, ProductID = model.ProductID, SizeID = model.SizeID, Price = Convert.ToDecimal(model.Price) }; _dbContext.ProductPrices.Add(productprice); var productShipping = new ProductShipping() { UnitID = model.UnitID, ProductID = model.ProductID, SizeID = model.SizeID, Cost = Convert.ToDecimal(model.ShippingCost) }; _dbContext.ProductShippings.Add(productShipping); _dbContext.SaveChanges(); _logger.WriteLog(CommonHelper.MessageType.Success, "Product Stock and price added successfully with ID=" + model.Name, "AddStockPrice", "ProductController", User.Identity.Name); return(RedirectToAction("Index", "Product")); } } CreateViewBagForStockPrice(); return(View()); }
public ActionResult AddProductStockPrice(Guid ProductID, int SizeID, string SizeName, int UnitID, int SizeTypeID, int Stock, decimal Cost, decimal Price) { if (ProductID != null) { _dbContext = new karrykartEntities(); var productSizeMapping = _dbContext.ProductSizeMappings.Where(x => x.ProductID == ProductID && x.SizeID == SizeID && x.UnitID == UnitID).FirstOrDefault(); if (productSizeMapping == null) { productSizeMapping = new ProductSizeMapping(); productSizeMapping.ProductID = ProductID; productSizeMapping.SizeID = SizeID; productSizeMapping.Stock = Stock; productSizeMapping.UnitID = UnitID; _dbContext.Entry(productSizeMapping).State = EntityState.Added; } else { return(Json(new { messagetype = ApplicationMessages.Product.ERROR, message = "Product and size mapping details already exists." })); } var price = _dbContext.ProductPrices.Where(x => x.ProductID == ProductID && x.SizeID == SizeID && x.UnitID == UnitID).FirstOrDefault(); if (price == null) { price = new ProductPrice(); price.Price = Price; price.SizeID = SizeID; price.ProductID = ProductID; price.CurrencyID = 1; price.UnitID = UnitID; _dbContext.Entry(price).State = EntityState.Added; } else { return(Json(new { messagetype = ApplicationMessages.Product.ERROR, message = "Product's size and Price mapping details already exists." })); } var shipping = _dbContext.ProductShippings.Where(x => x.SizeID == SizeID && x.ProductID == ProductID && x.UnitID == UnitID).FirstOrDefault(); if (shipping == null) { shipping = new ProductShipping(); shipping.Cost = Cost; shipping.SizeID = SizeID; shipping.ProductID = ProductID; shipping.UnitID = UnitID; _dbContext.Entry(shipping).State = EntityState.Added; } else { return(Json(new { messagetype = ApplicationMessages.Product.ERROR, message = "Product size and shipping cost mapping details already exists." })); } _dbContext.SaveChanges(); _logger.WriteLog(CommonHelper.MessageType.Success, "Product stock, price and size mapping details has been added successfully.", "EditProductStockPrice", "ProductController", User.Identity.Name); return(Json(new { messagetype = ApplicationMessages.Product.SUCCESS, message = "Product stock, price and size mapping details has been added successfully." })); } return(View()); }