Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }