public void Setup()
        {
            _transactionScope = new TransactionScope();

            _domicile    = BuildMeA.Domicile("code", "description");
            _manCo1      = BuildMeA.ManCo("description1", "code1").WithDomicile(_domicile);
            _docType     = BuildMeA.DocType("code", "description");
            _subDocType1 = BuildMeA.SubDocType("code 1", "description 1").WithDocType(_docType);

            _document1 = BuildMeA.Document("id").WithDocType(_docType).WithSubDocType(_subDocType1).WithManCo(_manCo1);
            _document2 = BuildMeA.Document("id2").WithDocType(_docType).WithSubDocType(_subDocType1).WithManCo(_manCo1);
            _document3 = BuildMeA.Document("id3").WithDocType(_docType).WithSubDocType(_subDocType1).WithManCo(_manCo1);

            _cartItem1 = BuildMeA.CartItem("Key1")
                         .WithDocument(_document1);

            _cartItem2 = BuildMeA.CartItem("Key1")
                         .WithDocument(_document2);

            _cartItem3 = BuildMeA.CartItem("Key2")
                         .WithDocument(_document3);

            _cartItem4 = BuildMeA.CartItem("Key1")
                         .WithDocument(_document3);

            _cartItem5 = BuildMeA.CartItem("Key1")
                         .WithDocument(_document3);

            _cartItemRepository = new CartItemRepository(ConfigurationManager.ConnectionStrings["Unity"].ConnectionString);

            _cartItemRepository.Create(_cartItem1);
            _cartItemRepository.Create(_cartItem2);
            _cartItemRepository.Create(_cartItem3);
        }
Example #2
0
        public async Task RemoveFromCart_WhenCartItemIdIsPassed_ShouldSucceed()
        {
            //arrange
            var options = new DbContextOptionsBuilder <ShoppingCartContext>()
                          .UseInMemoryDatabase(databaseName: "RemoveFromCart_WhenCartItemIdIsPassed_ShouldSucceed")
                          .Options;

            //act
            using (var context = new ShoppingCartContext(options))
            {
                var logger = new Mock <ILogger <CartItemRepository> >();
                var cir    = new CartItemRepository(new ShoppingCartContext(options), logger.Object);
                await cir.AddToCart(new CartItem { CustomerId = 1, Quantity = 5, DateCreated = DateTime.Now, ArticleId = 1 });

                await cir.AddToCart(new CartItem { CustomerId = 1, Quantity = 15, DateCreated = DateTime.Now, ArticleId = 1 });

                context.SaveChanges();
                await cir.RemoveFromCart(1);
            }

            //assert
            using (var context = new ShoppingCartContext(options))
            {
                context.CartItem.Should().HaveCount(2);
            }
        }
 public CartService(GrpcClientFactory grpcClientFactory, CartRepository cartRepository,
                    CartItemRepository cartItemRepository)
 {
     _grpcClientFactory  = grpcClientFactory;
     _cartRepository     = cartRepository;
     _cartItemRepository = cartItemRepository;
 }
Example #4
0
 public CartsController(CartRepository cartRepository, CartItemRepository cartItemRepository,
                        CartService cartService, GrpcClientFactory grpcClientFactory)
 {
     _cartRepository     = cartRepository;
     _cartItemRepository = cartItemRepository;
     _cartService        = cartService;
     _grpcClientFactory  = grpcClientFactory;
 }
Example #5
0
 public OrderService(OrderRepository orderRepository, CartRepository cartRepository, CartItemRepository cartItemRepository, CartMealRepository cartMealRepository, IPublisher publisher, UserRepository userRepository)
 {
     _orderRepository    = orderRepository ?? throw new NotImplementedException("Order repository instance not implemented");
     _cartRepository     = cartRepository ?? throw new NotImplementedException("Cart repository instance not implemented");
     _cartItemRepository = cartItemRepository ?? throw new NotImplementedException("Cart item repository not implemented");
     _cartMealRepository = cartMealRepository ?? throw new NotImplementedException("Cart meal repository not implemented");
     _publisher          = publisher ?? throw new NotImplementedException("Publisher instance not implemented");
     _userRepository     = userRepository ?? throw new NotImplementedException("User repository instance not implemented");
 }
Example #6
0
 public CartController(ProductRepository repo, CartRepository cartrepo, CartItemRepository cartItemRepo, UserManager <ApplicationUser> userManager,
                       SignInManager <ApplicationUser> signInManager)
 {
     repository     = repo;
     _cartrepo      = cartrepo;
     _cartItemRepo  = cartItemRepo;
     _userManager   = userManager;
     _signInManager = signInManager;
 }
Example #7
0
        //private static DbContextOptions<CustomerProjectContext> optionsStatic;

        public UnitOfWork(DbOptions opt)
        {
            context = new CustomerProjectContext();

            CustomerRepository = new CustomerRepository(context);
            OrderRepository    = new OrderRepository(context);
            CartRepository     = new CartRepository(context);
            CartItemRepository = new CartItemRepository(context);
            ProductRepository  = new ProductRepository(context);
            UserRepository     = new UserRepository(context);

            context.Database.EnsureCreated();
        }
        private static void CleanCartItem(CartItemRepository repository)
        {
            var entities = repository.GetAllEntities();

            foreach (CartItem entity in entities)
            {
                using (var db = new ESportDbContext())
                    try
                    {
                        var entityToRemove = db.CartItem.Attach(entity);
                        db.CartItem.Remove(entityToRemove);
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        throw new RepositoryException("Error al eliminar entidad", e);
                    }
            }
        }
        public bool UpdateShoppingCart(CartItem cartItem, Guid userId)
        {
            ShoppingCart shoppingCart = GetShoppingCartByUserId(userId) ?? new ShoppingCart
            {
                UserId = userId
            };
            var cartItemTemp = shoppingCart.CartItems.FirstOrDefault(x => x.SetId == cartItem.SetId);

            if (cartItemTemp != null && cartItemTemp.Id > 0)
            {
                if (cartItem.Quantity == 0)
                {
                    shoppingCart.TotalQuantity -= cartItemTemp.Quantity;
                    shoppingCart.Total         -= cartItemTemp.Price;
                    shoppingCart.Discount      -= cartItemTemp.Discount;
                    CartItemRepository.Delete(cartItemTemp);
                    shoppingCart.CartItems.Remove(cartItemTemp);
                }
                else
                {
                    shoppingCart.Total         += (cartItem.Price - cartItemTemp.Price);
                    shoppingCart.Discount      += (cartItem.Discount - cartItemTemp.Discount);
                    shoppingCart.TotalQuantity += (cartItem.Quantity - cartItemTemp.Quantity);
                    cartItemTemp.Price          = cartItem.Price;
                    cartItemTemp.Quantity       = cartItem.Quantity;
                    cartItemTemp.Discount       = cartItem.Discount;
                    cartItemTemp.Timestamp      = DateTime.Now;
                }
            }
            else
            {
                shoppingCart.CartItems.Add(cartItem);
                shoppingCart.Total         += cartItem.Price;
                shoppingCart.Discount      += cartItem.Discount;
                shoppingCart.TotalQuantity += cartItem.Quantity;
            }
            return(_shoppingCartRepository.InsertOrUpdate(shoppingCart) != null);
        }
Example #10
0
        protected BaseController()
        {
            _mEntities = EnsureV308CmsEntitiesNotNull();
            //V308CMSEntities mEntities = new V308CMSEntities();

            _productService = new ProductRepository(_mEntities);
            //_productService = new Data.ProductRepository();

            _newsService = new NewsRepository(_mEntities);

            _accountService = new AccountRepository(_mEntities);
            _fileService    = new FileRepository(_mEntities);
            //_productWishlistService = new ProductWishlistRepositry(_mEntities);
            _imagesRepository = new ImagesRepository(_mEntities);
            _marketRepository = new MarketRepository(_mEntities);

            _contactRepository = new ContactRepository(_mEntities);

            _CartRepository     = new CartRepository(_mEntities);
            _CartItemRepository = new CartItemRepository(_mEntities);

            _meuMenuConfigRespository = new MenuConfigRespository(_mEntities);
            _productTypeRepository    = new ProductTypeRepository(_mEntities);
        }
 public CartItemService(CartItemRepository cartItemRepository)
 {
     this.cartItemRepository = cartItemRepository;
 }