public void GetFirstLevelCategoryList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.FirstLevelCategory> categories = repository.GetFirstLevelCategoryList("hrp");

            Assert.IsNotNull(categories);

            Assert.IsTrue(categories.Count > 0);  
        }
        public void BuildProductList()
        {
            string dataAreaId = Domain.Core.Constants.DataAreaIdHrp;

            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.FirstLevelCategory> firstLevelCategories = repository.GetFirstLevelCategoryList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.SecondLevelCategory> secondLevelCategories = repository.GetSecondLevelCategoryList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.ThirdLevelCategory> thirdLevelCategories = repository.GetThirdLevelCategoryList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.Manufacturer> manufacturers = repository.GetManufacturerList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.ProductDescription> productDescriptions = repository.GetProductDescriptionList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.Picture> pictures = repository.GetPictureList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.Stock> stocks = repository.GetStockList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.SecondHand> secondHandList = repository.GetSecondHandList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.InventName> inventNames = repository.GetInventNameEnglishList(dataAreaId);

            List<CompanyGroup.Domain.MaintainModule.Product> products = repository.GetProductList(dataAreaId);  //.Take(500).ToList();

            products.ForEach(delegate(Product item) {

                string langId = item.DataAreaId.ToLower() == Domain.Core.Constants.DataAreaIdHrp || item.DataAreaId.ToLower() == Domain.Core.Constants.DataAreaIdBsc ? Domain.Core.Constants.DataAreaIdHun : Domain.Core.Constants.DataAreaIdSerbia;

                FirstLevelCategory firstLevelCategory = GetFirstLevelCategory(firstLevelCategories, item.Category1Id);

                item.Category1Name = firstLevelCategory.Category1Name;
                item.Category1NameEnglish = firstLevelCategory.Category1NameEnglish;

                SecondLevelCategory secondLevelCategory = GetSecondLevelCategory(secondLevelCategories, item.Category2Id);

                item.Category2Name = secondLevelCategory.Category2Name;
                item.Category2NameEnglish = secondLevelCategory.Category2Name;

                ThirdLevelCategory thirdLevelCategory = GetThirdLevelCategory(thirdLevelCategories, item.Category3Id);

                item.Category3Name = thirdLevelCategory.Category3Name;
                item.Category3NameEnglish = thirdLevelCategory.Category3Name;

                Manufacturer manufacturer = GetManufacturer(manufacturers, item.ManufacturerId);
                item.ManufacturerName = manufacturer.ManufacturerName;
                item.ManufacturerNameEnglish = manufacturer.ManufacturerNameEnglish;

                item.ItemNameEnglish = GetInventNameEnglish(inventNames, item.ProductId);

                item.ShippingDate = DateTime.MinValue;

                ProductDescription descHun = GetProductDescription(productDescriptions, item.ProductId, "hun");

                ProductDescription descEng = GetProductDescription(productDescriptions, item.ProductId, "eng");

                item.Description = descHun.Description;
                item.DescriptionEnglish = descEng.Description;

                item.Pictures.AddRange(GetPictures(pictures, item.ProductId));

                //inventLocationId: hrp: BELSO, KULSO, HASZNALT|bsc: 7000, 1000, 2100|ser: SER

                item.InnerStock = GetStock(dataAreaId, dataAreaId == Domain.Core.Constants.DataAreaIdHrp ? Domain.Core.Constants.InnerStockHrp : Domain.Core.Constants.InnerStockBsc, item.ProductId, stocks);
                item.OuterStock = GetStock(dataAreaId, dataAreaId == Domain.Core.Constants.DataAreaIdHrp ? Domain.Core.Constants.OuterStockHrp : Domain.Core.Constants.OuterStockBsc, item.ProductId, stocks);

                item.SecondHandList = GetSecondHandList(secondHandList, item.ProductId);
                
            });

            Assert.IsNotNull(products);

            Assert.IsTrue(products.Count > 0);

            InsertProducts(products);
        }
        public void GetCompatibilityItemList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.CompatibilityItem> items = repository.GetCompatibilityItemList("B710dn", "hrp", false);

            Assert.IsNotNull(items);

            Assert.IsTrue(items.Count > -1);
        }
        public void GetPurchaseOrderLineList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.PurchaseOrderLine> purchaseOrderLines = repository.GetPurchaseOrderLineList("hrp");

            Assert.IsNotNull(purchaseOrderLines);

            Assert.IsTrue(purchaseOrderLines.Count > 0);
        }
        public void GetInventNameEnglishList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.InventName> inventNames = repository.GetInventNameEnglishList("hrp");

            Assert.IsNotNull(inventNames);

            Assert.IsTrue(inventNames.Count > 0);
        }
        public void GetStockList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.Stock> stocks = repository.GetStockList("hrp");

            Assert.IsNotNull(stocks);

            Assert.IsTrue(stocks.Count > 0);
        }
        public void GetProductDescriptionList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.ProductDescription> productDescriptions = repository.GetProductDescriptionList("hrp");

            Assert.IsNotNull(productDescriptions);

            Assert.IsTrue(productDescriptions.Count > 0);
        }
        public void GetManufacturerList()
        {
            CompanyGroup.Domain.MaintainModule.IProductRepository repository = new CompanyGroup.Data.MaintainModule.ProductRepository(NHibernateSessionManager.Instance.GetSession());

            List<CompanyGroup.Domain.MaintainModule.Manufacturer> manufacturers = repository.GetManufacturerList("hrp");

            Assert.IsNotNull(manufacturers);

            Assert.IsTrue(manufacturers.Count > 0);
        }