Example #1
0
        public static SkuModel GetSkuById(Guid Id)
        {
            DBContext _context = new DBContext();
            SkuModel  sku      = SkuMapper.Mapper(_context.Skus.Where(x => x.Id == Id).FirstOrDefault());

            return(sku);
        }
Example #2
0
        public IActionResult Create()
        {
            SkuModel sku = new SkuModel();

            sku.Products = ProductController.GetAllProducts();
            return(View(sku));
        }
        public void GetSkus_InvokesMapperWithServiceResult()
        {
            // Arrange
            var sku = new SkuModel("Test1", "Test2");

            _mockOrderService
            .Setup(service => service.GetSkus())
            .Returns(new ServiceResponse <IEnumerable <SkuModel> >(new[] { sku }));

            IEnumerable <SkuModel> mapperInput = null;

            _mockOrderMapper
            .Setup(mapper => mapper.Map <IEnumerable <SkuModel>, IEnumerable <Sku> >(It.IsAny <IEnumerable <SkuModel> >()))
            .Callback((IEnumerable <SkuModel> sm) => mapperInput = sm);

            // Act
            _target.GetSkus();

            // Assert
            Assert.IsNotNull(mapperInput);
            var result = mapperInput.ToArray();

            Assert.AreEqual(1, mapperInput.Count());
            Assert.AreEqual(sku.Id, mapperInput.First().Id);
            Assert.AreEqual(sku.DisplayName, mapperInput.First().DisplayName);
        }
Example #4
0
        public IActionResult Edit(Guid Id)
        {
            SkuModel sku = GetSkuById(Id);

            sku.Product   = ProductController.GetProductById(sku.ProductId);
            sku.ProductId = sku.Product.Id;
            return(View(sku));
        }
Example #5
0
        public void SkuMapper_Outbound_MapsCodeFromServiceSkuModel()
        {
            // Arrange
            var serviceModel = new SkuModel("Test1", string.Empty);

            // Act
            var result = _target.Map <SkuModel, Sku>(serviceModel);

            // Assert
            Assert.AreEqual(serviceModel.Id, result.Code);
        }
Example #6
0
        public void SkuMapper_Outbound_MapsPropertiesFromServiceSkuModelByName()
        {
            // Arrange
            var serviceModel = new SkuModel(string.Empty, "Test1");

            // Act
            var result = _target.Map <SkuModel, Sku>(serviceModel);

            // Assert
            Assert.AreEqual(serviceModel.DisplayName, result.DisplayName);
        }
        public static SkuModel Mapper(SkuEntity sEntity)
        {
            SkuModel sModel = new SkuModel
            {
                Barcode   = sEntity.Barcode,
                Color     = sEntity.Color,
                Id        = sEntity.Id,
                Name      = sEntity.Name,
                Price     = sEntity.Price,
                ProductId = sEntity.ProductEntityId,
                ImageUrl  = sEntity.ImageUrl
            };

            return(sModel);
        }
        public static SkuEntity Mapper(SkuModel sModel)
        {
            SkuEntity sEntity = new SkuEntity
            {
                Id              = sModel.Id,
                Name            = sModel.Name,
                Price           = sModel.Price,
                Color           = sModel.Color,
                Barcode         = sModel.Barcode,
                ProductEntityId = sModel.ProductId,
                ImageUrl        = sModel.ImageUrl
            };

            return(sEntity);
        }
        public static List <SkuModel> Mapper(List <SkuEntity> seList)
        {
            List <SkuModel> smList = new List <SkuModel>();

            foreach (var se in seList)
            {
                SkuModel sModel = new SkuModel
                {
                    Barcode   = se.Barcode,
                    Color     = se.Color,
                    Id        = se.Id,
                    Name      = se.Name,
                    Price     = se.Price,
                    ProductId = se.ProductEntityId,
                    ImageUrl  = se.ImageUrl
                };
                smList.Add(sModel);
            }

            return(smList);
        }
Example #10
0
        /// <summary>
        /// Method to get Sku Amount for a Sku item
        /// </summary>
        /// <param name="sku"></param>
        /// <returns>decimal</returns>
        private decimal GetSkuAmount(SkuModel sku)
        {
            decimal skuAmount = 0;

            if (SessionManager.PromotionDetailsList != null && SessionManager.PromotionList != null)
            {
                var result = (from promotionDetail in SessionManager.PromotionDetailsList
                              join promotion in SessionManager.PromotionList
                              on promotionDetail.PromotionId equals promotion.Id
                              join skuItem in SessionManager.SkuList
                              on promotionDetail.SkuId equals skuItem.Id
                              where promotionDetail.SkuId == sku.Id
                              select new
                {
                    SkuQuantity = promotionDetail.Quantity,
                    PromotionType = promotion.PromotionTypeId,
                    SkuUnitPrice = skuItem.UnitPrice,
                    PromotionAmount = promotion.Rate
                }).ToList();

                if (result != null)
                {
                    if (result.Count > 1)
                    {
                        //Handle scenario where there are multiple promotion offers for 1 SKU
                    }
                    else if (result.Count > 0)
                    {
                        long?   promotionSkuQuantity = sku.PurchaseQuantity / result[0].SkuQuantity;
                        long?   remainingSkuQuantity = sku.PurchaseQuantity % result[0].SkuQuantity;
                        decimal?tempAmount           = remainingSkuQuantity * result[0].SkuUnitPrice;
                        tempAmount = tempAmount + (promotionSkuQuantity * result[0].PromotionAmount);
                        skuAmount  = tempAmount.HasValue ? tempAmount.Value : 0;
                    }
                }
            }
            return(skuAmount);
        }
Example #11
0
        public IActionResult Upsert(SkuModel sku)
        {
            DBContext     _context = new DBContext();
            LogController logger   = new LogController();

            if (sku.Id == new Guid())
            {
                ProductModel product = ProductController.GetProductById(sku.ProductId);

                product.Skus.Add(sku);
                _context.Products.Update(ProductMapper.Mapper(product));

                logger.LogRegister(sku, "Created", Models.Enums.LogTypeEnum.Skus);
            }
            else
            {
                _context.Skus.Update(SkuMapper.Mapper(sku));
                logger.LogRegister(sku, "Updated", Models.Enums.LogTypeEnum.Skus);
            }

            _context.SaveChanges();

            return(RedirectToAction("Index"));
        }
Example #12
0
        public IActionResult Carregar()
        {
            var       buyer    = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
            DBContext _context = new DBContext();

            OrderModel validacao = OrderMapper.Mapper(_context.Order.Include(x => x.Address).Include(x => x.Buyer).Include(x => x.Seller).Where(x => x.BuyerId == Guid.Parse(buyer)).FirstOrDefault());

            if (validacao == null)
            {
                ProductModel p1 = new ProductModel
                {
                    Id          = Guid.NewGuid(),
                    Code        = "0001",
                    Name        = "Coca-Cola",
                    Description = "Refrigerante",
                    ImageUrl    = "https://i.imgur.com/ps6alt2.jpg",
                    Skus        = new List <SkuModel>()
                };

                SkuModel s1 = new SkuModel
                {
                    Id      = Guid.NewGuid(),
                    Barcode = "793001215",
                    Name    = "350 ml",
                    Color   = "#ff0000",
                    Price   = 4.50
                };

                SkuModel s2 = new SkuModel
                {
                    Id       = Guid.NewGuid(),
                    Barcode  = "793001216",
                    Name     = "2 L",
                    Color    = "#ff0000",
                    ImageUrl = "https://i.imgur.com/ps6alt2.jpg",
                    Price    = 7.00
                };

                p1.Skus.Add(s1);
                p1.Skus.Add(s2);

                _context.Products.Add(ProductMapper.Mapper(p1));

                ProductModel p2 = new ProductModel
                {
                    Id          = Guid.NewGuid(),
                    Name        = "Fanta Laranja",
                    Code        = "0002",
                    Description = "Refri de laranja",
                    ImageUrl    = "https://i.imgur.com/cxKXQ0k.png",
                    Skus        = new List <SkuModel>()
                };

                SkuModel s3 = new SkuModel
                {
                    Id       = Guid.NewGuid(),
                    Name     = "350 ml",
                    Barcode  = "79300251362",
                    Price    = 4.50,
                    Color    = "#f24f00",
                    ImageUrl = "https://i.imgur.com/cxKXQ0k.png"
                };

                p2.Skus.Add(s3);

                _context.Products.Add(ProductMapper.Mapper(p2));

                UserModel u = new UserModel
                {
                    Id            = Guid.NewGuid(),
                    FullName      = "Shopping Palladium",
                    Document      = "08355847000109",
                    Discriminator = Models.Enums.DiscriminatorEnum.Seller
                };

                _context.Users.Add(UserMapper.Mapper(u));

                SkuStocksModel ss = new SkuStocksModel
                {
                    Id = Guid.NewGuid(),
                    AvailableQuantity = 52,
                    LastUpdate        = DateTime.Now,
                    Sku    = s2,
                    Seller = u
                };

                SkuStocksModel ss2 = new SkuStocksModel
                {
                    Id = Guid.NewGuid(),
                    AvailableQuantity = 31,
                    LastUpdate        = DateTime.Now,
                    Sku    = s3,
                    Seller = u
                };

                _context.Stocks.Add(StockMapper.Mapper(ss));
                _context.Stocks.Add(StockMapper.Mapper(ss2));

                ShowcaseModel sc = new ShowcaseModel
                {
                    Id         = Guid.NewGuid(),
                    Name       = "Inverno",
                    StartDate  = DateTime.Now,
                    EndDate    = DateTime.Now,
                    LastUpdate = DateTime.Now
                };

                ShowcaseItemsModel scp1 = new ShowcaseItemsModel()
                {
                    Id       = Guid.NewGuid(),
                    ShowCase = sc,
                    Sku      = s2
                };

                ShowcaseItemsModel scp2 = new ShowcaseItemsModel()
                {
                    Id       = Guid.NewGuid(),
                    ShowCase = sc,
                    Sku      = s3
                };

                ShowcaseItemsMapper.Mapper(scp1);
                ShowcaseItemsMapper.Mapper(scp2);

                _context.Showcases.Add(ShowcaseMapper.Mapper(sc));
                _context.ShowcaseItems.Add(ShowcaseItemsMapper.Mapper(scp1));
                _context.ShowcaseItems.Add(ShowcaseItemsMapper.Mapper(scp2));

                AddressModel address = new AddressModel
                {
                    Id = Guid.NewGuid()
                };

                _context.Add(AddressMapper.Mapper(address));

                PaymentModel payment = new PaymentModel
                {
                    Id = Guid.NewGuid()
                };

                _context.Add(PaymentMapper.Mapper(payment));

                OrderModel order = new OrderModel
                {
                    Id           = Guid.NewGuid(),
                    CreateDate   = DateTime.Now,
                    Discount     = 0,
                    SubTotal     = 0,
                    Total        = 0,
                    FriendlyCode = "S&T-X3VI5A",
                    Buyer        = new UserModel
                    {
                        Id = Guid.Parse(this.User.FindFirstValue(ClaimTypes.NameIdentifier)),
                    },
                    Seller = new UserModel
                    {
                        Id = u.Id,
                    },
                    Address = address,
                    Payment = payment
                };

                _context.Order.Add(OrderMapper.Mapper(order));

                _context.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
Example #13
0
 public OrderLineModel(int id, SkuModel sku)
 {
     Id  = id;
     Sku = sku;
 }
Example #14
0
 public static Il2CppStringArray GetItemBlackList(this Game game, SkuModel sku)
 {
     return(EquipmentHelper.GetItemBlackList(sku));
 }