private async void OnSave()
        {
            var editingProduct = Mapper.Map <EditableProduct, Product>(Product);

            try
            {
                if (EditMode)
                {
                    await _productsService.UpdateProductAsync(editingProduct);
                }
                else
                {
                    await _productsService.AddProductAsync(editingProduct);
                }
                Done?.Invoke();
            }
            catch (Exception ex)
            {
                Failed(ex);
            }
            finally
            {
                Product = null;
            }
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> AddAsync([FromBody] ProductMessage product)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            return(Ok(await _productsService.AddProductAsync(product)));
        }
        public async Task <IActionResult> AddProduct([FromBody] productRequest productRequest)
        {
            var product = await productsService.AddProductAsync(productRequest.Name);

            var response = new ProductResponse {
                Id = product.Id, Name = product.Name
            };

            return(CreatedAtAction(nameof(GetProduct), new { id = response.Id }, response));
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> CreateProduct([FromBody] ProductEditModel productEditModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.Values));
            }

            var product = await _productsService.AddProductAsync(_mapper.Map <Product>(productEditModel));

            return(CreatedAtAction(nameof(GetProductById), new { id = product.ProductId }, _mapper.Map <ProductModel>(product)));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> AddProduct([FromForm] ProductDTO productRequest)
        {
            var productEntity = new Product()
            {
                Name  = productRequest.Name,
                Price = productRequest.Price
            };
            await _productsService.AddProductAsync(productEntity);

            var productResponse = _mapper.Map <ProductDTO>(productEntity);

            return(Ok(productResponse));
        }
Ejemplo n.º 6
0
        public async Task <IActionResult> Add([FromBody] AddProductRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var result = await _productsService.AddProductAsync(request);

            var res = _mapper.Map <ProductDto>(result);

            return(CreatedAtAction("Add", new { id = res.Id }, res));
        }
Ejemplo n.º 7
0
        public async Task <IActionResult> Create(ProductEditModel productEditModel)
        {
            if (!ModelState.IsValid)
            {
                await FillViewBagAsync();

                return(View(productEditModel));
            }

            var product = _mapper.Map <Product>(productEditModel);
            await _productsService.AddProductAsync(product);

            return(RedirectToAction(nameof(Index)));
        }
Ejemplo n.º 8
0
 public async Task <ActionResult <ShoppingItemDTO> > Post([FromForm] ShoppingItem shoppingItem)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         return(ShoppingItemDTO.FromDbModel(await productsService.AddProductAsync(shoppingItem)));
     }
     catch (ItemCreatedWithoutImageException e)
     {
         return(BadRequest(e.Message));
     }
     catch (Exception e)
     {
         return(Problem(e.Message, statusCode: StatusCodes.Status500InternalServerError));
     }
 }
        public async Task <IActionResult> Create(ProductsViewModel product)
        {
            if (ModelState.IsValid)
            {
                var newModel = new Product
                {
                    Name        = product.Name,
                    Description = product.Description,
                    Publisher   = product.Publisher,
                    Price       = product.Price,
                    CreatedOn   = DateTime.Now,
                    IsDeleted   = product.IsDeleted,
                    IsOnSale    = product.IsOnSale
                };

                await _productsService.AddProductAsync(newModel);

                StatusMessage = $"Successfully added {newModel.Name}";
                return(RedirectToAction(nameof(Index)));
            }

            StatusMessage = "Error: Something went wrong...";
            return(View(product));
        }
Ejemplo n.º 10
0
 public Task Post([FromBody] EditProductDto product)
 {
     return(_productsService.AddProductAsync(product, HttpContext.RequestAborted));
 }