Example #1
0
 public bool DeleteDeliveryNoteItem(DeliveryNoteItem model)
 {
     try
     {
         model.Delete();
         return(true);
     }
     catch (Exception ex)
     {
         string error = "";
         CommonMethods.getError(ex, ref error);
         throw new Exception(CommonMethods.ConcatenateErrorIN_DB(DB_Exception.res_27, error, CommonMethods.GetCurrentMethodName()));
     }
 }
Example #2
0
        public int SaveDeliveryNoteItem(DeliveryNoteItem model, int userID = 0)
        {
            try
            {
                model.tsUpdate       = DateTime.Now;
                model.tsUpdateUserID = userID;

                if (model.DeliveryNoteItemID == 0)
                {
                    model.tsInsert       = DateTime.Now;
                    model.tsInsertUserID = userID;
                }

                model.Save();

                return(model.DeliveryNoteItemID);
            }
            catch (Exception ex)
            {
                string error = "";
                CommonMethods.getError(ex, ref error);
                throw new Exception(CommonMethods.ConcatenateErrorIN_DB(DB_Exception.res_26, error, CommonMethods.GetCurrentMethodName()));
            }
        }
Example #3
0
        public ActionResult EditIssue(DTOEditIssue r)
        {
            if (ModelState.IsValid)
            {
                var identity = (ClaimsIdentity)User.Identity;
                var sid      = identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault();
                //var deliveryNoteCreted = false;

                var existingDeliveryNote = db.DeliveryNotes.Find(r.Id);

                //DELIVERYNOTE UPDATE
                existingDeliveryNote.DeliveryNoteDate = (DateTime)r.DeliveryNote.DeliveryNoteDate;
                existingDeliveryNote.Customer_Id      = r.DeliveryNote.Customer_Id;
                existingDeliveryNote.Number           = r.DeliveryNote.Number;
                existingDeliveryNote.Remark           = r.DeliveryNote.Remark;
                existingDeliveryNote.IsActive         = r.DeliveryNote.IsActive;
                existingDeliveryNote.ChangedBy        = Convert.ToInt32(sid);
                existingDeliveryNote.ChangedDate      = DateTime.Now;

                db.Entry(existingDeliveryNote).State = EntityState.Modified;


                for (int x = 0; x < r.DeliveryNote.DeliveryNoteItems.Count; x++)
                {
                    //PRODUCTMOVEMENT UPDATE
                    var currentIndex           = x;
                    var currentRecipeId        = r.DeliveryNote.DeliveryNoteItems[currentIndex].Recipe_Id;
                    var currentWarehouseId     = r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id;
                    var currentProductQuantity = r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;

                    if (r.DeliveryNote.DeliveryNoteItems[currentIndex].ProductMovementIsActive || r.DeliveryNote.DeliveryNoteItems[currentIndex].Id == 0)
                    {
                        //HA VAN MÁR PRODUCTMOVEMENT -- UPDATE
                        if (r.DeliveryNote.DeliveryNoteItems[currentIndex].ProductMovement_Id != null)
                        {
                            var existingProductMovement =
                                db.ProductMovements.Find(r.DeliveryNote.DeliveryNoteItems[currentIndex].ProductMovement_Id);
                            var originalQuantity = existingProductMovement.Quantity;
                            //HA NEM EGYEZNEK A MENNYISÉGEK VAGY A RAKTÁR, UPDATE
                            if (
                                existingProductMovement.Quantity != r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity ||
                                existingProductMovement.Warehouse_Id != r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id
                                )
                            {
                                existingProductMovement.Quantity =
                                    (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;
                                existingProductMovement.Warehouse_Id = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id;
                                existingProductMovement.IsActive     = r.DeliveryNote.DeliveryNoteItems[currentIndex]
                                                                       .ProductMovementIsActive;
                                existingProductMovement.ChangedBy       = Convert.ToInt32(sid);
                                existingProductMovement.ChangedDate     = DateTime.Now;
                                db.Entry(existingProductMovement).State = EntityState.Modified;

                                var quantityDifference = originalQuantity -
                                                         (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;

                                //HA VAN MENNYISÉG VÁLTOZÁS, PRODUCTSTOCK MÓDOSÍTÁSA
                                if (quantityDifference != 0)
                                {
                                    var currentProductStock = db.CurrentProductStocks.SingleOrDefault(c => c.Recipe_Id == currentRecipeId && c.Warehouse_Id == currentWarehouseId);
                                    currentProductStock.Quantity        = currentProductStock.Quantity + quantityDifference;
                                    currentProductStock.ChangedBy       = Convert.ToInt32(sid);
                                    currentProductStock.ChangedDate     = DateTime.Now;
                                    db.Entry(currentProductStock).State = EntityState.Modified;
                                }
                            }
                        }
                        //HA MÉG NINCS PRODUCTMOVEMENT -- CREATE
                        else
                        {
                            var productMovement = new ProductMovement
                            {
                                Recipe_Id       = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Recipe_Id,
                                MovementType_Id = db.MovementTypes.SingleOrDefault(c => c.MovementKey == "issue").Id,
                                Warehouse_Id    = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id,
                                Quantity        = (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity,
                                Remark          = r.DeliveryNote.Remark,
                                IsActive        = true,
                                CreatedDate     = DateTime.Now,
                                CreatedBy       = Convert.ToInt32(sid)
                            };
                            db.ProductMovements.Add(productMovement);

                            //CURRENTPRODUCTSTOCK MÓDOSÍTÁSA
                            var productexists = db.CurrentProductStocks.Where(i => i.Recipe_Id == currentRecipeId);
                            //HA NINCS A TERMÉKBŐL, HOZZÁADJUK
                            if (!productexists.Any())
                            {
                                db.CurrentProductStocks.Add(new CurrentProductStock
                                {
                                    CreatedDate  = DateTime.Now,
                                    CreatedBy    = Convert.ToInt32(sid),
                                    IsActive     = true,
                                    Recipe_Id    = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Recipe_Id,
                                    Warehouse_Id = (int)r.DeliveryNote.DeliveryNoteItems[currentIndex].Warehouse_Id,
                                    Quantity     = -(decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity,
                                });
                            }
                            //HA VAN A TERMÉKBŐL, UPDATE
                            else
                            {
                                var producttoupdate         = db.CurrentProductStocks.First(i => i.Recipe_Id == currentRecipeId && i.Warehouse_Id == currentWarehouseId);
                                var originalproductquantity = db.CurrentProductStocks.First(i => i.Recipe_Id == currentRecipeId && i.Warehouse_Id == currentWarehouseId).Quantity;
                                var quantityDifference      = originalproductquantity -
                                                              (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity;
                                producttoupdate.Quantity        = (decimal)(originalproductquantity + quantityDifference);
                                producttoupdate.ChangedDate     = DateTime.Now;
                                producttoupdate.ChangedBy       = Convert.ToInt32(sid);
                                db.Entry(producttoupdate).State = EntityState.Modified;
                            }

                            //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                            var existingDeliveryNoteId = r.DeliveryNote.Id;
                            var deliveryNoteItem       = new DeliveryNoteItem
                            {
                                DeliveryNote_Id = existingDeliveryNoteId,
                                ProductMovement = productMovement
                            };
                            db.DeliveryNoteItems.Add(deliveryNoteItem);
                        }
                    }
                    else
                    {
                        //HA TÖRÖLTEK SORT A SZÁLLÍTÓLEVÉLRŐL

                        //DELIVERYNOTEITEM TÖRLÉSE
                        var deliveryNoteItemToDelete  = db.DeliveryNoteItems.Find(r.DeliveryNote.DeliveryNoteItems[currentIndex].Id);
                        var affectedProductMovementId = deliveryNoteItemToDelete.ProductMovement_Id;

                        db.Entry(deliveryNoteItemToDelete).State = EntityState.Deleted;

                        //PRODUCTMOVEMENT ISACTIVE=0
                        var productMovementToDelete = db.ProductMovements.Find(affectedProductMovementId);
                        var affectedRecipeId        = productMovementToDelete.Recipe_Id;
                        productMovementToDelete.IsActive    = false;
                        productMovementToDelete.ChangedBy   = Convert.ToInt32(sid);
                        productMovementToDelete.ChangedDate = DateTime.Now;

                        db.Entry(productMovementToDelete).State = EntityState.Modified;

                        //CURRENTPRODUCTSTOCK MÓDOSÍTÁSA
                        var affectedCurrentProductStock = db.CurrentProductStocks.First(i => i.Recipe_Id == affectedRecipeId && i.Warehouse_Id == currentWarehouseId);
                        var originalproductquantity     = db.CurrentProductStocks.First(i => i.Recipe_Id == affectedRecipeId && i.Warehouse_Id == currentWarehouseId).Quantity;
                        affectedCurrentProductStock.Quantity    = (decimal)(originalproductquantity + (decimal)r.DeliveryNote.DeliveryNoteItems[currentIndex].Quantity);
                        affectedCurrentProductStock.ChangedBy   = Convert.ToInt32(sid);
                        affectedCurrentProductStock.ChangedDate = DateTime.Now;

                        db.Entry(affectedCurrentProductStock).State = EntityState.Modified;
                    }
                }

                if (db.SaveChanges() > 0)
                {
                    TempData["Operation"] = "success";
                }
                else
                {
                    TempData["Operation"] = "danger";
                }
                return(RedirectToAction("Index", "CurrentProductStocks"));
            }
            return(View(r));
        }
Example #4
0
        public ActionResult AddReceipt([Bind(Include = "Id,deliveryNoteItem,Customer_Id,DeliveryNote_Number,DeliveryNote_Remark,DeliveryNote_Date,MovementType_Id,Remark,IsActive,CreatedBy,CreatedDate,ChangedBy,ChangedDate")] InventoryOperationViewModel inventoryReceipt)
        {
            if (ModelState.IsValid)
            {
                var identity           = (ClaimsIdentity)User.Identity;
                var sid                = identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault();
                var deliveryNoteCreted = false;

                for (int x = 0; x < inventoryReceipt.deliveryNoteItem.Count; x++)
                {
                    //INGREDIENTMOVEMENT ELKÉSZÍTÉSE
                    var currentIndex              = x;
                    var currentIngredientId       = inventoryReceipt.deliveryNoteItem[x].Ingredient_Id;
                    var currentIngredientQuantity = inventoryReceipt.deliveryNoteItem[currentIndex].Quantity;
                    var ingredientMovement        = new IngredientMovement
                    {
                        Ingredient_Id   = inventoryReceipt.deliveryNoteItem[currentIndex].Ingredient_Id,
                        MovementType_Id = inventoryReceipt.MovementType_Id,
                        Warehouse_Id    = inventoryReceipt.deliveryNoteItem[currentIndex].Warehouse_Id,
                        Quantity        = inventoryReceipt.deliveryNoteItem[currentIndex].Quantity,
                        Remark          = inventoryReceipt.Remark,
                        IsActive        = true,
                        CreatedDate     = DateTime.Now,
                        CreatedBy       = Convert.ToInt32(sid)
                    };
                    db.IngredientMovements.Add(ingredientMovement);


                    //CURRENTINGREDIENTSTOCK MÓDOSÍTÁSA
                    var ingredientexists = db.CurrentIngredientStocks.Where(i => i.Ingredient_Id == currentIngredientId);
                    //HA NINCS AZ ALAPANYAGBÓL, HOZZÁADJUK
                    if (!ingredientexists.Any())
                    {
                        db.CurrentIngredientStocks.Add(new CurrentIngredientStock
                        {
                            CreatedDate   = DateTime.Now,
                            CreatedBy     = Convert.ToInt32(sid),
                            IsActive      = true,
                            Warehouse_Id  = inventoryReceipt.deliveryNoteItem[currentIndex].Warehouse_Id,
                            Ingredient_Id = inventoryReceipt.deliveryNoteItem[currentIndex].Ingredient_Id,
                            Quantity      = inventoryReceipt.deliveryNoteItem[currentIndex].Quantity
                        });
                    }
                    //HA VAN AZ ALAPANYAGBÓL, UPDATE
                    else
                    {
                        var ingredienttoupdate         = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == currentIngredientId);
                        var originalingredientquantity = db.CurrentIngredientStocks.First(i => i.Ingredient_Id == currentIngredientId).Quantity;
                        ingredienttoupdate.Quantity        = originalingredientquantity + currentIngredientQuantity;
                        ingredienttoupdate.ChangedDate     = DateTime.Now;
                        ingredienttoupdate.ChangedBy       = Convert.ToInt32(sid);
                        db.Entry(ingredienttoupdate).State = EntityState.Modified;
                    }

                    //SZÁLLÍTÓLEVÉL HOZZÁADÁSA
                    var existingDeliveryNoteId = 0;
                    if (deliveryNoteCreted == false)
                    {
                        var deliveryNote = new DeliveryNote
                        {
                            Customer_Id      = inventoryReceipt.Customer_Id,
                            Type             = "receipt",
                            Number           = inventoryReceipt.DeliveryNote_Number,
                            Remark           = inventoryReceipt.DeliveryNote_Remark,
                            IsActive         = true,
                            CreatedDate      = DateTime.Now,
                            CreatedBy        = Convert.ToInt32(sid),
                            DeliveryNoteDate = inventoryReceipt.DeliveryNote_Date
                        };
                        db.DeliveryNotes.Add(deliveryNote);
                        deliveryNoteCreted     = true;
                        existingDeliveryNoteId = deliveryNote.Id;
                        //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                        var deliveryNoteItem = new DeliveryNoteItem
                        {
                            DeliveryNote       = deliveryNote,
                            IngredientMovement = ingredientMovement
                        };
                        db.DeliveryNoteItems.Add(deliveryNoteItem);
                    }
                    else
                    {
                        //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                        var deliveryNoteItem = new DeliveryNoteItem
                        {
                            DeliveryNote_Id    = existingDeliveryNoteId,
                            IngredientMovement = ingredientMovement
                        };
                        db.DeliveryNoteItems.Add(deliveryNoteItem);
                    }
                }

                if (db.SaveChanges() > 0)
                {
                    TempData["Operation"] = "success";
                }
                else
                {
                    TempData["Operation"] = "danger";
                }
                return(RedirectToAction("Index", "CurrentIngredientStocks"));
            }
            ViewBag.MovementType_Id = new SelectList(db.MovementTypes.Where(i => i.MovementKey == "receipt"), "Id", "Name");
            ViewBag.Ingredient_Id   = new SelectList(db.Ingredients, "Id", "Name");
            ViewBag.Warehouse_Id    = new SelectList(db.Warehouses, "Id", "Name");
            ViewBag.Customer_Id     = new SelectList(db.Customers.Where(i => i.IsSupplier == true).OrderBy(i => i.Name), "Id", "Name");
            return(View(inventoryReceipt));
        }
Example #5
0
        public ActionResult AddIssue([Bind(Include = "Id,deliveryNoteItem,Customer_Id,DeliveryNote_Number,DeliveryNote_Remark,DeliveryNote_Date,MovementType_Id,Remark,IsActive,CreatedBy,CreatedDate,ChangedBy,ChangedDate")] InventoryOperationViewModel inventoryIssue)
        {
            if (ModelState.IsValid)
            {
                var identity           = (ClaimsIdentity)User.Identity;
                var sid                = identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault();
                var deliveryNoteCreted = false;

                for (int x = 0; x < inventoryIssue.deliveryNoteItem.Count; x++)
                {
                    //PRODUCTMOVEMENT ELKÉSZÍTÉSE
                    var currentIndex           = x;
                    var currentProductId       = inventoryIssue.deliveryNoteItem[currentIndex].Recipe_Id;
                    var currentProductQuantity = inventoryIssue.deliveryNoteItem[currentIndex].Quantity;
                    var productMovement        = new ProductMovement
                    {
                        Recipe_Id       = inventoryIssue.deliveryNoteItem[currentIndex].Recipe_Id,
                        MovementType_Id = inventoryIssue.MovementType_Id,
                        Warehouse_Id    = inventoryIssue.deliveryNoteItem[currentIndex].Warehouse_Id,
                        Quantity        = inventoryIssue.deliveryNoteItem[currentIndex].Quantity,
                        Remark          = inventoryIssue.Remark,
                        IsActive        = true,
                        CreatedDate     = DateTime.Now,
                        CreatedBy       = Convert.ToInt32(sid)
                    };
                    db.ProductMovements.Add(productMovement);


                    //CURRENTPRODUCTSTOCK MÓDOSÍTÁSA
                    var productexists = db.CurrentProductStocks.Where(i => i.Recipe_Id == currentProductId);

                    //HA NINCS A TERMÉKBŐL, VAGY KEVESEBB, MINT AMENNYIT KI AKAR ADNI, HIBA
                    if (!productexists.Any())
                    {
                        TempData["Operation"]        = "danger";
                        TempData["OperationMessage"] = string.Format("A következő termék nincs raktáron: {0}",
                                                                     db.Recipes.First(i => i.Id == currentProductId).Name);
                        return(RedirectToAction("AddIssue", "InventoryOperations"));
                    }
                    if (currentProductQuantity > productexists.First().Quantity)
                    {
                        TempData["Operation"]        = "danger";
                        TempData["OperationMessage"] = string.Format("Nem áll rendelkezésre a szükséges mennyiség ({0} t) a következő termékből: {1}",
                                                                     currentProductQuantity, productexists.First().Recipe.Name);
                        return(RedirectToAction("AddIssue", "InventoryOperations"));
                    }
                    //HA VAN A TERMÉKBŐL ÉS ELEGENDŐ IS, UPDATE
                    else
                    {
                        var producttoupdate         = db.CurrentProductStocks.First(i => i.Recipe_Id == currentProductId);
                        var originalproductquantity = db.CurrentProductStocks.First(i => i.Recipe_Id == currentProductId).Quantity;
                        producttoupdate.Quantity        = originalproductquantity - currentProductQuantity;
                        producttoupdate.ChangedDate     = DateTime.Now;
                        producttoupdate.ChangedBy       = Convert.ToInt32(sid);
                        db.Entry(producttoupdate).State = EntityState.Modified;
                    }

                    //SZÁLLÍTÓLEVÉL HOZZÁADÁSA
                    var existingDeliveryNoteId = 0;
                    if (deliveryNoteCreted == false)
                    {
                        var deliveryNote = new DeliveryNote
                        {
                            Customer_Id      = inventoryIssue.Customer_Id,
                            Type             = "issue",
                            Number           = inventoryIssue.DeliveryNote_Number,
                            Remark           = inventoryIssue.DeliveryNote_Remark,
                            IsActive         = true,
                            CreatedDate      = DateTime.Now,
                            CreatedBy        = Convert.ToInt32(sid),
                            DeliveryNoteDate = inventoryIssue.DeliveryNote_Date
                        };
                        db.DeliveryNotes.Add(deliveryNote);
                        deliveryNoteCreted     = true;
                        existingDeliveryNoteId = deliveryNote.Id;
                        //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                        var deliveryNoteItem = new DeliveryNoteItem
                        {
                            DeliveryNote    = deliveryNote,
                            ProductMovement = productMovement
                        };
                        db.DeliveryNoteItems.Add(deliveryNoteItem);
                    }
                    else
                    {
                        //SZÁLLÍTÓLEVÉL TÉTELEK HOZZÁADÁSA
                        var deliveryNoteItem = new DeliveryNoteItem
                        {
                            DeliveryNote_Id = existingDeliveryNoteId,
                            ProductMovement = productMovement
                        };
                        db.DeliveryNoteItems.Add(deliveryNoteItem);
                    }
                }

                if (db.SaveChanges() > 0)
                {
                    TempData["Operation"] = "success";
                }
                else
                {
                    TempData["Operation"] = "danger";
                }
                return(RedirectToAction("Index", "CurrentProductStocks"));
            }
            ViewBag.MovementType_Id = new SelectList(db.MovementTypes.Where(i => i.MovementKey == "issue"), "Id", "Name");
            ViewBag.Recipe_Id       = new SelectList(db.Recipes, "Id", "Name");
            ViewBag.Warehouse_Id    = new SelectList(db.Warehouses, "Id", "Name");
            ViewBag.Customer_Id     = new SelectList(db.Customers.OrderBy(i => i.Name), "Id", "Name");
            return(View(inventoryIssue));
        }
Example #6
0
        public void SaveSummaryToDeliveryNoteItem(List <SummaryItemModel> model, int deliveryNoteID, int locationID, int supplierID, List <Item> atomes, int userID = 0)
        {
            try
            {
                using (UnitOfWork uow = XpoHelper.GetNewUnitOfWork())
                {
                    foreach (var obj in model)
                    {
                        DeliveryNoteItem item = new DeliveryNoteItem(uow);
                        item.DeliveryNoteItemID = 0;

                        item.DeliveryNoteID  = GetDeliveryNoteByID(deliveryNoteID, uow);
                        item.MeasuringUnitID = measureRepo.GetMeasuringUnitByCode(obj.UnitOfMeasure, uow);

                        item.PSN = obj.PSN;
                        item.SID = obj.SID;

                        item.SupplierProductCode = obj.ProducerProductCode;
                        item.SupplierProductName = obj.ProducerProductName.Contains(" ") ? obj.ProducerProductName.Substring(0, obj.ProducerProductName.IndexOf(" ")) : obj.ProducerProductName;

                        //poiščemo artikel v šifrantu po imenu če obstaja. Če ne dodamo novega
                        var productItem = productRepo.GetProductByName(item.SupplierProductName, uow);

                        if (productItem != null)
                        {
                            item.ProductID = productItem;
                        }
                        else // produkta še ni v bazi zato ustvarimo novega
                        {
                            Product prod = new Product(session);

                            prod.ProductID       = 0;
                            prod.MeasuringUnitID = measureRepo.GetMeasuringUnitByCode(obj.UnitOfMeasure, session);
                            prod.Name            = item.SupplierProductName;
                            prod.Notes           = "Avtomatsko dodani artikel iz strani sistema ETT!";
                            prod.SupplierCode    = item.SupplierProductCode;
                            prod.CategoryID      = categoryRepo.GetCategorieDefault(session);
                            prod.SupplierID      = clientRepo.GetClientByID(supplierID);

                            int id = productRepo.SaveProduct(prod);

                            item.ProductID = uow.GetObjectByKey <Product>(id);
                        }

                        var inventoryProd = productRepo.GetInventroyStockByProductIDAndLocationID(item.ProductID.ProductID, locationID, uow);
                        var atome         = atomes.Where(a => !String.IsNullOrEmpty(a.PackagesSIDs) && a.PackagesSIDs.Contains(obj.SID)).FirstOrDefault();

                        decimal atomeQuantity = 0M;
                        if (atome != null)
                        {
                            atomeQuantity = atome.Quantity;
                        }

                        int atomeCount = atomes.Count(a => !String.IsNullOrEmpty(a.PackagesSIDs) && a.PackagesSIDs.Contains(obj.SID));

                        if (inventoryProd != null)
                        {
                            inventoryProd.Quantity    += (atomeCount * atomeQuantity);
                            inventoryProd.QuantityPcs += atomeCount;
                        }
                        else
                        {
                            InventoryStock inventory = new InventoryStock(session);
                            inventory.InventoryStockID = 0;
                            inventory.LocationID       = locationRepo.GetLocationByID(locationID, session);
                            inventory.Notes            = "Avtomatsko dodano vodenje zaloge";
                            inventory.ProductID        = productRepo.GetProductByID(item.ProductID.ProductID, session);
                            inventory.Quantity         = (atomeCount * atomeQuantity);
                            inventory.QuantityPcs      = atomeCount;

                            productRepo.SaveInventoryStock(inventory);
                        }

                        //item.ProductID = ? Kako shraniti referenco na šifratn produktov ? Dinamično grajenje šifranta produktov ali??

                        item.Length            = obj.Length;
                        item.NEW               = obj.NEW;
                        item.ItemQuantity      = obj.ItemQuantity;
                        item.CountOfTradeUnits = obj.CountOfTradeUnits;
                        item.PackagingLevel    = obj.PackagingLevel;
                        item.ProductionDate    = obj.ProductionDate;
                        item.ProductItemCount  = obj.ProductItemCount;
                        item.Notes             = obj.Notes;

                        item.tsUpdate       = DateTime.Now;
                        item.tsUpdateUserID = userID;

                        item.tsInsert       = DateTime.Now;
                        item.tsInsertUserID = userID;
                    }


                    uow.CommitChanges();
                }
            }
            catch (Exception ex)
            {
                string error = "";
                CommonMethods.getError(ex, ref error);
                throw new Exception(CommonMethods.ConcatenateErrorIN_DB(DB_Exception.res_26, error, CommonMethods.GetCurrentMethodName()));
            }
        }