Exemplo n.º 1
0
 public static bool IsValidProductValue(ProductValues productValue)
 {
     return(productValue switch
     {
         ProductValues.DiabloIIBeta => true,
         ProductValues.DiabloIILordOfDestruction_A => true,
         ProductValues.DiabloIILordOfDestruction_B => true,
         ProductValues.DiabloIILordOfDestruction_Beta => true,
         ProductValues.DiabloIILordOfDestruction_DigitalDownload => true,
         ProductValues.DiabloIIStressTest => true,
         ProductValues.DiabloII_A => true,
         ProductValues.DiabloII_B => true,
         ProductValues.DiabloII_DigitalDownload => true,
         ProductValues.Starcraft_A => true,
         ProductValues.Starcraft_B => true,
         ProductValues.Starcraft_DigitalDownload => true,
         ProductValues.WarcraftII => true,
         ProductValues.WarcraftIIIBeta => true,
         ProductValues.WarcraftIIIFrozenThroneBeta => true,
         ProductValues.WarcraftIIIFrozenThrone_A => true,
         ProductValues.WarcraftIIIFrozenThrone_B => true,
         ProductValues.WarcraftIIIReignOfChaos_A => true,
         ProductValues.WarcraftIIIReignOfChaos_B => true,
         _ => false,
     });
        public async void Task_GetProductDetail_NotFoundResult()
        {
            //Arrange
            var controller = new ProductValues(repository);
            int postId     = 5;
            //Act
            var data = await controller.GetProductDetail(postId);

            //Assert
            Assert.IsType <NotFoundResult>(data);
        }
        public async void Task_GetProduct_Return_OKResult()
        {
            //Arrange
            var controller = new ProductValues(repository);

            //Act
            var data = await controller.GetProducts();

            //Assert
            Assert.IsType <OkObjectResult>(data);
        }
        public async void Task_Delete_Post_Return_OkResult()
        {
            //Arrange
            var controller = new ProductValues(repository);
            var postId     = 2;

            //Act
            var data = await controller.DeleteProduct(postId);

            //Assert
            Assert.IsType <OkResult>(data);
        }
Exemplo n.º 5
0
 public ProductAttributeEntity(ProductAttribute ProductAttribute, params object[] args) : base(ProductAttribute)
 {
     foreach (object arg in args)
     {
         if (arg is Category Category)
         {
             CategoryEntity = new CategoryEntity(Category);
         }
         if (arg is ICollection <ProductAttributeName> ProductAttributeNames)
         {
             ProductAttributeNameEntities = ProductAttributeNames.Select(model => new ProductAttributeNameEntity(model, model.Language)).ToList();
         }
         if (arg is ICollection <ProductValue> ProductValues)
         {
             ProductValueEntities = ProductValues.Select(model => new ProductValueEntity(model, model.Language, model.Product)).ToList();
         }
     }
 }
Exemplo n.º 6
0
 public ProductEntity(Product Product, params object[] args) : base(Product)
 {
     foreach (object arg in args)
     {
         if (arg is Category Category)
         {
             CategoryEntity = new CategoryEntity(Category);
         }
         if (arg is Manufacturer Manufacturer)
         {
             ManufacturerEntity = new ManufacturerEntity(Manufacturer);
         }
         if (arg is ICollection <Discount> Discounts)
         {
             DiscountEntities = Discounts.Select(model => new DiscountEntity(model)).ToList();
         }
         if (arg is ICollection <Inventory> Inventories)
         {
             InventoryEntities = Inventories.Select(model => new InventoryEntity(model, model.WareHouse)).ToList();
         }
         if (arg is ICollection <IssueNoteLine> IssueNoteLines)
         {
             IssueNoteLineEntities = IssueNoteLines.Select(model => new IssueNoteLineEntity(model, model.IssueNote)).ToList();
         }
         if (arg is ICollection <Pack> Packs)
         {
             PackEntities = Packs.Select(model => new PackEntity(model)).ToList();
         }
         if (arg is ICollection <ProductPicture> ProductPictures)
         {
             ProductPictureEntities = ProductPictures.Select(model => new ProductPictureEntity(model)).ToList();
         }
         if (arg is ICollection <ProductValue> ProductValues)
         {
             ProductValueEntities = ProductValues.Select(model => new ProductValueEntity(model, model.Attribute, model.Language)).ToList();
         }
         if (arg is ICollection <ReceiptNoteLine> ReceiptNoteLines)
         {
             ReceiptNoteLineEntities = ReceiptNoteLines.Select(model => new ReceiptNoteLineEntity(model, model.ReceiptNote)).ToList();
         }
     }
 }
        public override void UpdateAfterSaving(PyramidFinalContext dbContext, Products dbEntity, Product entity, bool exists)
        {
            if (entity.Categories != null && entity.Categories.Count > 0)
            {
                dbEntity.Categories.Clear();
                foreach (var item in entity.Categories)
                {
                    var efCategory = dbContext.Categories.Find(item.Id);
                    dbEntity.Categories.Add(efCategory);
                }
            }
            //dbEntity.Recommendations.Clear();
            //foreach (var item in entity.Recommendations)
            //{
            //    var efRecommendation = dbContext.Recommendations.Find(item.Id);
            //    dbEntity.Recommendations.Add(efRecommendation);
            //}
            //Context.SaveChanges();
            if (entity.EnumValues != null && entity.EnumValues.Count > 0)
            {
                dbEntity.EnumValues.Clear();

                foreach (var item in entity.EnumValues)
                {
                    var efEnumValues = dbContext.EnumValues.Find(item.Id);
                    if (efEnumValues != null)
                    {
                        dbEntity.EnumValues.Add(efEnumValues);
                    }
                }
            }
            // Context.SaveChanges();
            if (entity.ProductValues != null && entity.ProductValues.Count > 0)
            {
                foreach (var item in entity.ProductValues)
                {
                    var efprval = dbContext.ProductValues.FirstOrDefault(i => i.Id == item.Id);
                    if (efprval == null)
                    {
                        efprval = new ProductValues()
                        {
                            Key       = item.Key,
                            Value     = item.Value,
                            ProductId = dbEntity.Id
                        };
                        dbContext.ProductValues.Add(efprval);
                    }
                    else
                    {
                        efprval.Key   = item.Key;
                        efprval.Value = item.Value;
                    }
                }
            }
            // dbContext.SaveChanges();


            if (entity.ThumbnailId != 0)
            {
                var curThumbnail = dbEntity.ProductImages.FirstOrDefault(i => i.ProductId == dbEntity.Id && i.TypeImage == (int)Pyramid.Entity.Enumerable.TypeImage.Thumbnail);
                if (curThumbnail != null)
                {
                    var efThumbnail = dbContext.Images.FirstOrDefault(i => i.Id == entity.ThumbnailId);
                    if (efThumbnail != null)
                    {
                        if (efThumbnail.Id != curThumbnail.Id)
                        {
                            dbContext.ProductImages.Remove(curThumbnail);
                            dbContext.ProductImages.Add(new ProductImages()
                            {
                                ImageId   = entity.ThumbnailId,
                                ProductId = dbEntity.Id,
                                TypeImage = (int)Common.TypeImage.Thumbnail,
                            });
                        }
                    }
                }
                else
                {
                    dbContext.ProductImages.Add(new ProductImages()
                    {
                        ImageId   = entity.ThumbnailId,
                        ProductId = dbEntity.Id,
                        TypeImage = (int)Common.TypeImage.Thumbnail,
                    });
                }
            }
            if (entity.Seo != null)
            {
                if (dbEntity.Seo == null)
                {
                    dbEntity.Seo = new Seo();
                }
                dbEntity.Seo.Alias           = entity.Seo.Alias;
                dbEntity.Seo.MetaTitle       = entity.Seo.MetaTitle;
                dbEntity.Seo.MetaKeywords    = entity.Seo.MetaKeywords;
                dbEntity.Seo.MetaDescription = entity.Seo.MetaDescription;
            }
        }