public ActionResult Recipe(PrdRecipe recipeModel) { _vmMsg = recipeModel != null && recipeModel.RecipeID == 0 ? _objDalRecipe.SaveProductionRecipe(recipeModel, Convert.ToInt32(Session["UserID"]), "Recipe/Recipe") : _objDalRecipe.UpdateProductionRecipe(recipeModel, Convert.ToInt32(Session["UserID"])); return(Json(new { msg = _vmMsg }, JsonRequestBehavior.AllowGet)); }
public ValidationMsg UpdateProductionRecipe(PrdRecipe recipeModel, int userId) { try { using (var tx = new TransactionScope()) { using (_context) { var objRecipe = _context.PRD_Recipe.FirstOrDefault(r => r.RecipeID == recipeModel.RecipeID); if (objRecipe != null) { objRecipe.RecipeID = recipeModel.RecipeID; objRecipe.RecipeName = recipeModel.RecipeName; objRecipe.ArticleNo = recipeModel.ArticleNo ?? ""; objRecipe.ArticleChallanNo = recipeModel.ArticleChallanNo ?? ""; objRecipe.ArticleName = recipeModel.ArticleName ?? ""; objRecipe.ArticleColor = recipeModel.ArticleColor; objRecipe.CalculationBase = recipeModel.CalculationBase; objRecipe.BaseQuantity = recipeModel.BaseQuantity; objRecipe.BaseUnit = recipeModel.BaseUnit; objRecipe.ModifiedBy = userId; objRecipe.ModifiedOn = DateTime.Now; objRecipe.IPAddress = GetIPAddress.LocalIPAddress(); } _context.SaveChanges(); if (recipeModel.RecipeItems != null) { foreach (var recipeItem in recipeModel.RecipeItems) { if (recipeItem.RecipeItemID == 0) { var objItem = new PRD_RecipeItem(); objItem.RecipeID = recipeModel.RecipeID; objItem.ItemID = recipeItem.ItemID; objItem.RequiredQty = recipeItem.RequiredQty; objItem.UnitID = recipeItem.UnitID; objItem.SetOn = DateTime.Now; objItem.SetBy = userId; _context.PRD_RecipeItem.Add(objItem); } else { var updateItem = _context.PRD_RecipeItem.First(r => r.RecipeItemID == recipeItem.RecipeItemID); updateItem.RequiredQty = recipeItem.RequiredQty; updateItem.ItemID = recipeItem.ItemID; updateItem.UnitID = recipeItem.UnitID; updateItem.ModifiedOn = DateTime.Now; updateItem.ModifiedBy = userId; updateItem.IPAddress = GetIPAddress.LocalIPAddress(); } } _context.SaveChanges(); } } tx.Complete(); _vmMsg.Type = Enums.MessageType.Success; _vmMsg.Msg = "Updated Successfully."; _vmMsg.ReturnId = recipeModel.RecipeID; } } catch (Exception) { _vmMsg.Type = Enums.MessageType.Error; _vmMsg.Msg = "Failed to save."; } return(_vmMsg); }
public ValidationMsg SaveProductionRecipe(PrdRecipe recipeModel, int userId, string pageUrl) { try { using (var tx = new TransactionScope()) { var currentRecipeId = 0; var currentCode = DalCommon.GetPreDefineNextCodeByUrl(pageUrl); using (_context) { var recipe = new PRD_Recipe { RecipeName = recipeModel.RecipeName, RecipeFor = recipeModel.RecipeFor, RecipeNo = currentCode, ArticleID = recipeModel.ArticleID, ArticleNo = recipeModel.ArticleNo ?? "", ArticleChallanNo = recipeModel.ArticleChallanNo ?? "", ArticleName = recipeModel.ArticleName ?? "", ArticleColor = recipeModel.ArticleColor, CalculationBase = recipeModel.CalculationBase, BaseQuantity = recipeModel.BaseQuantity, BaseUnit = recipeModel.BaseUnit, RecordStatus = "NCF", SetOn = DateTime.Now, SetBy = userId, IPAddress = GetIPAddress.LocalIPAddress() }; _context.PRD_Recipe.Add(recipe); _context.SaveChanges(); currentRecipeId = recipe.RecipeID; if (recipeModel.RecipeItems != null) { foreach (var recipeItem in recipeModel.RecipeItems.Select(item => new PRD_RecipeItem { RecipeID = currentRecipeId, ItemID = item.ItemID, RequiredQty = item.RequiredQty, UnitID = item.UnitID, SetOn = DateTime.Now, SetBy = userId, IPAddress = GetIPAddress.LocalIPAddress() })) { _context.PRD_RecipeItem.Add(recipeItem); _context.SaveChanges(); } } } tx.Complete(); _vmMsg.Type = Enums.MessageType.Success; _vmMsg.Msg = "Saved Successfully."; _vmMsg.ReturnId = currentRecipeId; _vmMsg.ReturnCode = currentCode; } } catch (Exception) { _vmMsg.Type = Enums.MessageType.Error; _vmMsg.Msg = "Failed to save."; } return(_vmMsg); }