public async Task <IActionResult> CreateProductOption(Guid productId, [FromBody] ProductOptionCreateDto productOptionCreateDto) { var commandResult = await _mediator.Send(new CreateProductOptionCommand(productId, productOptionCreateDto)); return(commandResult ? Ok(commandResult.Result) : StatusCode(500, commandResult.FailureReason)); }
public ActionResult AddProductOption(int id, [FromBody] ProductOptionCreateDto productOption) { try { if (id != productOption.ProductId) { return(BadRequest("Unable to process the request due to invalid input")); } var optionId = _ProductOptionsController.Add(productOption); if (optionId > 0) { return(Created(string.Format($"/api/Products/{id}/options/{optionId}"), "Product option has been created")); } else { return(BadRequest("There is problem with request")); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message)); } }
public CreateProductOptionCommand(Guid productId, ProductOptionCreateDto productCreateDto) { ProductId = productId; ProductCreateDto = productCreateDto; }
public int Add(ProductOptionCreateDto newProduct) { Entity.ProductOption product = _mapper.Map <ProductOptionCreateDto, Entity.ProductOption>(newProduct); return(_ProductOptionsRepository.Add(product)); }