Пример #1
0
        public ActionResult <ShoppingCartDto> Create([FromBody] CreateCartDto createCart)
        {
            try
            {
                var result = _shoppingCartManager.Create(createCart);

                return(CreatedAtRoute("GetCart", new { id = result.Id }, result));
            }
            catch (InvalidInputException ex)
            {
                _logger.LogError($"Failed to create new shopping cart:\n{ex}");

                return(BadRequest());
            }
        }
        public ShoppingCartDto Create(CreateCartDto createCart)
        {
            var cart = _mapper.Map <Cart>(createCart);

            if (!_addressValidator.IsValid(cart.ShippingAddress))
            {
                throw new InvalidInputException("Cannot created shopping cart without shipping address");
            }

            CheckForDuplicateProductId(cart);

            _shoppingCartRepository.Create(cart);

            return(_mapper.Map <ShoppingCartDto>(cart));
        }
        private CreateCartDto GenerateCreateCartDto()
        {
            var customerDto = GenerateCreateCustomerDto();

            var createCartDto = new CreateCartDto
            {
                Customer = customerDto,
                Items    = new List <ItemDto>
                {
                    new ItemDto("some-product-1", "some-product-name", 10, 2),
                    new ItemDto("some-product-2", "some-product-name", 10, 2),
                    new ItemDto("some-product-3", "some-product-name", 10, 2)
                },
                ShippingMethod = ShippingMethod.Standard
            };

            return(createCartDto);
        }
Пример #4
0
        public async Task <long> CreateCart(CreateCartDto createCartDto)
        {
            var count = await _cartsRepository.GetCountCartsInList(createCartDto.ListId);

            var cart = new Cart()
            {
                Name        = createCartDto.Name,
                Description = createCartDto.Description,
                ListId      = createCartDto.ListId,
                Position    = count
            };

            _cartsRepository.Insert(cart);
            await _cartsRepository.SaveChangesOnContext();

            var list = await _listsRepository.GetEntity(createCartDto.ListId);

            return(list.BoardId);
        }
Пример #5
0
        public async Task <ActionResult> Create(CreateCartDto createCartDto)
        {
            var boardId = await _cartsService.CreateCart(createCartDto);

            return(RedirectToAction("Show", "Boards", new { selectedBoard = boardId }));
        }
Пример #6
0
 public ListViewModel()
 {
     CreateCartDto = new CreateCartDto();
     Carts         = new List <CartViewModel>();
 }